XSLTPROC(1) xsltproc Manual XSLTPROC(1)

NAME


xsltproc - command line XSLT processor

SYNOPSIS


xsltproc [[-V | --version] [-v | --verbose] [{-o | --output} {FILE |
DIRECTORY}] | --timing | --repeat | --debug | --novalid |
--noout | --maxdepth VALUE | --maxvars VALUE |
--maxparserdepth VALUE | --huge | --seed-rand VALUE | --html
| --encoding ENCODING | --param PARAMNAME PARAMVALUE |
--stringparam PARAMNAME PARAMVALUE | --nonet |
--path "PATH(S)" | --load-trace | --catalogs | --xinclude |
--xincludestyle | [--profile | --norman] | --dumpextensions
| --nowrite | --nomkdir | --writesubtree PATH | --nodtdattr]
[STYLESHEET] {XML-FILE... | -}

DESCRIPTION


xsltproc 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.

OPTIONS


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 3000.

--maxvars VALUE
Maximum number of variables. The default is 15000.

--maxparserdepth VALUE
Maximum element nesting level of parsed XML documents. The
default is 256.

--huge
Relax hardcoded limits of the XML parser by setting the
XML_PARSE_HUGE parser option.

--seed-rand VALUE
Initialize pseudo random number generator with specific seed.

--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 --output FILE | 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.

Important
The given directory must already exist.

Note
Make sure that FILE and DIRECTORY follow the "URI reference
computation" as described in RFC 2396 and laters. This means,
that e.g. -o directory will maybe not work, but -o
directory/ will.

--encoding ENCODING
Allow to specify the encoding for the input.

--param PARAMNAME PARAMVALUE
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, you can use
--stringparam instead, to avoid additional quote characters that
appear in string expressions. Note: the XPath expression must be
UTF-8 encoded.

--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 PARAMNAME PARAMVALUE
Pass a parameter 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.

-V or --version
Show the version of libxml(3) and libxslt(3) used.

--writesubtree PATH
Allow file write only within the PATH subtree.

--xinclude
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/

--xincludestyle
Process the stylesheet with XInclude.

ENVIRONMENT


SGML_CATALOG_FILES
SGML catalog behavior can be changed by redirecting queries to
the user's own set of catalogs. This can be done by setting the
SGML_CATALOG_FILES environment variable to a list of catalogs. An
empty one should deactivate loading the default /etc/sgml/catalog
catalog.

XML_CATALOG_FILES
XML 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
catalog.

DIAGNOSTICS


xsltproc 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

9
Internal processing error

10
Processing was stopped by a terminating message

11
Could not write the result to the output file

SEE ALSO


libxml(3), libxslt(3)

More information can be found at

+o libxml(3) web page https://gitlab.gnome.org/GNOME/libxslt

+o W3C XSLT page http://www.w3.org/TR/xslt


AUTHOR


John Fleck <jfleck@inkstain.net>
Author.

COPYRIGHT


Copyright (C) 2001, 2002

libxslt 08/17/2022 XSLTPROC(1)

tribblix@gmail.com :: GitHub :: Privacy