File: package-summary.html

package info (click to toggle)
libsaxon-java 1%3A6.5.5-12
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, buster
  • size: 16,576 kB
  • sloc: java: 36,724; xml: 7,470; makefile: 25; sh: 1
file content (436 lines) | stat: -rw-r--r-- 23,428 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.4.2_06) on Thu Nov 24 12:17:49 GMT 2005 -->
<TITLE>
javax.xml.transform
</TITLE>

<META NAME="keywords" CONTENT="javax.xml.transform package">

<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    parent.document.title="javax.xml.transform";
}
</SCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">


<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=3 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../javax/xml/parsers/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
&nbsp;<A HREF="../../../javax/xml/transform/dom/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../index.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>

</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<H2>
Package javax.xml.transform
</H2>
This package defines the generic APIs for processing transformation
instructions, and performing a transformation from source to result.
<P>
<B>See:</B>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<A HREF="#package_description"><B>Description</B></A>
<P>

<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Interface Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../javax/xml/transform/ErrorListener.html" title="interface in javax.xml.transform">ErrorListener</A></B></TD>
<TD>To provide customized error handling, implement this interface and
 use the <code>setErrorListener</code> method to register an instance of the
 implmentation with the <A HREF="../../../javax/xml/transform/Transformer.html" title="class in javax.xml.transform"><CODE>Transformer</CODE></A>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../javax/xml/transform/Result.html" title="interface in javax.xml.transform">Result</A></B></TD>
<TD>An object that implements this interface contains the information
 needed to build a transformation result tree.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../javax/xml/transform/Source.html" title="interface in javax.xml.transform">Source</A></B></TD>
<TD>An object that implements this interface contains the information
 needed to act as source input (XML source or transformation instructions).</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../javax/xml/transform/SourceLocator.html" title="interface in javax.xml.transform">SourceLocator</A></B></TD>
<TD>This interface is primarily for the purposes of reporting where
 an error occurred in the XML source or transformation instructions.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../javax/xml/transform/Templates.html" title="interface in javax.xml.transform">Templates</A></B></TD>
<TD>An object that implements this interface is the runtime representation of processed
 transformation instructions.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../javax/xml/transform/URIResolver.html" title="interface in javax.xml.transform">URIResolver</A></B></TD>
<TD>An object that implements this interface that can be called by the processor
 to turn a URI used in document(), xsl:import, or xsl:include into a Source object.</TD>
</TR>
</TABLE>
&nbsp;

<P>

<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Class Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../javax/xml/transform/OutputKeys.html" title="class in javax.xml.transform">OutputKeys</A></B></TD>
<TD>Provides string constants that can be used to set
 output properties for a Transformer, or to retrieve
 output properties from a Transformer or Templates object.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../javax/xml/transform/Transformer.html" title="class in javax.xml.transform">Transformer</A></B></TD>
<TD>An instance of this abstract class can transform a
 source tree into a result tree.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../javax/xml/transform/TransformerFactory.html" title="class in javax.xml.transform">TransformerFactory</A></B></TD>
<TD>A TransformerFactory instance can be used to create
 <A HREF="../../../javax/xml/transform/Transformer.html" title="class in javax.xml.transform"><CODE>Transformer</CODE></A> and
 <A HREF="../../../javax/xml/transform/Templates.html" title="interface in javax.xml.transform"><CODE>Templates</CODE></A> objects.</TD>
</TR>
</TABLE>
&nbsp;

<P>

<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Exception Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../javax/xml/transform/TransformerConfigurationException.html" title="class in javax.xml.transform">TransformerConfigurationException</A></B></TD>
<TD>Indicates a serious configuration error.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../javax/xml/transform/TransformerException.html" title="class in javax.xml.transform">TransformerException</A></B></TD>
<TD>This class specifies an exceptional condition that occured
 during the transformation process.</TD>
</TR>
</TABLE>
&nbsp;

<P>

<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Error Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../javax/xml/transform/TransformerFactoryConfigurationError.html" title="class in javax.xml.transform">TransformerFactoryConfigurationError</A></B></TD>
<TD>Thrown when a problem with configuration with the Transformer Factories
 exists.</TD>
</TR>
</TABLE>
&nbsp;

