# Saxon9 Java API Documentation

s9api Interface
net.sf.saxon.s9api: This package provides Saxon's preferred Java API for XSLT, XQuery, XPath, and XML Schema processing.

Other Interfaces
com.saxonica.config: This package contains classes supporting configuration of Saxon-PE and Saxon-EE.
com.saxonica.jaxp: This package contains the Saxon implementation of the JAXP schema validation API.
com.saxonica.schema: This package contains classes used to represent the information in a schema, that is, the schema components.
net.sf.saxon: This package provides the core classes of the SAXON XSLT library.
net.sf.saxon.lib: This package collects together interfaces intended for user applications to implement in order to customize Saxon's behavior, default implementations of these interfaces, and classes containing constants that are used in public Saxon interfaces.
net.sf.saxon.om: This package defines the interface to the Saxon tree structure.
net.sf.saxon.query: This package provides a relatively low-level API for executing XQuery queries directly from a Java application.
net.sf.saxon.sxpath: This package provides an alternative API for executing XPath expressions directly from a Java application: unlike the API in package `net.sf.saxon.xpath`, these interfaces are not dependent on JAXP 1.3.
net.sf.saxon.type: This package contains classes that implement the XPath 2.0 type system.
net.sf.saxon.value: This package provides classes representing XPath values (that is, the results of an expression).
net.sf.saxon.xpath: This package is Saxon's implementation of the JAXP API designed for executing XPath 1.0 expressions directly from a Java application.
net.sf.saxon.xqj: This package contains an implementation of the XQJ specification defined in JSR 225.

External Interfaces
javax.xml.xquery

Other Packages
com.saxonica: This package together with its subpackages contains the code of Saxon-PE and Saxon-EE, other than the code that is in common with the open-source version Saxon-HE.
com.saxonica.codegen: This package contains the Java code generator for XQuery.
com.saxonica.deploy: The deploy package contains classes used at run-time in support of queries that have been compiled into Java code.
com.saxonica.expr: This package contains classes used to support expressions and instructions that are new in XPath 3.0, XQuery 3.0, or XSLT 3.0, and that don't fit conveniently into a more specialized category (such as streaming).
com.saxonica.expr.ee: This package contains classes used to support expressions and instructions that are specific to Saxon-EE, and that don't fit conveniently into a more specialized category (such as streaming).
com.saxonica.functions.extfn: The package `com.saxonica.extfn` contains implementations of extension functions in the Saxon namespace.
com.saxonica.functions.hof: The package `com.saxonica.hof` contains code to support higher-order functions.
com.saxonica.functions.map: This package implements maps, a Saxon extension to the XSLT and XQuery specification that provides a dictionary-like data structure.
com.saxonica.functions.xpath3: This package implements functions that appear for the first time in the third version of the XPath function library, currently titled Functions and Operators 1-1, other than functions that naturally fit into another category, such as higher-order functions.
com.saxonica.functions.xslt3
com.saxonica.ptree: The package com.saxonica.ptree contains classes used to support the persistent tree model in Saxon, allowing binary storage of XML documents on disc.
com.saxonica.pull: This package extends the pull API for Saxon that is provided in package `net.sf.saxon.pull` in Saxon-HE.
com.saxonica.schema.fsa: The package com.saxonica.fsa contains classes used to implement the finite state machines used when validating document instances against a schema.
com.saxonica.schema.sdoc: This package contains code used to import a schema.
com.saxonica.serialize: This package contains additions to the serializer that are specific to Saxon-PE and Saxon-EE.
com.saxonica.stream: This package and its subpackages contains classes used to support streaming and document projection.
com.saxonica.stream.adjunct: This package contains classes used to support streaming.
com.saxonica.stream.feed: This package contains classes used to support streaming.
com.saxonica.stream.om: The package `com.saxonica.stream.om` contains internal code to support executing of streaming templates in XSLT.
com.saxonica.stream.watch
com.saxonica.update: This package contains classes used to support XQuery Update.
com.saxonica.validate: The validation package contains classes used to validate document instances against a schema.
com.saxonica.xsltextn: This package contains classes used at compile time to support extensions to XSLT beyond 2.0: both facilities in the working draft of XSLT 3.0, and extensions specific to Saxon.
net.sf.saxon.dom: This package provides glue classes that enable Saxon to process a source document supplied as a DOM tree in the form of a DOMSource object; it also provides classes that present a DOM view of Saxon's native tree structures.
net.sf.saxon.event: This package provides classes that feed SAX-like events from one tree to another.
net.sf.saxon.evpull: This package provides classes that implement a StAX-like pull pipeline in which a recieving component makes calls on a provider component to supply information from the XML stream one event at a time.
net.sf.saxon.expr: This package provides classes associated with XPath expression handling.
net.sf.saxon.expr.instruct: This package provides classes for the compiled representation of the various elements and other instructions found in an XSLT stylesheet.
net.sf.saxon.expr.number: This package provides classes associated with numbering and the `xsl:number` element.
net.sf.saxon.expr.sort: This package provides utility routines for sorting and grouping.
net.sf.saxon.functions: This package provides implementations of all the core functions available for use in XPath expressions.
net.sf.saxon.functions.regex: This package contains the code to map XML Schema and XPath regular expressions to the regular expression engine of the underlying Java platform.
net.sf.saxon.java: This package contains Saxon code that is specific to the Java platform, as distinct from .NET
net.sf.saxon.option.dom4j: This package provides glue classes that enable Saxon to process a source document supplied as a DOM4J tree (see http://www.dom4j.org).
net.sf.saxon.option.exslt: This package provides implementations of the functions defined in EXSLT.
net.sf.saxon.option.jdom: This package provides glue classes that enable Saxon to process a source document supplied as a JDOM tree (see http://www.jdom.org).
net.sf.saxon.option.local
net.sf.saxon.option.sql: This package provides some sample extension elements for loading data into an SQL database.
net.sf.saxon.option.xom: This package provides glue classes that enable Saxon to process a source document supplied as a XOM tree (see http://www.cafeconleche.org/XOM).
net.sf.saxon.pattern: This package provides classes associated with XSLT pattern handling.
net.sf.saxon.pull: This package provides classes that interface Saxon to an XML parser that supplies data in the form of a stream of events.
net.sf.saxon.serialize: This package contains code for serializing trees using the standard W3C-defined serialization methods (xml, html, text).
net.sf.saxon.serialize.charcode: This package provides classes for handling different character sets, especially when serializing the output of a query or transformation.
net.sf.saxon.serialize.codenorm: This package contains the code to implement Unicode normalization.
net.sf.saxon.style: This package provides classes used during the compilation of an XSLT stylesheet.
net.sf.saxon.trace: This package provides an interface to Saxon tracing and debugging capabilities.
net.sf.saxon.trans: This package provides a miscellaneous collection of helper classes for XSLT transformation.
net.sf.saxon.tree.iter
net.sf.saxon.tree.linked: This package defines the implementation of the so-called "standard tree" structure.
net.sf.saxon.tree.tiny: This package is an implementation of the Saxon internal tree structure, designed to minimize memory usage, and the costs of allocating and garbage-collecting Java objects.
net.sf.saxon.tree.util
net.sf.saxon.tree.wrapper

Copyright (c) 2004-2010 Saxonica Limited. All rights reserved.