| Using the Command-Line Utility |
| To perform a transformation, you can call Xalan-Java from the command line (or script), an applet, an application, or a servlet (see Usage Patterns). The org.apache.xalan.xslt.Process main() method provides a command-line interface for performing XSL transformation. To perform a transformation from the command line or a script, do the following: Download Xalan-Java. Set the Java classpath to include xalan.jar, xml-apis.jar, and xercesImpl.jar -- or another conformant XML Parser -- see Plugging in the Transformer and XML parser). Call java and the Process class with the appropriate flags and arguments (described below). The following command line, for example, includes the -IN, -XSL, and -OUT flags with their accompanying arguments -- the XML source document, the XSL stylesheet, and the output file: `java org.apache.xalan.xslt.Process -IN foo.xml -XSL foo.xsl -OUT foo.out` The command line utility can take the following flags and arguments (the flags are case insensitive):
    -IN inputXMLURL
    -XSL XSLTransformationURL
    -OUT outputFileName
    -V (Version info)
    -QC (Quiet Pattern Conflicts Warnings)

    -TT (Trace the templates as they are being called)
    -TG (Trace each result tree generation event)
    -TS (Trace each selection event)
    -TTC (Trace the template children as they are being processed)
    -EDUMP [optional]FileName (Do stackdump on error)
    -XML (Use XML formatter and add XML header)
    -TEXT (Use simple Text formatter)
    -HTML (Use HTML formatter)
    -PARAM name value (Set a stylesheet parameter)
    -DIAG (Print number of milliseconds transform operation took)
    -FLAVOR flavorName (Transform with SAX for s2s or DOM for d2d)
    -URIRESOLVER fullClassName (Use a custom URIResolver)
    -ENTITYRESOLVER fullClassName (Use a custom EntityResolver)
    -CONTENTHANDLER fullClassName (Use a custom ContentHandler)
    -INCREMENTAL (Request incremental transform by setting
      http://xml.apache.org/xalan/features/incremental to true)
    -NOOPTIMIZE (Request no optizimation of stylesheet processing
      by setting http://xml.apache.org/xalan/features/optimize to
      false)
    -RL recursionLimit (Set numeric limit on depht of stylesheet
      recursion)
    -L (Turn on source_location attribute)
Use `-IN` to specify the XML source document. Use `-XSL` to specify the XSL stylesheet file. Use `-TEXT` if you want the output to include only element values (not element tags with element names and attributes). Use `-HTML` to write 4.0 transitional HTML (some elements, such as <br>, are not well formed XML). To set stylesheet parameters from the command line, use `java org.apache.xalan.xslt.Process -PARAM name value` The value is passed to the transformer as a String. For information about incremental and optimized stylesheet processing, see DTM settings. Use `-L` to obtain access to a SourceLocator that a stylesheet extension can use to get information about the location of nodes in the source document. For more information, see NodeInfo extension functions and source_location. Use `-URIRESOLVER` with a fully qualified class name to utilize a custom implementation of the URIResolver TrAX interface to resolve URIs for xsl:include, xsl:import, and the document() function. Use `-ENTITYRESOLVER` with a fully qualified class name to utilize a custom implementation of the EntityResolver SAX interface to handle external entity references. Use `-CONTENTHANDLER` with a fully qualified class name to utilize a custom implementation of the ContentHandler SAX interface to serialize output.
| If you want to validate an XML document (verify that it adheres to its DOCTYPE declatation), you can use the Validate utility shipped with Xalan-Java version 2.4.1.

Copyright © 2002 The Apache Software Foundation. All Rights Reserved.