H C   S O F T W A R E   L T D

commanderbond cryptosaurus image jdep spambuddy superstopwatch textscape textscape2 utilities xmogrify xql yago

xmogrify Commandline XSLT processing

A simple commandline-wrapper for Java's built-in XSLT processor. Xmogrify came about because I couldn't find a way to switch off external DTD loading in the Xalan commandline client. The PC I was doing the transform on didn't have a network connection, so the transform would fail with java.io.IOException.

Of course, you can fix this from code:

spf.setFeature( "http://apache.org/xml/features/nonvalidating/load-external-dtd" , false);

But if I was going to write code...

(2006) In fact, I initially needed an XSLT processor because I wanted to auto-generate a website from a mixture of sources (some hand-written, some not). Having found the 'bake don't fry' school of website creation convincing, I figured an obvious strategy was to use a stylesheet to merge together input documents

Later I abandoned this, because it turned out to require too much maintenance, and lacked flexibility. However, I liked the name 'xmogrify' and a commandline XSLT processor is useful for other things.

Usage printout example:


xmogrify options [xml input]
 -i,--inputfile <arg>   file containing input XML (if omitted use std.in)
 --load_external_DTD    Load external DTD [false]
 --load_external_ge     Load external general entities [false]
 --not_namespace_aware  Make parser be not namespace-aware [false]
 -o,--outputfile <arg>  file to which to save output XML (if omitted use std.
                         out)
 --validate             Validate XML [false]
 -x,--xsl <arg> *       Stylesheet
* required options

Commandline wrapper for java's built-in XSL transform capabilities
     

Download:

java xmogrify.jar
(binary)
xmogrify-0.1.zip
full distribution, including source code