dleslie 00/02/17 04:51:20
Modified: xdocs/sources/xalan samples.xml resources.xml overview.xml
org-apache-xalan-xslt.xml
org-apache-xalan-xslt-trace.xml
org-apache-xalan-xslt-extensions.xml
org-apache-xalan-xpath-xml.xml
org-apache-xalan-xpath-xdom.xml
org-apache-xalan-xpath-dtm.xml javadocOverview.xml
Log:
New Javadoc top-level and package-level source files.
Revision Changes Path
1.4 +9 -6 xml-xalan/xdocs/sources/xalan/samples.xml
Index: samples.xml
===================================================================
RCS file: /home/cvs/xml-xalan/xdocs/sources/xalan/samples.xml,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- samples.xml 2000/02/15 21:35:30 1.3
+++ samples.xml 2000/02/17 12:51:17 1.4
@@ -64,10 +64,13 @@
<s2 title="ApplyXPath">
<p>What it does: The ApplyXPath class executes an XPath expression
against an XML document and returns
information about the route it takes and the nodes (if any) it
finds.</p>
- <p>Run this sample from the ValidateXPath subdirectory with</p>
+ <note>You can use this sample as an aid when you want to find out what
a given XPath expression returns from a
+ given XML file. Keep in mind that the context node for the XPath
expression is the document root.</note>
+ <p>Run this sample from the ApplyXPath subdirectory with</p>
<p><code>java ApplyXPath <ref>XMLFile XPathExpression</ref></code></p>
- <p>where <ref>XMLFile</ref> is an XML source file and
<ref>XPathExpression</ref> is an XPath expression to apply to that
- file. The ApplyXPath subdirectory contains an XML file named foo.xml, so
you can try command lines like</p>
+ <p>where <ref>XMLFile</ref> is an XML source file and
<ref>XPathExpression</ref> is an XPath expression to
+ apply to that file. The ApplyXPath subdirectory contains an XML file
named foo.xml, so you can try command
+ lines like</p>
<p><code>java ApplyXPath foo.xml /</code></p>
<p>and</p>
<p><code>java ApplyXPath foo.xml /doc/name/@first</code></p>
@@ -91,9 +94,9 @@
(available from http://www.mozilla.org/rhino) on the class path. You do
not need js.jar
on the class path for the samples that use Java extensions. </p>
<p>Use java.org.apache.xalan.xslt.Process, the &xslt4j; command-line
utility, to run these samples from
- the command line. The command line must include an -in argument with
the XML source and an -xsl argument with
- the XSL stylesheet. If you want the output to be printed to a file,
rather than to the screen, add an -out
- argument for the output file.</p>
+ the <link idref="commandline">command line</link>. The command line
must include an -in flag with the
+ XML source and an -xsl flag with the XSL stylesheet. If you want the
output to be printed to a file, rather
+ than to the screen, add an -out flag with the output file name.</p>
<p>Run these samples from the extensions directory as follows (each of
the following is a single command
line):</p>
1.2 +3 -0 xml-xalan/xdocs/sources/xalan/resources.xml
Index: resources.xml
===================================================================
RCS file: /home/cvs/xml-xalan/xdocs/sources/xalan/resources.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- resources.xml 2000/02/04 14:39:50 1.1
+++ resources.xml 2000/02/17 12:51:17 1.2
@@ -98,4 +98,7 @@
<resource id="XSLTProcessorAppletsetDocumentURLDoc"
title="XSLTProcessorApplet setDocumentURL() method"
location="apidocs/org/apache/xalan/xslt/client/XSLTProcessorApplet.html#setDocumentURL(java.lang.String)"/>
<resource id="XSLTProcessorAppletsetStyleURLDoc" title="XSLTProcessorApplet
setStyleURL() method"
location="apidocs/org/apache/xalan/xslt/client/XSLTProcessorApplet.html#setStyleURL(java.lang.String)"/>
+<resource id="usagepatterns_fr_jindex" title="Usage Patterns"
location="../usagepatterns.html"/>
+<resource id="dtm_fr_jindex" title="DTM (Document Table Model)"
location="../dtm.html"/>
+<resource id="ext_fr_jindex_o_a_x_x_ext" title="Xalan Extensions"
location="../../../../../../extensions.html"/>
</resources>
1.4 +2 -2 xml-xalan/xdocs/sources/xalan/overview.xml
Index: overview.xml
===================================================================
RCS file: /home/cvs/xml-xalan/xdocs/sources/xalan/overview.xml,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- overview.xml 2000/02/15 21:35:29 1.3
+++ overview.xml 2000/02/17 12:51:17 1.4
@@ -118,8 +118,8 @@
</s2><anchor name="uptospeed"/>
<s2 title="Getting up to speed with XSLT">
- <p>If you are still working through the details of the XSLT spec (the
W3C 1.0 Recommendation), you may want to consult
- one or more of the following:</p>
+ <p>If you are still working through the details of the XSLT spec (the
W3C 1.0 Recommendation), you may want to
+ consult one or more of the following:</p>
<ul>
<li>Elliotte Rusty Harold's <jump
href="http://metalab.unc.edu/xml/books/bible/updates/14.html">Chapter 14 of
the XML Bible: XSL Transformations</jump><br/><br/></li>
1.2 +15 -4 xml-xalan/xdocs/sources/xalan/org-apache-xalan-xslt.xml
Index: org-apache-xalan-xslt.xml
===================================================================
RCS file: /home/cvs/xml-xalan/xdocs/sources/xalan/org-apache-xalan-xslt.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- org-apache-xalan-xslt.xml 2000/02/04 14:39:50 1.1
+++ org-apache-xalan-xslt.xml 2000/02/17 12:51:17 1.2
@@ -59,11 +59,22 @@
-->
<s1 title="org.apache.xalan.xslt package">
<s2 title="Summary">
- <p>This is the main Xalan package.</p>
+ <p><em>This is the main Xalan package.</em></p>
</s2>
<s2 title="Description">
- <p>The XSLTProcessor interface defines the XSLT processor API.
XSLTProcessorFactory provides methods for creating an
- instance of the XSLT processor, which actually uses XSLTEngineImpl, an
implementation of XSLTProcessor that users never
- need to call directly.</p>
+ <p>Use one of the [EMAIL PROTECTED]
org.apache.xalan.xslt.XSLTProcessorFactory} static getProcessor methods to
+ instantiate an [EMAIL PROTECTED] org.apache.xalan.xslt.XSLTProcessor}.
The XSLTProcessor interface defines the
+ XSLT processor API. You should never need to call the underlying
implementation
+ ([EMAIL PROTECTED] org.apache.xalan.xslt.XSLTEngineImpl}) directly.</p>
+
+ <p>Instantiate [EMAIL PROTECTED]
org.apache.xalan.xslt.XSLTInputSource} objects for the XML input and the XSL
+ stylesheet, and an [EMAIL PROTECTED]
org.apache.xalan.xslt.XSLTResultTarget} object for the transformation output.
+ You may construct these objects with a variety of containers/formats,
including files or URLs, character
+ streams,byte streams, SAX input streams or document handlers, and a
DOM tree.</p>
+ <p>As a general rule, use the XSLTProcessor process method to perform
a transformation, thereby filling the
+ XSLTResultTarget object. For repeated transformations, to gather
information from the stylesheet before you
+ perform the transformation, or to set up the processor to function as
a SAX document handler, use the
+ XSLTProcessor processStylesheet method to compile the XSL stylesheet,
which returns a
+ [EMAIL PROTECTED] org.apache.xalan.xslt.StylesheetRoot} object with
(for convenience) its own process method.</p>
</s2>
</s1>
1.2 +49 -24
xml-xalan/xdocs/sources/xalan/org-apache-xalan-xslt-trace.xml
Index: org-apache-xalan-xslt-trace.xml
===================================================================
RCS file:
/home/cvs/xml-xalan/xdocs/sources/xalan/org-apache-xalan-xslt-trace.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- org-apache-xalan-xslt-trace.xml 2000/02/04 14:39:50 1.1
+++ org-apache-xalan-xslt-trace.xml 2000/02/17 12:51:17 1.2
@@ -57,31 +57,56 @@
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
-->
- <s1 title="org.apache.xalan.xslt.trace package">
+<s1 title="org.apache.xalan.xslt.trace package">
<s2 title="Summary">
- <p>Contains a debugging interface for Xalan.</p>
+ <p>Contains a debugging interface for &xslt4j;.</p>
</s2>
- <s2 title="Description">
- <p>Xalan contains a debugger interface in the
org.apache.xalan.xslt.trace package. This
- should be looked upon as a work in progress, possibly to be
replaced by a more
- standard interface in the future. The source code
information given is
- somewhat limited by what the SAX interface provides... the
line and column numbers
- at the *end* of the event. I'll have to work on obtaining
the character selection
- of the executing event. Also, at this time there is no
source tree line information
- available. Again, I'll be working on this. The interfaces
are:</p>
- <ul>
- <li>TraceListener is an interface that debuggers
- can implement. The interface can be set on the XSLTProcessor
by calling the addTraceListener() function.<br/><br/></li>
- <li>PrintTraceListener is an implementation of
- the TraceListener interface that is used by Xalan for the
-TT, TG, and -TTC
- switches. It's code is a good example to look at when
figuring out how to
- use the trace functionality.<br/><br/></li>
- <li>TracerEvent is an event that is
- passed to the TraceListener.trace() function. It is called
before a node is 'executed'
- in the stylesheet.<br/><br/></li>
- <li>GenerateEvent is an event that is
- passed to the TraceListener.generated() function. It is
called after an event
- occurs to create something in the result tree.<br/><br/></li>
+ <s2 title="Description">
+ <ul>
+ <li>[EMAIL PROTECTED]
org.apache.xalan.xslt.trace.TraceListener} is an interface that debuggers
+ can implement. The interface can be set on the [EMAIL
PROTECTED] org.apache.xalan.xslt.XSLTProcessor}
+ by calling the addTraceListener function.<br/><br/></li>
+ <li>[EMAIL PROTECTED]
org.apache.xalan.xslt.trace.PrintTraceListener} is an implementation of
+ the TraceListener interface that is used by the &xslt4j;
command-line utility
+ for the -TT, TG, and -TTC flags. You can examine the utility code
([EMAIL PROTECTED] org.apache.xalan.xslt.Process})
+ for examples of how you might use the trace
functionality.<br/><br/></li>
+ <li>[EMAIL PROTECTED] org.apache.xalan.xslt.traceTracerEvent}
is an event that is passed to the
+ TraceListener trace function. It is called before a node is
'executed' in the stylesheet.<br/><br/></li>
+ <li>[EMAIL PROTECTED]
org.apache.xalan.xslt.trace.GenerateEvent} is an event that is passed to the
TraceListener.generated()
+ function. It is called after an event creating something in the
result tree occurs.<br/><br/></li>
</ul>
- </s2>
+ </s2>
+ <s2 title="Example">
+<source>import org.apache.xalan.xslt.XSLTProcessor;
+import org.apache.xalan.xslt.trace.PrintTraceListener;
+...
+// Set up a PrintTraceListener object to print to a file.
+java.io.FileWriter fw = new java.io.FileWriter("events.log");
+java.io.PrintWriter pw = new java.io.PrintWriter(fw);
+PrintTraceListener ptl = new PrintTraceListener(pw);
+
+// Print information as each node is 'executed' in the stylesheet.
+ptl.m_traceElements = true;
+// Print information after each result-tree generation event.
+ptl.m_traceGeneration = true;
+// Print information after each selection event.
+ptl.m_traceSelection = true;
+// Print information whenever a template is invoked.
+ptl.m_traceTemplates = true;
+
+// Register the PrintTraceListener with the XSLTProcessor.
+XSLTProcessor processor = XSLTProcessorFactory.getProcessor();
+processor.addTraceListener(ptl);
+
+...
+// Perform the transformation -- printing information to
+// events.log during the process.
+processor.process(new XSLTInputSource("foo.xml"),
+ new XSLTInputSource("foo.xsl"),
+ new XSLTResultTarget("foo.out"));
+...
+// Close the PrintWriter and FileWriter.
+pw.close();
+fw.close();</source>
+ </s2>
</s1>
1.2 +4 -2
xml-xalan/xdocs/sources/xalan/org-apache-xalan-xslt-extensions.xml
Index: org-apache-xalan-xslt-extensions.xml
===================================================================
RCS file:
/home/cvs/xml-xalan/xdocs/sources/xalan/org-apache-xalan-xslt-extensions.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- org-apache-xalan-xslt-extensions.xml 2000/02/04 14:39:50 1.1
+++ org-apache-xalan-xslt-extensions.xml 2000/02/17 12:51:18 1.2
@@ -59,9 +59,11 @@
-->
<s1 title="org.apache.xalan.xslt.extensions package">
<s2 title="Summary">
- <p>Extensions to standard XSLT functionality.</p>
+ <p>&xslt4j; supports the creation and use of extension elements and
extension functions, which may be implemented in Java,
+ JavaScript, or another scripting language.</p>
</s2>
<s2 title="Description">
- <p></p>
+ <p>This package includes our own proprietary extensions. For more
information on extensions, see
+ <resource-ref idref="ext_fr_jindex_o_a_x_x_ext"/>.</p>
</s2>
</s1>
1.2 +18 -6
xml-xalan/xdocs/sources/xalan/org-apache-xalan-xpath-xml.xml
Index: org-apache-xalan-xpath-xml.xml
===================================================================
RCS file:
/home/cvs/xml-xalan/xdocs/sources/xalan/org-apache-xalan-xpath-xml.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- org-apache-xalan-xpath-xml.xml 2000/02/04 14:39:50 1.1
+++ org-apache-xalan-xpath-xml.xml 2000/02/17 12:51:18 1.2
@@ -60,13 +60,25 @@
<s1 title="org.apache.xalan.xpath.xml package">
<s2 title="Summary">
- <p>XMLParserLiaison provides a liaison between the XSLT processor and
an XML parser. </p>
+ <p>The infrastructure for working with an XML parser.</p>
</s2>
<s2 title="Description">
- <p>Unless you specify an XML parser and your own
- implementation of the XMLParserLiaison interface, Xalan uses
XMLParserLiaisonDefault to
- interface the XML4J parser. This package also includes four
implementations of the
- FormatterListener interface, a SAX-based formatter interface for the
XSL processor: the FormatterToDOM, the
- FormatterToXML, the FormatterToHTML (an extension of FormatterToXML),
and the FormatterToText.</p>
+ <p>An implementation of the [EMAIL PROTECTED]
org.apache.xalan.xpath.xml.XMLParserLiaison} interface provides a liaison
+ between the XSLT processor and an XML parser. Unless you specify an XML
parser and your own implementation of
+ the XMLParserLiaison interface, &xslt4j; uses one of the following
extensions of the
+ [EMAIL PROTECTED]
org.apache.xalan.xpath.xml.XMLParserLiaisonDefault}:</p>
+ <ul>
+ <li>[EMAIL PROTECTED] org.apache.xalan.xpath.dtm.DTMLiaison
org.apache.xalan.xpath.dtm.DTMLiaison} for the DTM XML Parser</li>
+ <li>[EMAIL PROTECTED] org.apache.xalan.xpath.xdom.XercesLiaison
org.apache.xalan.xpath.xdom.XercesLiaison} for the Xerces XML
+ Parser</li>
+ </ul>
+ <p>This package also includes four implementations of the <resource-ref
idref="SAX"/> <resource-ref
+ idref="SAXDocumentHandler"/> interface:</p>
+ <ul>
+ <li>[EMAIL PROTECTED] org.apache.xalan.xpath.xml.FormatterToDOM}</li>
+ <li>[EMAIL PROTECTED] org.apache.xalan.xpath.xml.FormatterToXML}</li>
+ <li>[EMAIL PROTECTED] org.apache.xalan.xpath.xml.FormatterToHTML} (an
extension of FormatterToXML)</li>
+ <li>[EMAIL PROTECTED] org.apache.xalan.xpath.xml.FormatterToText}</li>
+ </ul>
</s2>
</s1>
1.2 +4 -1
xml-xalan/xdocs/sources/xalan/org-apache-xalan-xpath-xdom.xml
Index: org-apache-xalan-xpath-xdom.xml
===================================================================
RCS file:
/home/cvs/xml-xalan/xdocs/sources/xalan/org-apache-xalan-xpath-xdom.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- org-apache-xalan-xpath-xdom.xml 2000/02/04 14:39:50 1.1
+++ org-apache-xalan-xpath-xdom.xml 2000/02/17 12:51:18 1.2
@@ -62,6 +62,9 @@
<p>Contains XercesLiaison, liaison to the Xerces XML parser.</p>
</s2>
<s2 title="Description">
- <p></p>
+ <p>XercesLiaison extends [EMAIL PROTECTED]
org.apache.xalan.xpath.xml.XMLParserLiaisonDefault}, an implementation
+ of the [EMAIL PROTECTED] org.apache.xalan.xpath.xml.XMLParserLiaison}
interface.</p>
+ <p><em>See Also:</em></p>
+ <p> [EMAIL PROTECTED]
org.apache.xalan.xpath.dtm.DTMLiaison}</p>
</s2>
</s1>
1.2 +18 -10
xml-xalan/xdocs/sources/xalan/org-apache-xalan-xpath-dtm.xml
Index: org-apache-xalan-xpath-dtm.xml
===================================================================
RCS file:
/home/cvs/xml-xalan/xdocs/sources/xalan/org-apache-xalan-xpath-dtm.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- org-apache-xalan-xpath-dtm.xml 2000/02/04 14:39:50 1.1
+++ org-apache-xalan-xpath-dtm.xml 2000/02/17 12:51:18 1.2
@@ -59,17 +59,25 @@
-->
<s1 title="org.apache.xalan.xpath.dtm package">
<s2 title="Summary">
- <p>Implements a pseudo-DOM that provides significant performance
enhancements.</p>
+ <p>Implements a pseudo-DOM Liaison and XML parser that provides
significant performance enhancements.</p>
</s2>
<s2 title="Description">
- <p>DOM (Document Object Model) is a standard interface for interacting
with XML documents. Xalan
- supports this interface: when you provide a Node as input for an XML
source document or XSL
- stylesheet, Xalan uses an implementation of the DOM interface. For
large XML documents, however,
- this may involve considerable overhead, since Xalan must create one or
more Java objects for each Node
- in the document.</p>
- <p>For those cases where you provide a URL or character stream as input
and use the default XML parser
- (Xerces) Xalan avoids this overhead by implementing what we call a DTM
(Document Table Model), a
- pseudo-DOM that uses integer arrays in place of the DOM. The
performance improvements are very
- significant.</p>
+ <p>DOM (Document Object Model) is a standard interface for interacting
with XML documents. Xalan fully
+ supports this interface. For large XML documents, however, this may
involve considerable overhead, since Xalan
+ must create one or more Java objects for each Node in the document.</p>
+ <p>For those cases where you provide a file or URL, character stream,
byte stream or SAX input stream as input
+ and use the default Liaison [EMAIL PROTECTED]
org.apache.xalan.xpath.dtm.DTMLiaison} and XML parser
+ [EMAIL PROTECTED] orglapache.xalan.xpath.dtm.DTM}, Xalan avoids this
overhead by implementing a pseudo-DOM that uses
+ integer arrays in place of the DOM. The performance improvements amay
be very significant.</p>
+ </s2>
+ <s2 title="Usage">
+ <p>To use the high performance DTMLiaison and parser, instantiate the
[EMAIL PROTECTED] org.apache.xalan.xslt.XSLTProcessor} as
+ follows:</p>
+ <p><code>org.apache.xalan.xslt.XSLTProcessor xsltProc =
org.apache.xalan.xslt.XSLTProcessorFactory.getProcessor();
+ </code></p>
+ <p>When your are providing input in the form of a DOM Node,
instantiate the XSLTProcessor to use
+ [EMAIL PROTECTED] org.apache.xalan.xpath.xdom.XercesLiaison} and the
Xerces DOM parser:</p>
+ <p><code>org.apache.xalan.xsltXSLT.Processor xsltProc =
org.apache.xalan.xslt.XSLTProcessorFactory.getProcessor(</code><br/>
+ <code> new
org.apache.xalan.xpath.xdom.XercesLiaison());</code></p>
</s2>
</s1>
1.2 +39 -18 xml-xalan/xdocs/sources/xalan/javadocOverview.xml
Index: javadocOverview.xml
===================================================================
RCS file: /home/cvs/xml-xalan/xdocs/sources/xalan/javadocOverview.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- javadocOverview.xml 2000/02/04 14:39:50 1.1
+++ javadocOverview.xml 2000/02/17 12:51:18 1.2
@@ -59,23 +59,44 @@
-->
<s1 title="API Overview">
- <s2 title="API Summary">
- <p>&xslt4j; implements the <resource-ref idref="xsl-draft-used"/>. XLST
is a language for transforming XML documents
- into other XML documents, HTML documents, or other document types. XSLT
includes the XML XSLT vocabulary and
- XPath, a language for addressing parts of an XML document. XPath is
- designed to be used by both XSLT and XPointer. An XSLT stylesheet
describes how to transform a tree of nodes representing
- a range of XML documents into another XML tree of nodes.</p>
- <p>&xslt4j; takes as primary input an XML source document and an XSL
stylesheet. The XML document and the XSL stylesheet
- may be a URL or file, a character stream, an input stream, or a DOM
tree. The stylesheet may also take the form of a
- compiled stylesheet. If the XML document contains a stylesheet
Processing Instruction (PI), a separate stylesheet is not
- required.</p>
- <p>&xslt4j; uses an implementation of the <resource-ref
idref="XMLParserLiaisonDoc"/> to interact with XML4J (or another
- XML parsser) and sends output events to a <resource-ref
idref="FormatterListenerDoc"/>, an extension of
- <resource-ref idref="SAX"/> <resource-ref
idref="SAXDocumentHandler"/>.</p>
- <p>The XSLT and XPath engines are independent from any given DOM or XML
implementation. All parser-dependent calls are
- funneled through the XMLParserLiaison.</p>
- <p>For an introduction to the use of &xslt4j; to transform XML
documents, see <jump href="../api.html">
- API Overview</jump>.</p>
- </s2>
+ <s2 title="API Summary">
+ <p>&xslt4j; implements the <resource-ref idref="xsl-draft-used"/>.</p>
+ </s2>
+ <s2 title="Description">
+ <p>XLST is a stylesheet language for transforming XML documents into
other XML documents, HTML documents,
+ or other document types. The language includes the XSL Transformation
vocabulary and XPath, a language for
+ addressing parts of an XML document. An XSLT stylesheet describes how to
transform the tree of nodes in the XML
+ input into another tree of nodes.</p>
+ <p><em>Basic procedure for performing transformations:</em></p>
+ <ol>
+ <li>Use one of the [EMAIL PROTECTED]
org.apache.xalan.xslt.XSLTProcessorFactory} static getProcessor methods to
+ instantiate an [EMAIL PROTECTED]
org.apache.xalan.xslt.XSLTProcessor}.<br/><br/>
+ By default, the XSLTProcessor uses the [EMAIL PROTECTED]
org.apache.xalan.xpath.dtm.DTMLiaison} and the
+ high-performance <resource-ref idref="dtm_fr_jindex"/> "pseudo" DOM
parser to process the input. If your input is a
+ DOM node (rather than a file, character stream, byte stream, or SAX
input stream), you must use a "standard"
+ DOM liaison and parser, such as the [EMAIL PROTECTED]
org.apache.xalan.xpath.xdom.XercesLiaison XercesLiaison} and
+ the Xerces DOM parser.<br/><br/>
+ The XSLT and XPath engines are independent from any given DOM or XML
implementation. All parser-dependent
+ calls are funneled through the XMLParserLiaison.<br/><br/></li>
+ <li>Set up [EMAIL PROTECTED] org.apache.xalan.xslt.XSLTInputSource}
objects for the XML input and XSL stylesheet.
+ You can use a file name or URL, character stream, byte stream, or SAX
input stream to instantiate an
+ XSLTInputSource object.<br/><br/>
+ If the XML document contains a stylesheet Processing Instruction
(PI), you do not need to create a separate
+ XSLTInputSource object for an XSL stylesheet.<br/><br/>
+ <em>Note:</em> For improved performance with a series of
transformations, use the XSLTProcessor
+ processStylesheet method to compile the XSL stylesheet (the result is
a
+ [EMAIL PROTECTED] org.apache.xalan.xslt.StylesheetRoot}. This is also
useful when you need to get information from the
+ stylesheet before the tranformation occurs. You also must compile the
stylesheet if you are using the
+ XSLTProcessor as a SAX document handler.<br/><br/></li>
+ <li>Set up an [EMAIL PROTECTED]
org.apache.xalan.xslt.XSLTResultTarget} for the transformation output. You can
use a
+ file name or URL, character stream, byte stream, or SAX document
handler to instantiate an XSLTOutputTarget
+ object.<br/><br/></li>
+ <li>Use the XSLTProcessor (or, in some cases, the (@link
org.apache.xalan.xslt.StylesheetRoot} process
+ method to perform the transformation.<br/><br/>
+ &xslt4j; is thread-safe for one instance per thread. If you are
using the same instance of XSLTProcessor to
+ perform more than one transformation, call the reset method between
transformations.</li>
+ </ol>
+ <p>For an introduction to basic usage patterns, see <resource-ref
idref="usagepatterns_fr_jindex"/>.</p>
+ </s2>
</s1>