is a command line tool for applying
XSLT
stylesheets to
XML
documents. It is part of
libxslt(3), the XSLT C library for GNOME. While it was developed as part of the GNOME project, it can operate independently of the GNOME desktop.
xsltproc
is invoked from the command line with the name of the stylesheet to be used followed by the name of the file or files to which the stylesheet is to be applied. It will use the standard input if a filename provided is
-
If a stylesheet is included in an
XML
document with a Stylesheet Processing Instruction, no stylesheet need to be named at the command line.
xsltproc
will automatically detect the included stylesheet and use it.
By default, output is to
stdout. You can specify a file for output using the
-o
or
--output
option.
xsltproc
accepts the following options (in alphabetical order):
--catalogs
Use the
SGML
catalog specified in
SGML_CATALOG_FILES
to resolve the location of external entities. By default,
xsltproc
looks for the catalog specified in
XML_CATALOG_FILES. If that is not specified, it uses
/etc/xml/catalog.
--debug
Output an
XML
tree of the transformed document for debugging purposes.
--dumpextensions
Dumps the list of all registered extensions on
stdout.
--html
The input document is an
HTML
file.
--load-trace
Display all the documents loaded during the processing to
stderr.
--maxdepth VALUE
Adjust the maximum depth of the template stack before
libxslt(3)
concludes it is in an infinite loop. The default is 500.
--nodtdattr
Do not apply default attributes from the document's
DTD.
--nomkdir
Refuses to create directories.
--nonet
Do not use the Internet to fetch
DTDs, entities or documents.
--noout
Do not output the result.
--novalid
Skip loading the document's
DTD.
--nowrite
Refuses to write to any file or resource.
-o or --outputFILE | DIRECTORY
Direct output to the given
FILE. Using the option with a
DIRECTORY
directs the output files to the specified directory. This can be useful for multiple outputs (also known as "chunking") or manpage processing.
Note:
The given directory
must
already exist.
--param PARAMNAMEPARAMVALUE
Pass a parameter of name
PARAMNAME
and value
PARAMVALUE
to the stylesheet. You may pass multiple name/value pairs up to a maximum of 32. If the value being passed is a string rather than a node identifier, use
--stringparam
instead.
--path "PATH(S)"
Use the (space- or colon-separated) list of filesystem paths specified by
PATHS
to load
DTDs, entities or documents. Enclose space-separated lists by quotation marks.
--profile or --norman
Output profiling information detailing the amount of time spent in each part of the stylesheet. This is useful in optimizing stylesheet performance.
--repeat
Run the transformation 20 times. Used for timing tests.
--stringparam PARAMNAMEPARAMVALUE
Pass a paramenter of name
PARAMNAME
and value
PARAMVALUE
where
PARAMVALUE
is a string rather than a node identifier.
Note:
The string must be UTF-8 encoded.
--timing
Display the time used for parsing the stylesheet, parsing the document and applying the stylesheet and saving the result. Displayed in milliseconds.
-v or --verbose
Output each step taken by
xsltproc
in processing the stylesheet and the document.
Process the input document using the Xinclude specification. More details on this can be found in the Xinclude specification:
http://www.w3.org/TR/xinclude/
ENVIRONMENT
SGML_CATALOG_FILES
to be written ...
XML_CATALOG_FILES
Catalog behavior can be changed by redirecting queries to the user's own set of catalogs. This can be done by setting the
XML_CATALOG_FILES
environment variable to a list of catalogs. An empty one should deactivate loading the default
/etc/xml/catalog
default catalog.
DIAGNOSTICS
xsltproc's return codes provide information that can be used when calling it from scripts.
0
No error (normal operation)
1
No argument
2
Too many parameters
3
Unknown option
4
Failed to parse the stylesheet
5
Error in the stylesheet
6
Error in one of the documents
7
Unsupported xsl:output method
8
String parameter contains both quote and double-quotes