<P>
<A NAME="package_description"><!-- --></A><H2>
Package javax.xml.transform Description
</H2>

<P>
<p>This package defines the generic APIs for processing transformation
instructions, and performing a transformation from source to result. These
interfaces have no dependencies on SAX or the DOM standard, and try to make as
few assumptions as possible about the details of the source and result of a
transformation. It achieves this by defining
<A HREF="../../../javax/xml/transform/Source.html" title="interface in javax.xml.transform"><CODE>Source</CODE></A> and
<A HREF="../../../javax/xml/transform/Result.html" title="interface in javax.xml.transform"><CODE>Result</CODE></A> interfaces.
</p>

<p>To define concrete classes for the user, the API defines specializations
of the interfaces found at the root level. These interfaces are found in
<A HREF="../../../javax/xml/transform/sax/package-summary.html"><CODE>javax.xml.transform.sax</CODE></A>, <A HREF="../../../javax/xml/transform/dom/package-summary.html"><CODE>javax.xml.transform.dom</CODE></A>,
and <A HREF="../../../javax/xml/transform/stream/package-summary.html"><CODE>javax.xml.transform.stream</CODE></A>.
</p>


<h3>Creating Objects</h3>

<p>The API allows a concrete
<A HREF="../../../javax/xml/transform/TransformerFactory.html" title="class in javax.xml.transform"><CODE>TransformerFactory</CODE></A> object to be created from
the static function
<A HREF="../../../javax/xml/transform/TransformerFactory.html#newInstance()"><CODE>TransformerFactory.newInstance()</CODE></A>.
</p>


<h3>Specification of Inputs and Outputs</h3>

<p>This API defines two interface objects called
<A HREF="../../../javax/xml/transform/Source.html" title="interface in javax.xml.transform"><CODE>Source</CODE></A> and
<A HREF="../../../javax/xml/transform/Result.html" title="interface in javax.xml.transform"><CODE>Result</CODE></A>. In order to pass Source and Result
objects to the interfaces, concrete classes must be used.
Three concrete representations are defined for each of these
objects:
<A HREF="../../../javax/xml/transform/stream/StreamSource.html" title="class in javax.xml.transform.stream"><CODE>StreamSource</CODE></A> and
<A HREF="../../../javax/xml/transform/stream/StreamResult.html" title="class in javax.xml.transform.stream"><CODE>StreamResult</CODE></A>,
<A HREF="../../../javax/xml/transform/sax/SAXSource.html" title="class in javax.xml.transform.sax"><CODE>SAXSource</CODE></A> and
<A HREF="../../../javax/xml/transform/sax/SAXResult.html" title="class in javax.xml.transform.sax"><CODE>SAXResult</CODE></A>, and
<A HREF="../../../javax/xml/transform/dom/DOMSource.html" title="class in javax.xml.transform.dom"><CODE>DOMSource</CODE></A> and
<A HREF="../../../javax/xml/transform/dom/DOMResult.html" title="class in javax.xml.transform.dom"><CODE>DOMResult</CODE></A>. Each of these objects defines
a FEATURE string (which is i the form of a URL), which can be passed into
<A HREF="../../../javax/xml/transform/TransformerFactory.html#getFeature(java.lang.String)"><CODE>TransformerFactory.getFeature(java.lang.String)</CODE></A> to see if the
given type of Source or Result object is supported. For instance, to test if a
DOMSource and a StreamResult is supported, you can apply the following
test.
</p>

<pre>
<code>
TransformerFactory tfactory = TransformerFactory.newInstance();
if (tfactory.getFeature(DOMSource.FEATURE) &amp;&amp; tfactory.getFeature(StreamResult.FEATURE)) {
...
}
</code>
</pre>


<h3>
<a name="qname-delimiter">Qualified Name Representation</a>
</h3>

<p><a href="http://www.w3.org/TR/REC-xml-names">Namespaces</a>
present something of a problem area when dealing with XML objects. Qualified
Names appear in XML markup as prefixed names. But the prefixes themselves do
not hold identity. Rather, it is the URIs that they contextually map to that
hold the identity. Therefore, when passing a Qualified Name like "xyz:foo"
among Java programs, one must provide a means to map "xyz" to a namespace.
</p>

