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

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

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