Age | Commit message (Collapse) | Author |
|
* articles contain the handle and date in their file name
** i.e. it is split using XPath string functions
** usage of the ISO date format provides automatic ordering
* added some articles from my blog as example data
|
|
* enables representing the result folder structure in the source
** e.g. the "page.xsl" transformation is located in "source/pages" and the result is therefore written to "target/pages"
** this enables simplification of target metadata as it is now automatically relative to the level
* modified page template accordingly
|
|
* root template iterates through the levels and calls the "process" template for each stylesheet
* the "process" template handles metadata extraction and main datasource resolution
** calls "compile" template for generation preparation
* the "compile" template resolves the support datasources, merges the final datasource and resolves the target path using additional helper templates
* actual generation of the result is preformed by the "generate" template as before
|
|
|
|
* 'h1' node is used as title and any other node as content
* modified result page transformation accordingly
|
|
|
|
* "source" directory contains layers as subdirectories
** ordered by their name
** e.g. layer 0 is "00_content" and contains the content alongside some metadata
* transformations contained within the "source" layers are processed sequentally
* transformations define their requirements in a "meta" variable
** the "meta" variable is interpreted by the core transformation "generate.xsl"
* requirements are currently datasources and target information
** every transformation may have one datasource of type "main"
*** this data source offers e.g. the option to iterate over it
** every transformation may have a arbitrary number of "support" datasources
*** e.g. "meta" is a support datasource
** the target node may provide a fixed target path or a Xpath to be evaluated
* the result of each transformation is written to the appropriate layer of the "result" directory
* this approach to XSLT based static site generation should be quite flexible and offer good expandability
** e.g. adding new datasource options and types
|
|
* including example data and current "/home/adrian" layout
|