<p>One solution has been to create a "QName" object that holds the
namespace URI, as well as the prefix and local name, but this is not always an
optimal solution, as when, for example, you want to use unique strings as keys
in a dictionary object. Not having a string representation also makes it
difficult to specify a namespaced identity outside the context of an XML
document.
</p>

<p>In order to pass namespaced values to transformations,
for 
instance when setting a property or a parameter on a 
<A HREF="../../../javax/xml/transform/Transformer.html" title="class in javax.xml.transform"><CODE>Transformer</CODE></A> object,
this specification defines that a
String "qname" object parameter be passed as two-part string, the namespace URI
enclosed in curly braces ({}), followed by the local name. If the qname has a
null URI, then the String object only contains the local name. An application
can safely check for a non-null URI by testing to see if the first character of
the name is a '{' character.
</p>

<p>For example, if a URI and local name were obtained from an element
defined with &lt;xyz:foo xmlns:xyz="http://xyz.foo.com/yada/baz.html"/&gt;,
then the Qualified Name would be "{http://xyz.foo.com/yada/baz.html}foo".
Note that the prefix is lost.
</p>


<h3>Result Tree Serialization</h3>

<p>Serialization of the result tree to a stream can be controlled with
the <A HREF="../../../javax/xml/transform/Transformer.html#setOutputProperties(java.util.Properties)"><CODE>Transformer.setOutputProperties(java.util.Properties)</CODE></A> and the
<A HREF="../../../javax/xml/transform/Transformer.html#setOutputProperty(java.lang.String, java.lang.String)"><CODE>Transformer.setOutputProperty(java.lang.String, java.lang.String)</CODE></A> methods.
These properties only apply to stream results, they have no effect when
the result is a DOM tree or SAX event stream.</p>

<p>Strings that match the <a href="http://www.w3.org/TR/xslt#output">XSLT
specification for xsl:output attributes</a> can be referenced from the
<A HREF="../../../javax/xml/transform/OutputKeys.html" title="class in javax.xml.transform"><CODE>OutputKeys</CODE></A> class. Other strings can be
specified as well.
If the transformer does not recognize an output key, a
<CODE>IllegalArgumentException</CODE> is thrown, unless the
key name is <a href="#qname-delimiter">namespace qualified</a>. Output key names
that are namespace qualified are always allowed, although they may be
ignored by some implementations.</p>

<p>If all that is desired is the simple identity transformation of a
source to a result, then <A HREF="../../../javax/xml/transform/TransformerFactory.html" title="class in javax.xml.transform"><CODE>TransformerFactory</CODE></A>
provides a
<A HREF="../../../javax/xml/transform/TransformerFactory.html#newTransformer()"><CODE>TransformerFactory.newTransformer()</CODE></A> method
with no arguments. This method creates a Transformer that effectively copies
the source to the result. This method may be used to create a DOM from SAX
events or to create an XML or HTML stream from a DOM or SAX events.  </p>

<h3>Exceptions and Error Reporting</h3>

<p>The transformation API throw three types of specialized exceptions. A
<A HREF="../../../javax/xml/transform/TransformerFactoryConfigurationError.html" title="class in javax.xml.transform"><CODE>TransformerFactoryConfigurationError</CODE></A> is parallel to
the <A HREF="../../../javax/xml/parsers/FactoryConfigurationError.html" title="class in javax.xml.parsers"><CODE>FactoryConfigurationError</CODE></A>, and is thrown
when a configuration problem with the TransformerFactory exists. This error
will typically be thrown when the transformation factory class specified with
the "javax.xml.transform.TransformerFactory" system property cannot be found or
instantiated.</p>

<p>A <A HREF="../../../javax/xml/transform/TransformerConfigurationException.html" title="class in javax.xml.transform"><CODE>TransformerConfigurationException</CODE></A>
may be thrown if for any reason a Transformer can not be created. A
TransformerConfigurationException may be thrown if there is a syntax error in
the transformation instructions, for example when
<A HREF="../../../javax/xml/transform/TransformerFactory.html#newTransformer(javax.xml.transform.Source)"><CODE>TransformerFactory.newTransformer(javax.xml.transform.Source)</CODE></A> is
called.</p>

