aboutsummaryrefslogtreecommitdiff
path: root/process.xsl
AgeCommit message (Collapse)Author
2014-09-04Moved generation stage stylesheets into "detail" folderAdrian Kummerlaender
* they are read by FunctionReadFile to and passed to FunctionGenerate as a DOM tree to execute them as if they where located in the parent directory ** this is required so they behave as expected without requiring all paths to be absolute * this change was implemented to make it clear that "make.xsl" is the main generation stylesheet ** additionally this further separates the framework implementation from the site-specific stylesheets and contents
2014-09-04Updated source tree datasource query to be more explicitAdrian Kummerlaender
* "00_content" directory is now explicitly referenced * added "source_tree" variable to task processing transformation ** changed datasource meta-tag expressions to reference "source_tree" instead of "$root/source"
2014-09-03Restructured main datasource mode processingAdrian Kummerlaender
* as both the "expression" and "full" mode require only a single call to the "compile" helper template they where merged ** this enabled us to completly remove the fallback call to "compile" * this outer choose statement decides between the "iterate" mode and single call modes
2014-09-03Revamped transformation layout to remove need for the "01_files" levelAdrian Kummerlaender
* "01_files" contained a single "source" transformation which listed the contents of the "00_content" level ** this was unnecessary as the base "list" transformation already lists the contents of all levels * added new "expression" mode to datasource meta tag processing in the task processing transformation ** this expression modes allows for the evaluation of arbitrary XPath statements *** e.g. a query to the results of "list.xsl" * modified base transformation datasource structures to include the level and meta tree * modified all existing content transformations to query the level-tree instead of the deprecated "source.xml" ** i.e. XPath statements ** the main change is that directories are available as "directory" nodes instead of nodes named by the directory name * these changes where implemented to simplify the architecture and to increase flexibility
2014-08-29Removed need for prefixing datasource source attributeAdrian Kummerlaender
* transformations contain one or more "datasource" meta nodes ** these nodes define the required datasources ** up until now it was required to define the whole path to the file to be loaded * the implementation of directory linkage in b942f8e removed the underlying need for providing the source / target prefix ** this commit now updates the generation transformations to match this change *** this simplifies the datasource definition process for the end-user *** additionally it makes the target / source directories easier to maintain * changed cleanage task implementation to remove the whole directory and recreate it from scratch ** otherwise directory linkage and in turn the whole generation failed when the target directory did not exist in the first place * removed task reordering in the process transformation ** tasks are now processed exactly as they were scheduled ** this was changed so that e.g. the "00_content" directory is linked before the first datasource is required
2014-08-29Extracted task counters into variablesAdrian Kummerlaender
* counter value for total and successful tasks moved into named variables ** this improves readability of success summarization logic
2014-08-28Added formatted error output to the summarize transformationAdrian Kummerlaender
* generation errors are returned in the "log" node of the appropriate task node * "summarize.xsl" transforms the nodes of all failed tasks into a easily readable plain-text version ** the output is specialized on the different task types
2014-08-24Implemented basic generation summaryAdrian Kummerlaender
* "summarize.xsl" processes the result-tree of "process.xsl" and outputs a basic plain-text summary ** the plain-text summary is returned as the sole result of calling "make.xsl" * this approach should be easily extensible into i.e. a verbose version in the future * unraveled "make.xsl" structure into separate variables
2014-08-23Expanded output of task processingAdrian Kummerlaender
* partly copy "task" nodes ** augment with result of performing the task * executions of single transformations which expand into multiple target files are now grouped into tasks and subtasks ** a total result value is determined * this change was implemented to aid the implementation of a "generation-digest" view ** such a "view" summarizes the results of task processing and may be configured in e.g. verbosity and error output
2014-08-23Separated task planning and processing into separate transformationsAdrian Kummerlaender
* "plan.xsl" traverses the file-tree provided by "list.xsl" and determines the tasks to be executed * "process.xsl" executes the tasks planned by "plan.xsl" in a sensible order * this change was implemented to be able to e.g. schedule the linkage tasks for last ** performing them in tree-order caused problems when the generator tried to create symlinks inside non-existing directories ** additionally this further modularizes the processing chain