From 0b90ab5a97865119bc84b443dd94a3bdde85f54b Mon Sep 17 00:00:00 2001 From: dakkar Date: Tue, 18 Aug 2009 13:26:24 +0200 Subject: imported "sitemake" documentation --- src/SW/sitemake/document.en.rest.txt | 56 ++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 src/SW/sitemake/document.en.rest.txt (limited to 'src/SW/sitemake/document.en.rest.txt') diff --git a/src/SW/sitemake/document.en.rest.txt b/src/SW/sitemake/document.en.rest.txt new file mode 100644 index 0000000..af0bfdf --- /dev/null +++ b/src/SW/sitemake/document.en.rest.txt @@ -0,0 +1,56 @@ +============================================= +SiteMake - how this site used to be generated +============================================= +:CreationDate: 2003-01-31 19:03:19 +:tags: software + +Motivations +=========== + +Ever since I discovered XML_ and XSLT_, I've been looking for an easy +and confortable way to keep content and presentation totally +separate. I started using XWeb_, which is a good program, but with +some problems: + +* it's written in Java (OK, OK, this is personal taste) +* it "tweaks" files to add (navigational) information, and I thought + it was not necessary +* it does (did?) not have dependency control functionalities (like + ``make``) + +Shortly after version 0.3 I lost sync with the official codebase +because of some modifications of mine, and I did not follow later +developments. + +Given the high level of correctness attained by the `Gnome XSLT +library`_, I decided to try and look if it was possible to use just +``xsltproc`` and ``make`` to obtain the same results. + +So I developed a DTD to describe the structure of the site, a +stylesheet to convert this structure into a makefile, and retouched +the stylesheets to keep them working after the modifications. + +How it works +============ + +Given a description of the site's structure in the file +``sitemap.xml``, the stylesheet ``compile.xsl`` generates a +``Makefile`` containing rules for the transformation of every page, +along with their prerequisites. + +In this way calling ``make`` causes the regenaration of only those +files whose source have actually been modified. Moreover, each +stylesheet implicitly gets two parameters: ``sitemapuri`` +containing the URI of the sitemap relative to the stylesheet, and +``active`` which is an XPath expression indicating, inside +the sitemap, the node corresponding to the page being +transformed. This way the stylesheets can access all relevant +navigational information. + +You can `consult the software's sources`__. + +.. _XML: http://www.w3.org/TR/REC-xml +.. _XSLT: http://www.w3.org/TR/xslt +.. _XWeb: http://xweb.sourceforge.net +.. _`Gnome XSLT library`: http://xmlsoft.org/XSLT +.. __: http://www.thenautilus.net/cgit/sitemake/ -- cgit v1.2.3