<p><A HREF="../../../javax/xml/transform/TransformerException.html" title="class in javax.xml.transform"><CODE>TransformerException</CODE></A> is a general
exception that occurs during the course of a transformation. A transformer
exception may wrap another exception, and if any of the
<A HREF="../../../javax/xml/transform/TransformerException.html#printStackTrace()"><CODE>TransformerException.printStackTrace()</CODE></A>
methods are called on it, it will produce a list of stack dumps, starting from
the most recent. The transformer exception also provides a
<A HREF="../../../javax/xml/transform/SourceLocator.html" title="interface in javax.xml.transform"><CODE>SourceLocator</CODE></A> object which indicates where
in the source tree or transformation instructions the error occurred.
<A HREF="../../../javax/xml/transform/TransformerException.html#getMessageAndLocation()"><CODE>TransformerException.getMessageAndLocation()</CODE></A>
may be called to get an error message with location info, and
<A HREF="../../../javax/xml/transform/TransformerException.html#getLocationAsString()"><CODE>TransformerException.getLocationAsString()</CODE></A>
may be called to get just the location string.</p>

<p>Transformation warnings and errors are sent to an
<A HREF="../../../javax/xml/transform/ErrorListener.html" title="interface in javax.xml.transform"><CODE>ErrorListener</CODE></A>, at which point the
application may decide to report the error or warning, and may decide to throw
an <code>Exception</code> for a non-fatal error. The <code>ErrorListener</code> may be set via
<A HREF="../../../javax/xml/transform/TransformerFactory.html#setErrorListener(javax.xml.transform.ErrorListener)"><CODE>TransformerFactory.setErrorListener(javax.xml.transform.ErrorListener)</CODE></A> for
reporting errors that have to do with syntax errors in the transformation
instructions, or via
<A HREF="../../../javax/xml/transform/Transformer.html#setErrorListener(javax.xml.transform.ErrorListener)"><CODE>Transformer.setErrorListener(javax.xml.transform.ErrorListener)</CODE></A> to report
errors that occur during the transformation. The <code>ErrorListener</code> on both objects
will always be valid and non-<code>null</code>, whether set by the application or a default
implementation provided by the processor.
The default implementation provided by the processor will report all warnings and errors to <code>System.err</code>
and does not throw any <code>Exception</code>s.
Applications are <em>strongly</em> encouraged to register and use
<code>ErrorListener</code>s that insure proper behavior for warnings and
errors.
</p>


<h3>Resolution of URIs within a transformation</h3>

<p>The API provides a way for URIs referenced from within the stylesheet
instructions or within the transformation to be resolved by the calling
application. This can be done by creating a class that implements the
<A HREF="../../../javax/xml/transform/URIResolver.html" title="interface in javax.xml.transform"><CODE>URIResolver</CODE></A> interface, with its one method,
<A HREF="../../../javax/xml/transform/URIResolver.html#resolve(java.lang.String, java.lang.String)"><CODE>URIResolver.resolve(java.lang.String, java.lang.String)</CODE></A>, and use this class to
set the URI resolution for the transformation instructions or transformation
with <A HREF="../../../javax/xml/transform/TransformerFactory.html#setURIResolver(javax.xml.transform.URIResolver)"><CODE>TransformerFactory.setURIResolver(javax.xml.transform.URIResolver)</CODE></A> or
<A HREF="../../../javax/xml/transform/Transformer.html#setURIResolver(javax.xml.transform.URIResolver)"><CODE>Transformer.setURIResolver(javax.xml.transform.URIResolver)</CODE></A>. The
<code>URIResolver.resolve</code> method takes two String arguments, the URI found in the
stylesheet instructions or built as part of the transformation process, and the
base URI 
against which the first argument will be made absolute if the
absolute URI is required.
The returned <A HREF="../../../javax/xml/transform/Source.html" title="interface in javax.xml.transform"><CODE>Source</CODE></A> object must be usable by
the transformer, as specified in its implemented features.</p>
<P>

<P>
<HR>


<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=3 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../javax/xml/parsers/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
&nbsp;<A HREF="../../../javax/xml/transform/dom/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../index.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>

</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>

</BODY>
</HTML>