All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.sf.saxon.om.package-info Maven / Gradle / Ivy

There is a newer version: 12.5
Show newest version
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018-2023 Saxonica Limited
// This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0.
// If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
// This Source Code Form is "Incompatible With Secondary Licenses", as defined by the Mozilla Public License, v. 2.0.
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

/**
 * 

This package defines the interface to the Saxon tree structure. This * structure is used to represent both the source document and the stylesheet. * Essentially, this class represents Saxon's realization of the XPath data model.

*

The classes in the package are rather a miscellany. What they have in common is that * they describe the way the Saxon tree structure is accessed, in a way that it independent * of the two tree implementations (in packages net.sf.saxon.tree and * net.sf.saxon.tinytree).

*

Broadly speaking, the classes fall into four categories:

*
    *
  • Interface classes: DocumentInfo, NodeInfo, Item, ValueRepresentation. These describe the interface * offered by the object model to the rest of the system, including the application. *
  • *
  • Iterator classes: SequenceIterator, AxisIterator, ArrayIterator, EmptyIterator, SingletonIterator, and others. * These classes provide mechanisms for iterating over sequences. The most general, and the one which * applications are most likely to use, is the SequenceIterator interface itself. AxisIterator is a * specialization of this interface whose main difference is that it cannot throw exceptions. The other * classes are implementations of SequenceIterator for use in particular circumstances. *
  • *
  • Shared implementation classes: DocumentPool, NamePool, Navigator, XMLChar. * These contain functionality that is shared between the various tree implementations. (However, there is * also some shared functionality in the net.sf.saxon.tree package). These classes are * not generally needed by applications, with the exception of NamePool, which complex applications may * need to manipulate.
  • *
  • Information classes: Axis, NamespaceConstant. These contain constants.
  • *
*/ package net.sf.saxon.om;




© 2015 - 2024 Weber Informatics LLC | Privacy Policy