Supported Interfaces in Xalan-Java
Public interfaces
A public interface of Xalan-Java 2 is an API that a typical client developer should code against. Such interfaces are usually based upon World-Wide Web Consortium (W3C) recommendations, such as XSLT 1.0 and XPath 1.0, or Java Specification Requests (JSR's) with a status of "Final Release", such as JAXP.
The Xalan-Java 2 team will support use of public interfaces, and will attempt to fix severe bugs in such interfaces.
A particular version of a public interface will be supported for all the maintenance drops of a particular version and release of Xalan-Java 2 (that is, for a release that changes just the third digit of the version number). At the point a new version of Xalan-Java 2 is made available, (that is, a release that changes the first or second digit of the version number) such interfaces could change to reflect the latest standard specifications.
The public interfaces of Xalan-Java 2 are:
-
JAXP 1.3
interfaces found in the
javax.xml.parsers
,javax.xml.transform
,org.xml.sax
,org.w3c.dom
andjavax.xml.xpath
packages. - The Xalan-Java 2 specific XPath API, defined by the classes
- API's for using, configuring or defining a serializer, from the
org.apache.xml.serializer
package: - Properties files for configuring a serializer. (See
Setting output
properties in your stylesheets for more information.)
-
org/apache/xml/serializer/output_xml.properties
-
org/apache/xml/serializer/output_html.properties
-
org/apache/xml/serializer/output_text.properties
-
- Command-line interfaces for performing transformations:
Experimental interfaces
Interfaces and classes that are designated experimental reflect recent World-Wide Web Consortium (W3C) draft recommendations or draft Java Specification Requests (JSR's). Such an API is based upon a specification that is subject to change, and so is itself subject to change as the relevant standards body makes changes to the specification.
If and when the specification upon which the API is based reaches its final published form, the API could become a Public interface in a subsequent release of Xalan-Java 2, although the Xalan-Java 2 team could decide to simply withdraw the API, if it decided that making the API a public interface would not be appropriate.
As the name suggests, experimental interfaces are provided in order to give users the opportunity to experiment with new features so that they can provide feed-back on those features. They should not be used in production-level code. The Xalan-Java 2 team may fix severe bugs in experimental interfaces.
The experimental interfaces of Xalan-Java 2 are:
- The
DOM Level 3 XPath API found in the
org.apache.xpath.domapi
package.
Internal interfaces
All other classes are considered to be part of the internal interface of
Xalan-Java 2. Some such classes or members of such classes may themselves
be designated as public
using the Java keyword, but that is
a consequence of the internal organization of Xalan-Java 2.
Users who have complex and specific needs, such as the need to build their own XSLT or XPath processors, might use these internal interfaces, but their use is not supported. In addition these interfaces are subject to change without notice.