<feed xmlns='http://www.w3.org/2005/Atom'>
<title>InputXSLT/test/read_file, branch master</title>
<subtitle>XSLT extensions for static site generation</subtitle>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/InputXSLT/'/>
<entry>
<title>Added support for resolving non-existing paths</title>
<updated>2014-06-25T18:23:35+00:00</updated>
<author>
<name>Adrian Kummerlaender</name>
</author>
<published>2014-06-25T18:23:35+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/InputXSLT/commit/?id=7b872121000d4db4026d0c90fcb95a10f1e43694'/>
<id>7b872121000d4db4026d0c90fcb95a10f1e43694</id>
<content type='text'>
* previous logic for resolving boost::filesystem::path parameters in the XObjectValue class actively tried to resolve existing files
** this contradicts the planned introduction of e.g. a external "write-file" function
* callers of external functions with path arguments now have to enclose them in square brackets if include path resolution is required
** analog to the usage of the "xsl:import" tag
* moved "getPathFromSystemId" from compilation local method into static method of IncludeEntityResolver
* changed test cases accordingly
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* previous logic for resolving boost::filesystem::path parameters in the XObjectValue class actively tried to resolve existing files
** this contradicts the planned introduction of e.g. a external "write-file" function
* callers of external functions with path arguments now have to enclose them in square brackets if include path resolution is required
** analog to the usage of the "xsl:import" tag
* moved "getPathFromSystemId" from compilation local method into static method of IncludeEntityResolver
* changed test cases accordingly
</pre>
</div>
</content>
</entry>
<entry>
<title>Merged "read-xml-file" and "read-file" into "read-file"</title>
<updated>2014-06-15T13:14:46+00:00</updated>
<author>
<name>Adrian Kummerlaender</name>
</author>
<published>2014-06-15T13:14:46+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/InputXSLT/commit/?id=32c65970263c65022f5278b568c07b63c3d5d64b'/>
<id>32c65970263c65022f5278b568c07b63c3d5d64b</id>
<content type='text'>
* FunctionReadFile is now able to distinguish between XML files and plain text files
** it selects the appropriate course of action automatically
** reading the file as XML into the DOM or reading it as a string
* the current selection criteria is the file extension
** I am thinking about trying to import every file into the DOM and using the result state of that action as selection criteria
* Updated README.md and test cases accordingly
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* FunctionReadFile is now able to distinguish between XML files and plain text files
** it selects the appropriate course of action automatically
** reading the file as XML into the DOM or reading it as a string
* the current selection criteria is the file extension
** I am thinking about trying to import every file into the DOM and using the result state of that action as selection criteria
* Updated README.md and test cases accordingly
</pre>
</div>
</content>
</entry>
<entry>
<title>Simplified test case result variable definitions</title>
<updated>2014-06-01T15:31:17+00:00</updated>
<author>
<name>Adrian Kummerländer</name>
</author>
<published>2014-06-01T15:31:17+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/InputXSLT/commit/?id=6b5da054693cd348f3c357dbf1c8cb1979fecf6a'/>
<id>6b5da054693cd348f3c357dbf1c8cb1979fecf6a</id>
<content type='text'>
* variables containing the output of a external function can be defined using the "select" attribute
** tree-like definition is only needed when helper templates such as "transformer" are used
** queries on variables that are instantiated in this fashion need the "self::" prefix before base nodes
* changed includes of the "testcase.xsl" base template to imports
** this signifies that the importing template is based on the imported template
** ... and this is exactly what we want to define
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* variables containing the output of a external function can be defined using the "select" attribute
** tree-like definition is only needed when helper templates such as "transformer" are used
** queries on variables that are instantiated in this fashion need the "self::" prefix before base nodes
* changed includes of the "testcase.xsl" base template to imports
** this signifies that the importing template is based on the imported template
** ... and this is exactly what we want to define
</pre>
</div>
</content>
</entry>
<entry>
<title>Revamped external function result trees</title>
<updated>2014-05-31T12:18:48+00:00</updated>
<author>
<name>Adrian Kummerländer</name>
</author>
<published>2014-05-31T12:18:48+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/InputXSLT/commit/?id=1a744712426c9c19019b8ebebdd0c703aae204a6'/>
<id>1a744712426c9c19019b8ebebdd0c703aae204a6</id>
<content type='text'>
* the root node of the result tree of each function is a domain element
** i.e. the root node of "read-xml-file" is "file", the root node of "read-directory" is "directory"
* the root node contains the result state of the function call encoded in a "result" attribute
** possible values are "success" and "error"
** the root node may contain additional attributes such as the target path of a called transformation
* the actual function result is contained within the child nodes of the function root node
** i.e. the XML file tree returned by "read-xml-file" is a child of the function root node
** if specific errors occured they are also returned as child nodes of the function root node
*** this is currently only the case for "transform" where transformation errors are returned as "error" value node childs of the function root node
* updated test cases accordingly
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* the root node of the result tree of each function is a domain element
** i.e. the root node of "read-xml-file" is "file", the root node of "read-directory" is "directory"
* the root node contains the result state of the function call encoded in a "result" attribute
** possible values are "success" and "error"
** the root node may contain additional attributes such as the target path of a called transformation
* the actual function result is contained within the child nodes of the function root node
** i.e. the XML file tree returned by "read-xml-file" is a child of the function root node
** if specific errors occured they are also returned as child nodes of the function root node
*** this is currently only the case for "transform" where transformation errors are returned as "error" value node childs of the function root node
* updated test cases accordingly
</pre>
</div>
</content>
</entry>
<entry>
<title>Added "external-text-formatter" test case</title>
<updated>2014-05-26T18:13:11+00:00</updated>
<author>
<name>Adrian Kummerländer</name>
</author>
<published>2014-05-26T18:13:11+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/InputXSLT/commit/?id=6efa3385ae0fab5f7b6e3a113d1da18cfbed8591'/>
<id>6efa3385ae0fab5f7b6e3a113d1da18cfbed8591</id>
<content type='text'>
* test case requires markdown.pl formatter to be available in "/usr/bin/"
* updated README.md to mention "external-text-formatter" instead of "execute"
* updated "read-directory" test case reference file
* included library resolution test into "read-file" and "read-xml-file" test cases
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* test case requires markdown.pl formatter to be available in "/usr/bin/"
* updated README.md to mention "external-text-formatter" instead of "execute"
* updated "read-directory" test case reference file
* included library resolution test into "read-file" and "read-xml-file" test cases
</pre>
</div>
</content>
</entry>
<entry>
<title>Added test case base template and improved transformer helper template</title>
<updated>2014-05-21T18:30:37+00:00</updated>
<author>
<name>Adrian Kummerländer</name>
</author>
<published>2014-05-21T18:30:37+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/InputXSLT/commit/?id=283101c02a7e6a71f221fe731168e9b0096e3766'/>
<id>283101c02a7e6a71f221fe731168e9b0096e3766</id>
<content type='text'>
* test case base template contains the basic test case markup
** it was mostly created to include include-path resolution into the test cases
* improved transformer helper template by separating the external function call into its own variable
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* test case base template contains the basic test case markup
** it was mostly created to include include-path resolution into the test cases
* improved transformer helper template by separating the external function call into its own variable
</pre>
</div>
</content>
</entry>
<entry>
<title>Implemented black-box test cases</title>
<updated>2014-05-08T19:16:31+00:00</updated>
<author>
<name>Adrian Kummerländer</name>
</author>
<published>2014-05-08T19:16:31+00:00</published>
<link rel='alternate' type='text/html' href='https://code.kummerlaender.eu/InputXSLT/commit/?id=947603b5d7f05053a93a3cfe257fa7ab11304a90'/>
<id>947603b5d7f05053a93a3cfe257fa7ab11304a90</id>
<content type='text'>
* the directories below "./test" contain test cases
** "transformation.xsl" and the expected result as "reference.xml"
** tests are performed by "check.sh"
*** returns diff on error
* this system enables simple verification of external function results
** way simpler than C++ unit tests would be in this scenario
* expanded cmake instructions to automatically execute the test cases
* old example transformation was removed
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* the directories below "./test" contain test cases
** "transformation.xsl" and the expected result as "reference.xml"
** tests are performed by "check.sh"
*** returns diff on error
* this system enables simple verification of external function results
** way simpler than C++ unit tests would be in this scenario
* expanded cmake instructions to automatically execute the test cases
* old example transformation was removed
</pre>
</div>
</content>
</entry>
</feed>
