Folder structure:
- input - jsonxml-1.xml - jsonxml-2.xml - jsonxml-3.xml - xslt - jsonxmltransformer.xslt - output (empty)
Below some basic usage instructions. For more details checkout the official documentation. You can download the saxon.jar from the official saxon home page or from this maven repository
java -jar Saxon-HE-9.4.jar [options] [params] -s:filename -- Identifies the source file or directory -o:filename -- Send output to named file. In the absence of this option, the results go to standard output. If the source argument identifies a directory, this option is mandatory and must also identify a directory; on completion it will contain one output file for each file in the source directory -threads:N -- Used only when the -s option specifies a directory. Controls the number of threads used to process the files in the directory -xsl:filename -- Specifies the file containing the principal stylesheet module
Now let's see how easy it is to transform a single file jsonxml-1.xml and save the result to transformed-result1.xml
java -jar Saxon-HE-9.4.jar -s:C:/tmp/easytransform/input/jsonxml-1.xml -o:C:/tmp/easytransform/output/transformed-result1.xml -xsl:C:/tmp/easytransform/xslt/jsonxmltransformer.xsltThat was easy enough. But suppose we want to transform a complete directory of source files?
java -jar Saxon-HE-9.4.jar -s:C:/tmp/easytransform/input -o:C:/tmp/easytransform/output -xsl:C:/tmp/easytransform/xslt/jsonxmltransformer.xsltThis will by convention save the transformed results using the same filenames as the input files to the specified output directory.