Project

Profile

Help

How to connect?
Download (1.98 KB) Statistics
| Branch: | Tag: | Revision:

he / latest9.3 / hej / net / sf / saxon / om / package.html @ eca87e2d

1
<html>
2

    
3
<head>
4
<title>Package overview for net.sf.saxon.om</title>
5
</head>
6

    
7
<body>
8

    
9
<p>This package defines the interface to the Saxon tree structure. This
10
structure is used to represent both the source document and the stylesheet.
11
Essentially, this class represents Saxon's realization of the XPath data model.</p>
12

    
13
<p>The classes in the package are rather a miscellany. What they have in common is that
14
they describe the way the Saxon tree structure is accessed, in a way that it independent
15
of the two tree implementations (in packages <code>net.sf.saxon.tree</code> and 
16
<code>net.sf.saxon.tinytree</code>).</p>
17

    
18
<p>Broadly speaking, the classes fall into four categories:</p>
19

    
20
<ul>
21
<li>Interface classes: DocumentInfo, NodeInfo, Item, ValueRepresentation. These describe the interface
22
offered by the object model to the rest of the system, including the application.</li>
23

    
24
<li>Iterator classes: SequenceIterator, AxisIterator, ArrayIterator, EmptyIterator, SingletonIterator, and others.
25
These classes provide mechanisms for iterating over sequences. The most general, and the one which
26
applications are most likely to use, is the SequenceIterator interface itself. AxisIterator is a
27
specialization of this interface whose main difference is that it cannot throw exceptions. The other
28
classes are implementations of SequenceIterator for use in particular circumstances.</li>
29

    
30
<liul>Shared implementation classes: DocumentPool, NamePool, Navigator, XMLChar.
31
These contain functionality that is shared between the various tree implementations. (However, there is
32
also some shared functionality in the <code>net.sf.saxon.tree</code> package). These classes are
33
not generally needed by applications, with the exception of NamePool, which complex applications may
34
need to manipulate.</li>
35

    
36
<li>Information classes: Axis, NamespaceConstant. These contain constants.</li>
37
</ul>
38

    
39
<p align="center"><i>Michael H. Kay<br/>
40
Saxonica Limited<br/>
41
9 February 2005</i></p>
42
</body>
43
</html>
(30-30/30)