All Classes and Interfaces

Class
Description
This class implements the fn:abs() function
 
This element is a surrogate for an extension element (or indeed an xsl element) for which no implementation is available.
Represents the path from the root of an XDM tree to a specific node, as a sequence of (name, position) pairs
Inner class representing one step in the path
Handle streaming for calls to user-defined functions with streamability="absorbing"
This class is used as an abstract superclass for expressions where the consuming operand is absorbed by the expression: for example, data(), string(), or copy-of().
A pending item represents a tree under construction.
An abstract implementation of XDM array items, containing methods that can be implemented generically.
Iterate over the instructions in a sequence of instructions (or an XPath comma expression), concatenating the result of each instruction into a single combined sequence.
An abstract class providing reusable code for implementing the Destination interface
Abstract superclass (and factory class) for implementations of Function
A node in the XML parse tree representing an XML element, character content, or attribute.
Class AbstractNumberer is a base implementation of Numberer that provides language-independent default numbering This supports the xsl:number element.
An abstract implementation of Receiver in which all events are (by default) ignored
AbstractCollection is an abstract superclass for the various implementations of ResourceCollection within Saxon.
Information about a resource
An abstract and configurable implementation of the StaticContext interface, which defines the static context of an XPath expression.
Interface defining a callback for handling warnings
This is the standard trace listener used when the -T option is specified on the command line.
This abstract implementation of UniStringConsumer exists largely for C#, as a place to capture the default methods defined in the interface, and avoid them proliferating into multiple subclasses
AbstractVirtualNode is an abstract superclass for VirtualNode implementations in which the underlying node is itself a Saxon NodeInfo.
A Watch represents a class that is interested in looking at nodes for the purpose of evaluating uniqueness and key constraints, or for XSLT streaming.
AbstractFilterImpl is skeletal implementation of the SAX XMLFilter interface, used for both streaming and non-streaming filters.
A class that exists to contain common code shared between XsltTransformer and Xslt30Transformer
This class supports the get_X_from_Y functions defined in XPath 2.0
Elaborator for accessor functions such as hours-from-date-Time, minutes-from-duration
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Represents a single accumulator declared in an XSLT 3.0 stylesheet
Generate streaming code for an accumulator-after() function call, particularly in the case where the instruction is consuming and therefore has to defer evaluation until the endElement event.
Holds the values of an accumulator function for one non-streamed document
Non-streaming implementation of accumulator-before() and accumulator-after()
 
 
 
Manager for accumulator functions (XSLT 3.0).
Static registry for accumulators (XSLT 3.0) defined within a single package.
Static registry containing the accumulators defined within a package; the Saxon-EE subclass includes support for streamed accumulators.
This class represents one of the rules making up the definition of an accumulator
This watch implements a single accumulator in streaming mode.
A functional interface that simply encapsulates a callback action of any kind, allowing the action to fail with an XPathException.
A completely general functional interface for functions that take no arguments, return void, and potentially throw a SaxonApiException.
An extension of DOMSource that implements the ActiveSource interface, so it knows how to send itself to a Receiver
This class extends the standard SAXSource class by providing a ActiveSAXSource.deliver(Receiver, ParseOptions) method, meaning that Saxon can treat it just like any other ActiveSource implementation.
An ActiveSource is a Source that is capable of delivering an XML document to a Receiver;
An extension of StAXSource that makes the source active: that is, able to deliver itself to a Saxon Receiver.
An extension of the StreamSource object providing a ActiveStreamSource.deliver(Receiver, ParseOptions) method so that the contents of the source can be delivered to a supplied Receiver
This object represents the compiled form of a user-written function, template, attribute-set, etc (the source can be either an XSLT stylesheet function or an XQuery function).
This class implements the Adaptive serialization method defined in XSLT+XQuery Serialization 3.1.
This class performs the first phase of processing in "constructing simple content": it takes an input sequence, eliminates empty text nodes, and combines adjacent text nodes into one.
Elaborator for an adjacent text node merging expression - inserted into a pipeline for node construction
Streaming implementation of an AdjacentTextNodeMerger expression
AdjacentTextNodeMergingIterator is an iterator that eliminates zero-length text nodes and merges adjacent text nodes from the underlying iterator
This class implements the XPath 2.0 functions adjust-date-to-timezone(), adjust-time-timezone(), and adjust-dateTime-timezone(), with a single argument
This class implements the XPath 2.0 functions adjust-date-to-timezone(), adjust-time-timezone(), and adjust-dateTime-timezone(), with two arguments
A set of constants enumerating the possible relationships between one type and another
This abstract class provides functionality common to the sum(), avg(), count(), exists(), and empty() functions.
The proposed XPath 4.0 all-different() function, with the collation argument already known
A whitespace stripping rule that strips all elements unless xml:space indicates that whitespace should be preserved.
This class is validator used to check the content of an element whose complex type uses the "xs:all" construction in XML Schema.
The proposed XPath 4.0 all-equal() function, with the collation argument already known
An AllModelGroup represents an xs:all element in the schema
An AlphaCode is a compact, context-independent string representation of a SequenceType
This class contains static utility methods to test whether a character is alphanumeric, as defined by the rules of xsl:number: that is, whether it is in one of the Unicode categories Nd, Nl, No, Lu, Ll, Lt, Lm or Lo In Saxon 9.9 the data has been regenerated from Unicode 10.0.0.
A Comparer that treats strings as an alternating sequence of alpha parts and numeric parts.
An xsl:analyze-string element in the stylesheet.
 
Implements the fn:analyze-string function defined in XPath 3.0.
This class implements the saxon:analyze-uri() function which returns a map containing the components of a URI
Given an expression, this characteristic returns a boolean indicating whether or not the context item has a parent (or ancestor, respectively) that matches a given pattern
This class enumerates the ancestor:: or ancestor-or-self:: axes, starting at a given node.
A PatternOptimizer is an agent responsible for optimizing a particular class of patterns.
An AncestorQualifiedPattern represents a path of the form A/B or A//B, where nodes must match the pattern B and also have a parent/ancestor (respectively) that matches A.
This is a special pattern that matches the "anchor node".
 
Elaborator for an AndExpression (P and Q)
This class represents an annotation that appears in a function or variable declarations
An immutable list of function or variable annotations, or of annotation assertions
An abstract superclass for schema elements whose only permitted content is an Annotation element
An external object is a fourth kind of Item (after nodes, atomic values, and functions): it acts as a wrapper for a Java object (or, in C#, a .NET object).
This class represents the type of an external object returned by an extension function, or supplied as an external variable/parameter.
An ItemType representing the type function(*).
The item type function(*) when it is preceded by one or more annotation assertions
An implementation of ItemType that matches any item (node or atomic value)
NodeTest is an interface that enables a test of whether a node has a particular name and type.
This class has a singleton instance which represents the XML Schema built-in type xs:anySimpleType
This class has a singleton instance which represents the XML Schema built-in type xs:anyType, also known as the urtype.
Validator to validate an element against the class xs:anyType
An XPath value of type xs:anyURI.
This class implements the function fn:apply(), which is a standard function in XQuery 3.1.
An xsl:apply-imports element in the stylesheet.
Watch for an xsl:apply-imports instruction.
Compile an xsl:apply-imports expression/instruction to Java source code.
An xsl:apply-imports or xsl:next-match element in the stylesheet.
An instruction representing an xsl:apply-templates element in the stylesheet
 
An ApplyTemplatesPackage is an object that encapsulates the sequence of nodes to be processed, the mode, the parameters to be supplied, and the execution context.
This watch implements xsl:apply-templates in streaming mode.
Handle streaming for the xsl:apply-templates instruction
This class is used when a streaming template applies xsl:apply-templates to composed items, typically to the items in the current group established using xsl:for-each-group
Implementation of extension functions in the EXPath Archive package, see http://expath.org/spec/archive
 
 
Class ARegexIterator - provides an iterator over matched and unmatched substrings.
Glue class to interface the Jakarta regex engine to Saxon (The prefix 'A' indicates an Apache regular expression, as distinct from a JDK regular expression).
Arithmetic Expression: an expression using one of the operators plus, minus, multiply, div, idiv, mod.
Elaborator for an ArithmeticExpression (for example P + Q)
Arithmetic Expression: an expression using one of the operators plus, minus, multiply, div, idiv, mod, in backwards compatibility mode: see ArithmeticExpression for the non-backwards compatible case.
Generate streaming code for a SquareArrayConstructor, that is a sequence of expressions or instructions used to establish the content of an XDM array
Function signatures (and pointers to implementations) of the functions defined in XPath 3.1
Implementation of the function array:append(array, item()*) => array
Implementation of the proposed XP40 function array:build()
Implementation of the proposed 4.0 function array:empty(array)
Implementation of the proposed 4.0 function array:exists(array)
Implementation of the function array:filter(array, function) => array
Implementation of the function array:flatten => item()*
Implementation of the function array:fold-left(array, item()*, function) => array
Implementation of the function array:fold-left(array, item()*, function) => array
Implementation of the proposed 4.0 function array:foot(array) => item()*
Implementation of the function array:for-each(array, function) => array
Implementation of the function array:for-each-pair(array, array, function) => array
Implementation of the function array:_from-sequence(item()*) => array(*) which is used internally for the implementation of array{} and of the saxon:array extension
Abstract superclass for functions that produce an array, and that decide what kind of array implementation to use based on past experience.
Implementation of the function array:get(array, xs:integer) => item()*
Implementation of the function array:head(array) => item()*
Implementation of the function array:for-each-pair(array, array, function) => array
Implementation of the function array:insert-before(array, xs:integer, item()*) => array
Implementation of the function array:join(arrays) => array
Implementation of the proposed XP40 function array:members(array(*)) => record(value)*
Implementation of the proposed XP40 function array:of(parcel*) => array
Implementation of the function array:put(arrays, index, newValue) => array
Implementation of the function array:remove(array, xs:integer) => array
Implementation of the function array:replace(array, position, action) => array
Implementation of the function array:reverse(array, xs:integer, xs:integer) => array
Implementation of the function array:size(array) => integer
Implementation of the function array:slice(array, start, end, step) => array
Implementation of the function array:slice(array, start, end, step) => array
Implementation of the function array:subarray(array, xs:integer, xs:integer) => array
Implementation of the function array:tail(array) => item()*
Implementation of the function array:_to-sequence(array) => item()* which is used internally for the implementation of array?*
Implementation of the function array:trunk(array) => item()*
An xsl:array instruction in the stylesheet (XSLT 4.0 addition)
Interface supported by different implementations of an XDM array item.
An instance of this class represents a specific array item type, for example function(xs:int) as xs:boolean
ArrayIterator is used to enumerate items held in a Java array.
Parameterised subclass to accept items of a particular item type
ArrayIterator.OfNodes is a subclass of ArrayIterator where the array always contains Nodes; it therefore implements the AxisIterator interface.
Implementation of the extension function array:sort(array, function) => array
An Iterator that produces numeric values in a monotonic sequence, ascending or descending.
Handle streaming for calls to user-defined functions with streamability="ascent"
This class defines properties of the US-ASCII character set
An Assertion schema component (See XML Schema 1.1 Part 1)
Represents an assertion facet on a schema-defined simple type.
This class sits in the validation pipeline, ready (when requested) to build subtrees of the validated document for use in testing assertions against complex types.
Compiled instruction deriving from saxon:assign element in stylesheet.
Assignation is an abstract superclass for the kinds of expression that declare range variables: for, some, and every.
A ATokenIterator is an iterator over the strings that result from tokenizing a string using a regular expression
A sequence of atomic values, implemented using an underlying arrayList.
Interface representing an object that can be used to compare two XPath atomic values for equality or for ordering.
A function item representing a constructor function for an atomic type.
An integer that can be incremented atomically with thread safety
Implements the XPath 4.0 fn:atomic-equal() function.
An AtomicItemFeed is an ItemFeed in which the only allowed event is ItemFeed.append(Item) passing an atomic value.
A SequenceIterator is used to iterate over a sequence.
Marker interface to identify an object that acts as a surrogate for an atomic value, with the property that if two atomic values are equal under the XPath 'eq' operator, then their corresponding surrogates are equal under the Java equals() comparison (and by implication, they have equal hash codes).
Interface representing a sequence of atomic values.
An AtomicSequenceConverter is an expression that performs a cast (or other supplied conversion) on each member of a supplied sequence
Elaborator for an AtomicSequenceConverter (including an UntypedAtomicConverter, which is the same except that it uses a different converter internally)
Mapping function wrapped around a converter
Mapping function that converts every item in a sequence to a string
Compile a AtomicSequenceConverter or UntypedSequenceConverter expression to streaming code.
An AtomicComparer used for comparing atomic values of arbitrary item types.
Interface for atomic types (these are either built-in atomic types or user-defined atomic types).
The AtomicValue class corresponds to the concept of an atomic value in the XPath 2.0 data model.
Interface implemented by an iterator that can deliver atomized results.
An Atomizer is an expression corresponding essentially to the fn:data() function: it maps a sequence by replacing nodes with their typed values
Elaborator for an Atomizer
Streaming adjunct class for an atomizer (or call on the data() function)
AtomizingIterator returns the atomization of an underlying sequence supplied as an iterator.
AttributeCollectionImpl is an implementation of the SAX2 interface Attributes.
Abstract class for fixed and computed attribute constructor expressions
An XML Schema Attribute Declaration.
An AttributeGetter is an expression that returns the value of a specific attribute of the context item, provided that it is an untyped element node.
Elaborator for an AttributeGetter expression (which gets a named attribute of the context item and returns its value as an untyped atomic value)
An XML Schema Attribute Group Declaration.
An XML Schema Attribute Group Reference, corresponding to an xs:attributeGroup element with a 'ref' attribute.
A node in the "linked" tree representing an attribute.
This class contains immutable information about an attribute.
AttributeInfo.Deleted is a subclass used to mark a deleted attribute (in XQuery Update)
This class handles attribute inheritance.
AttributeIterator iterates over all the attribute nodes of a streamed Element node.
A Location corresponding to an attribute in a document (often a stylesheet)
AttributeMap represents an immutable collection of attributes available on a particular element node.
An implementation of AttributeMap suitable for representing attributes on a mutable tree.
The compiled form of an xsl:attribute-set element in the stylesheet.
AttributeSorter: This filter sorts attributes into the order requested using the saxon:attribute-order serialization property
An XML Schema Attribute Use: that is, a reference to an attribute declaration from within a complex type or attribute group.
This class is an abstract superclass for all the receivers that do element content validation.
This class represents an attribute value template.
This class represents an xs:anyAttribute element in the schema.
This class is an implementation of the DOM Attr class that wraps a Saxon NodeInfo representation of an attribute or namespace node.
This class is an extension of the JAXP Source interface.
Defines a state of a finite state machine used when validating an instance against a complex type.
 
 
Implementation of the fn:avg function
A node in the XML parse tree representing an XML element, character content, or attribute.
Information about a tree that wraps an AXIOM document
 
 
The document node in an AXIOM tree
 
 
A node in the XDM tree; specifically, a node that wraps an Axiom element node.
A node in the XDM tree.
This interface must be implemented by any third-party object model that can be wrapped with a wrapper that implements the Saxon Object Model (the NodeInfo interface).
A node in the XDM tree; specifically, a node that wraps an Axiom document node or element node.
JDOMWriter is a Receiver that constructs a JDOM document from the stream of events
This is an enumeration class containing constants representing the thirteen XPath axes
This iterator returns a sequence of atomic values, the result of atomizing the sequence of nodes returned by an underlying SequenceIterator.
An AxisExpression is always obtained by simplifying a PathExpression.
Elaborator for an AxisExpression
Compile an axis expression to streaming code.
An axis, that is a direction of navigation in the document structure.
A SequenceIterator is used to iterate over a sequence of items.
This emitter implements output method saxon:base64Binary.
A value of type xs:base64Binary
Class for handling patterns with simple non-positional boolean predicates
This class implements the fn:base-uri() function in XPath 2.0
Elaborator for simple string-valued properties of nodes such as name(), local-name(), namespace-uri(), and generate-id()
A TransformerFactory instance can be used to create Transformer and Template objects.
A basic updating expression: insert, replace, delete, rename (but not copy)
An implementation class for decimal values other than integers
An integer value: note this is a subtype of decimal in XML Schema, not a primitive type.
An Iterator that produces numeric values in a monotonic ascending or descending sequence, where the integers may exceed the range of a Long
This is an abstract superclass for the two binary output methods saxon:base64Binary and saxon:hexBinary.
Binary Expression: a numeric or boolean expression consisting of the two operands and an operator
A binary resource that might appear in a resource collection.
This class generates decodes processing instructions in text output that represent text encoded in base64 binary or hexBinary
The Bindery class holds information about variables and their values.
A value that can be saved in a global variable to indicate that evaluation failed, and that subsequent attempts at evaluation should also fail
Binding is a interface used to represent the run-time properties and methods associated with a variable: specifically, a method to get the value of the variable.
BindingReference is a interface used to mark references to a variable declaration.
An expression that delivers the concatenation of the results of its subexpressions.
Elaborator for a "Block", which is typically either an XPath sequence expression (a, b, c) or an XSLT sequence constructor
 
Generate streaming code for a Block, that is a sequence of expressions or instructions
Iterate over the instructions in a sequence of instructions (or an XPath comma expression), concatenating the result of each instruction into a single combined sequence.
An implementation of UnicodeString that wraps a Java string which is known to contain no surrogates.
Abstract superclass for elaborators whose primary evaluation method is to return a single boolean.
Interface implemented by expressions that return a boolean result.
Boolean expression: two truth values combined using AND or OR.
A BooleanExpressionPattern is a pattern of the form .[ Expr ] introduced in XSLT 3.0.
This class supports the XPath function boolean()
 
Feed implementation supporting the fn:boolean() and fn:not() functions
Feed implementation for the fn:not function
Feed implementation for the fn:boolean function
Streaming code for an fn:boolean() function call
A boolean XPath value
A compiled xsl:break instruction.
 
This class is used when a streaming xsl:for-each requests processing of a grounded consuming sequence with a static dependency on last()
A BufferingFeed is used to wrap an expression that does not have intrinsic capability to accept streamed input.
This class is used when a streaming template requests filtering of items that don't come directly from the streamed document, but rather are constructed in the course of the push pipeline
This class is used when a streaming xsl:for-each requests processing of a grounded consuming sequence with a static dependency on last()
The abstract Builder class is responsible for taking a stream of SAX events and constructing a Document tree.
A BuilderMonitor can be inserted into a pipeline immediately in front of a Builder.
A SAX ContentHandler that builds a Saxon tree, and allows the node at the root of the tree to be retrieved on completion.
A BuildingStreamWriter allows a document to be constructed by calling the methods defined in the XMLStreamWriter interface; after the document has been constructed, its root node may be retrieved by calling the getDocumentNode() method.
This class is an implementation of XMLStreamWriter, allowing a document to be constructed by means of a series of XMLStreamWriter method calls such as writeStartElement(), writeAttribute(), writeCharacters(), and writeEndElement().
Supports the fn:build-uri function.
This class represents a built-in atomic type, which may be either a primitive type (such as xs:decimal or xs:anyURI) or a derived type (such as xs:ID or xs:dayTimeDuration).
This class is used to contain information about a set of built-in functions.
An entry in the table describing the properties of a function
This class is used to implement the built-in list types NMTOKENS, ENTITIES, IDREFS.
Enumeration representing the permitted values of xsl:mode/@on-no-match, decomposed into more primitive actions
Defines a set of built-in template rules (rules for use when no user-defined template rules match a given node)
This non-instantiable class acts as a register of Schema objects containing all the built-in types: that is, the types defined in the "xs" namespace.
This class evaluates arithmetic expressions; it acts as a helper class to the ArithmeticExpression class.
Arithmetic: anyAtomicType div AnyAtomicType
Arithmetic: anyAtomicType idiv AnyAtomicType
Arithmetic: anyAtomicType - AnyAtomicType
Arithmetic: anyAtomicType mod AnyAtomicType
Arithmetic: anyAtomicType + AnyAtomicType
Arithmetic: anyAtomicType * AnyAtomicType
Arithmetic: decimal div decimal (including types that promote to decimal, that is, integer)
Arithmetic: decimal idiv decimal (including types that promote to decimal, that is, integer)
Arithmetic: decimal - decimal (including types that promote to decimal, that is, integer)
Arithmetic: decimal mod decimal (including types that promote to decimal, that is, integer)
Arithmetic: decimal + decimal (including types that promote to decimal, that is, integer)
Arithmetic: decimal * decimal (including types that promote to decimal, that is, integer)
Arithmetic: double div double (including types that promote to double)
Arithmetic: double - double (including types that promote to double)
Arithmetic: double mod double (including types that promote to double)
Marker interface for operations on doubles
Arithmetic: double + double (including types that promote to double)
Arithmetic: double * double (including types that promote to double)
Arithmetic: float div float (including types that promote to float)
Arithmetic: float idiv float (including types that promote to float)
Arithmetic: float - float (including types that promote to float)
Arithmetic: float mod float (including types that promote to float)
Arithmetic: float + float (including types that promote to float)
Arithmetic: float * float (including types that promote to float)
Arithmetic: integer div integer
Arithmetic: integer idiv integer
Arithmetic: integer - integer
Arithmetic: integer mod integer
Arithmetic: integer + integer
Arithmetic: integer * integer
Abstract superclass for Date, Time, and DateTime.
A comparer specifically for comparing two date, time, or dateTime values
A generic interface for calling expressions by supplying the values of their subexpressions
An implementation of Callable that allows the logic to be supplied as a lambda expression.
 
A CallableFeed is used to wrap an expression that does (a) not have intrinsic capability to accept streamed input, and (b) does not expect any operand to be a sequence, and (c) implements the Callable interface.
A function item that wraps a Callable
A Callable that wraps another Callable and a Dynamic Context, in effect acting as a closure that executes the original callable with a saved context.
Instruction representing an xsl:call-template element in the stylesheet.
 
A CallTemplatePackage is an object that encapsulates the name of a template to be called, the parameters to be supplied, and the execution context.
 
Represents a match of a captured subgroup
This class contains static methods to manipulate the cardinality property of a type.
A CardinalityChecker implements the cardinality checking of "treat as": that is, it returns the supplied sequence, checking that its cardinality is correct
Elaborator for a treat as expression, which is usually system-generated by the type checking phase of the compiler
Generate streaming code for a cardinality checker
A Feed to go on the streaming pipeline that checks the cardinality of the sequence represented by the events passing down the pipeline.
CardinalityCheckingIterator returns the items in an underlying sequence unchanged, but checks that the number of items conforms to the required cardinality.
A StringCollator that sorts lowercase before uppercase, or vice versa.
This singleton class holds data about the case-variants of Unicode characters.
Castable Expression: implements "Expr castable as atomic-type?".
Cast Expression: implements "cast as data-type ( expression )".
Elaborator for cast as expression, or the equivalent constructor function call
Casting Expression: abstract superclass for "cast as X" and "castable as X", which share a good deal of logic
This marker interface represents a type that can be used as the target of a cast or castable operation, that is, an atomic type, list type, or plain union type
A resource collection implemented by means of a catalog file.
The standard implementation of the ResourceResolver interface for use with catalogs.
This class catches all errors thrown by a Receiver pipeline, and reports them to a specified ErrorReporter; after an error has occurred, all further events are ignored.
Singleton class holding data for Regular expression character categories.
A Category is a CharacterClass represented in a regular expression as \p{Xx}.
CDATAFilter: This ProxyReceiver converts character data to CDATA sections, if the character data belongs to one of a set of element types to be handled this way.
This class supports the ceiling() function
 
An EntityResolver that first tries one supplied EntityResolver, and if that returns null, falls back to another.
An ResourceResolver that first tries one supplied ResourceResolver, and if that returns null, falls back to another.
A character class represents a set of characters for regex matching purposes.
A Characteristic represents a distinguishing feature of an item that may be used by several patterns in a rule chain, and which can usefully be evaluated once for all rules in the rule chain.
This class defines a character map, that is, a mapping from characters to strings used by the serializer when mapping individual characters in the output.
CharacterMapExpander: This ProxyReceiver expands characters occurring in a character map, as specified by the XSLT 2.0 xsl:character-map declaration
This class represents a set of named character maps.
A class that expands a character to a character reference, entity reference, etc, and writes the resulting reference to a writer
This interface defines properties of a character set, built in to the Saxon product.
This class delivers a CharacterSet object for a given named encoding.
Implements the saxon:characters() function.
Implements the saxon:characters() or fn:characters() function.
Implements the fn:char() function.
A filter to go on a Receiver pipeline and calculate a checksum of the data passing through the pipeline.
A ChoiceCompositor represents an xs:choice element in the schema
Compiled representation of an xsl:choose or xsl:if element in the stylesheet.
Elaborator for a "Choose" expression (which may be xsl:if, xsl:choose, or an XPath conditional expression).
Streaming code to implement a conditional ("if/choose") expression
A "Clause" refers specifically to one of the clauses of a FLWOR expression, for example the "for" clause, the "let" clause, the "where" or "order by" clause.
 
A "trace" clause in a FLWOR expression, added by a TraceCodeInjector
This utility class exists in order to put all functionality relating to use of the Java 9 class Cleaner in one place, to allow the product to continue to work with Java 8.
 
This class represents the common ability of many XQJ classes to be closed.
A receiver that performs specified actions when closed
A Closure represents a value that has not yet been evaluated: the value is represented by an expression, together with saved values of all the context variables that the expression depends on.
An implementation of NodeName that encapsulates an integer fingerprint, a string prefix, and a reference to the NamePool from which the fingerprint was allocated.
A code injector can be used to add code to the expression tree (for example, diagnostic tracing code) during the process of parsing and tree construction
An AtomicComparer used for comparing strings, untypedAtomic values, and URIs using the Unicode codepoint collation.
A collating sequence that uses Unicode codepoint ordering
Implements the XPath 2.0 fn:codepoint-equal() function.
Iterator over a string to produce a sequence of single character strings
This class implements the function fn:codepoints-to-string()
 
A function item obtained by coercing a supplied function; this adds a wrapper to perform dynamic type checking of the arguments in any call, and type checking of the result.
An AtomicComparer used for comparing strings, untypedAtomic values, and URIs using a collation.
Abstract superclass for functions that take an optional collation argument, in which the collation is not present as an explicit argument, either because it was defaulted in the original function call, or because it has been bound during static analysis.
Generic class for all functions that take an optional collation argument, where the collation argument is supplied and has not yet been resolved.
Implements the collation-key function defined in the XSLT 3.0 and XPath 3.1 specifications
A match key for comparing strings under a collation.
A CollationURIResolver accepts a collation name as input, and returns a collation (represented by a StringCollator as output.
An instance of CollectionFinder can be registered with the Saxon configuration; it is called in response to calls on the fn:collection() and fn:uri-collection() functions.
Implement the fn:collection() function.
A CombinedNodeTest combines two node tests using one of the operators union (=or), intersect (=and), difference (= "and not").
This is a helper class for classes such as net.sf.saxon.Transform and net.sf.saxon.Query that process command line options
 
An instruction representing an xsl:comment element in the stylesheet.
CommentImpl is an implementation of a Comment node
The CommentStripper class is a filter that removes all comments and processing instructions.
This class is responsible for identifying and extracting common subexpressions within an expression.
A compact representation of an atomic xs:string value used in saved tables for key and keyref constraints, designed to economize on space.
This class implements the XPath 2.0 fn:compare() function
This class implements a comparison of a computed value to a literal constant using one of the operators eq, ne, lt, gt, le, ge.
This class implements a comparison of a numeric value to an integer constant using one of the operators eq, ne, lt, gt, le, ge.
Elaborator for a "compare to integer constant" expression
This class implements a comparison of a computed value to a string constant using one of the operators eq, ne, lt, gt, le, ge.
Elaborator for a "compare to string constant" expression
A ComparisonException is a ClassCastException that encapsulates an XPathException.
Interface implemented by expressions that perform a comparison
Represents an XSLT compilation episode, compiling a single package.
This class implements the saxon:compile-query() extension function
This class exists to hold information associated with a specific XSLT compilation episode.
This class implements the saxon:compile-stylesheet() extension function
This class implements the saxon:compile-XPath() extension function, which is specially-recognized by the system because it needs access to parts of the static context.
This class is used for generating complex content, that is, the content of an element or document node.
This class is a filter that is used to validate the content of an element with a complex type.
This event feed supports instructions that create a document or element node.
Elaborator for element construction expressions (both fixed and computed).
A complex type as defined in XML Schema: either a user-defined complex type, or xs:anyType, or xs:untyped.
The different varieties of complex types
Represents a component as defined in the XSLT 3.0 specification: for example a function, a named template, an attribute set, a global variable.
 
A ComponentBinding is a reference from one component to another; for example a variable reference or function call.
The object represents a declaration (that is, a top-level element) in a stylesheet.
This class represents the inversion of a template or function body
Represents an expression or instruction such as call-template, or a user function call, or a global variable reference, that needs to be bound to a target component, and can potentially be re-bound when the containing component is copied into another package.
A reference to a schema component.
 
A wrapper expression used to trace execution of components such as functions, templates, and global variables in XSLT and XQuery.
Interface for Element Declaration, Attribute Declaration and Attribute Use, created because they share common functionality for handling fixed and default values
Watch factory class for an class that composes items from sequences of events: examples are copy-of(), data(), and string().
A composite atomic key is a sequence of atomic values; two such keys are matched be comparing the constituent values pairwise.
A CompoundMode is a mode representing the templates contained within an xsl:override element in a using package together with the rules in the corresponding mode of the base package.
This class provides a compressed representation of a sequence of whitespace characters.
An instruction derived from an xsl:attribute element in stylesheet, or from an attribute constructor in XQuery, in cases where the attribute name is not known statically
An instruction representing an xsl:element element in an XSLT stylesheet, or a computed element constructor in XQuery.
Elaborator for a FixedElement (literal result element) expression.
Implementation of the fn:concat() function
Implementation of the fn:concat() function as defined in XPath 2.0, 3.0, and 3.1
An iterator over nodes, that concatenates the nodes returned by two supplied iterators.
An iterator over nodes, that concatenates the nodes returned by two supplied iterators.
An iterable over arbitrary objects, that concatenates the objects returned by two supplied iterables.
An iterator (typically over nodes), that concatenates the nodes returned by two supplied iterators.
An XSLT 3.0 sequence constructor containing xsl:on-empty and/or xsl:on-non-empty instructions
Generate streaming code for a conditional Block, that is a sequence constructor containing xsl:on-empty and/or xsl:on-not-empty instructions
 
This is a marker interface for Choose and Switch instructions
An expression that sorts an underlying sequence into document order if some condition is true, or that returns the sequence "as is" (knowing that it doesn't need sorting) if the condition is false.
Elaborator for a conditional sorter, which sorts the results of a subexpression into document order only if a supplied condition is true
A ResourceResolver that allows properties to be set and examined
This class holds details of user-selected configuration options for a set of transformations and/or queries.
Marker interface to represent an API that is provided as a layer on top of this Configuration
This class contains constants representing features of the software that may or may not be licensed.
Class used to read a config.xml file and transfer all settings from the file to the Configuration
Subclass of ConfigurationReader providing functionality particular to Saxon Professional Edition
A factory for PooledXQConnection objects.
A ConstantFunction is a zero-argument function that always delivers the same result, supplied at the time the function is instantiated.
 
 
This class handles the checking of Schema-defined unique, key, and keyref constraints.
The ConstructorFunctionLibrary represents the collection of constructor functions for atomic types.
This expression is used as a proxy for the consuming operand of an expression such as an arithmetic expression for which there is no explicit streaming support.
The Container interface represents a document node or element node under construction; there are concrete subclasses representing document nodes and element nodes respectively.
Implements the fn:contains() function, with the collation already known
Expression elaborator for a call to contains(), starts-with(), or ends-with()
Implements the fn:contains-token() function with the collation already bound.
A PatternOptimizer is an agent responsible for optimizing a particular class of patterns.
A ContentDetector is a filter that can be added to a Receiver pipeline to note whether the current element node has children.
A ContentHandlerProxy is a Receiver that converts events into the form expected by an underlying SAX2 ContentHandler.
Create a TraceListener that will collect information about the current location in the source document.
Implementation of the SAX Locator interface, used to supply location information to the ContentHandler.
Corresponds to a Content Type Property Record as defined in the XML Schema 1.1 specification
NodeTest is an interface that enables a test of whether a node matches particular conditions.
This class is an abstract superclass for all the validators.
 
A ContextAccessorFunction is a function that is dependent on the dynamic context.
A comparer for comparing two "ordinary" atomic values, where the values implement the Comparable interface and the equals() method with the appropriate XPath semantics.
This interface is implemented by AtomicValues that can be compared without regard to context - specifically, the result of eq and lt comparisons does not depend on collations or on the context-dependent timezone.
A ContextItemAccessorFunction is a function that takes no arguments, but operates implicitly on the context item.
Subclass of ContextItemAccessorFunction to handle number().
Subclass of ContextItemAccessorFunction to handle string-length() and normalize-space().
 
This class represents the expression "(dot)", which always returns the context item.
Elaborator for the context item expression, "dot".
A data structure that represents the required type of the context item, together with information about whether it is known to be present or absent or whether it is not known statically whether it is present or absent.
Saxon-EE version of ContextItemStaticInfo, with extra information used for streamability analysis
ContextMappingFunction is an interface that must be satisfied by an object passed to a ContextMappingIterator.
ContextMappingIterator merges a sequence of sequences into a single flat sequence.
Represents a construct that is responsible for originating a new context; used in analysing the stack of context objects for diagnostics
An entry on the context stack.
Subclass of ContextStackFrame representing an xsl:apply-templates call in XSLT
Subclass of ContextStackFrame representing a built-in template rule in XSLT
Subclass of ContextStackFrame representing the outermost stack frame, for the calling application
Subclass of ContextStackFrame representing an xsl:call-template instruction in XSLT
Subclass of ContextStackFrame representing a call to a user-defined function either in XSLT or XQuery
Subclass of ContextStackFrame representing the evaluation of a variable (typically a global variable)
This class provides a representation of the current runtime call stack, as represented by the stack of XPathContext objects.
Interface implemented by expressions that switch the context, for example A/B or A[B]
The Controller underpins Saxon's implementation of the JAXP Transformer class, and represents an executing instance of a transformation or query.
This is a marker interface used as the result of methods that convert or cast values from one type to another.
This class defines a set of rules for converting between different atomic types.
A converter implements conversions from one atomic type to another - that is, it implements the casting rules for a (source type, destination type) pair.
Converts base64 to hexBinary
Converts a boolean to a decimal
Converts a boolean to a double
Converts a boolean to an xs:float
Converts a boolean to an integer
Converts a dateTime to a date
Converts a dateTime to a gDay
Converts a dateTime to a gMonth
Converts a dateTime to a gMonthDay
Converts a dateTime to a gYear
Converts a dateTime to a gYearMonth
Converts a dateTime to a time
Converts a date to a dateTime
Converts a decimal to an integer.
Convers a double to a decimal
Converts a double to an integer
Converter that checks that a value belonging to a supertype is a valid instance of a subtype, and returns an instance of the subtype
Converts a duration to a dayTimeDuration
Converts a duration to a yearMonthDuration
Converts a float to a decimal
Converts a float to an integer
Converts hexBinary to base64Binary
Converter that does nothing - it returns the input unchanged
Converts an integer to a decimal
Converts Notation to QName
Converts a numeric value to a boolean
Converts any numeric value to a decimal
Converts any numeric value to a double.
Converts any numeric value to xs:float
Converts any numeric value to an integer.
Converter that implements the promotion rules from xs:string to xs:anyURI
 
Converter that implements the promotion rules to a required type of xs:double
Converter that implements the promotion rules to a required type of xs:float
Converter that implements the promotion rules from xs:string to xs:anyURI
Converter that implements the promotion rules from xs:anyURI to xs:string
Converts QName to Notation
Converts any value to a string
Converts any value to untyped atomic
Converter that operates in two phases, via an intermediate type
Specialisation for converters that always succeed
Converter that does nothing except change the type annotation of the value.
Handler for xsl:copy elements in stylesheet.
 
 
Compile an xsl:copy expression/instruction to streaming code.
A CopyInformee is an agent that receives extra information while a tree is being copied.
A copy-modify expression (called a "transform" expression in the XQuery Update specification)
Exception indicating that an attempt was made to copy namespace-sensitive content without copying its associated namespaces
An xsl:copy-of element in the stylesheet.
 
This class is used to construct a grounded copy of a streamed node, by capturing the events representing the streamed node as they are notified, and constructing the grounded copy from these events.
 
XSLT 3.0 function copy-of().
Non-instantiable class to define options for the NodeInfo.copy(net.sf.saxon.event.Receiver, int, net.sf.saxon.s9api.Location) method
Implementation of the fn:count function
 
A "count" clause in a FLWOR expression
A tuple stream that implements a "count" clause in an XQuery 3.0 FLWOR expression
A tuple stream in push mode that implements a "count" clause in an XQuery 3.0 FLWOR expression
Extension of ExecutorCompletionService to count the number of tasks submitted and take that many completed tasks before calling it a day.
A filter that can be inserted into a Receiver pipeline to count the events that pass through.
A counting state is a dynamic object representing the combination of an AutomatonState and a counter value
Streaming code for the count() function.
This class contains dummy methods which, if called, have no effect; but calls on these methods are detected by the Java-to-C# converter and affect the C# code that is generated.
Annotate a Java class or interface to indicate whether the corresponding C# class should be implemented as a delegate.
Annotate a Java interface to reference an additional interface with method definitions that will be present in the C# product.
Annotate a Java class or interface with C# code that is to be injected literally into the body of the class or interface when converting to C#.
This annotation appears on the declaration of a method that creates an instance of an anonymous inner class, and it is used to define what information needs to be passed to the generated C# inner class.
This annotation appears on the declation of a method or field if, for some reason, the automatic generation of the correct modifiers for C# produces incorrect results.
Annotate a Java class or interface to indicate that the C# directive "#nullable enable" is to be included in the generated C# code.
Annotate a Java method to indicate that it is to be dropped from the C# generated code (alternative to conditional exclusion using the preprocessor)
Annotate a Java method with C# code that is to be injected literally into the body of the method when converting to C#, replacing the Java method body.
Annotation used by the Java-to-C# transpiler: it causes any exception named in a catch clause within a Java method to be replaced by a different exception in the generated C#
Annotate a Java method, constructor, or field with C# code that is to replace the entire Java method.
Annotate a Java enum to indicate that a simple mapping to a C# enum should be used.
This annotation appears on the declation of a method or field if, for some reason, the automatic generation of the correct modifiers for C# produces incorrect results.
This annotation appears on the declaration of a class using generic type parameters if the C# code needs to have type bounds that cannot be inferred directly from the Java declaration.
Implement the XSLT current() function
Implements the XSLT function current-group()
Implements the XSLT function current-group()
Implements the XSLT function current-grouping-key()
Implements the XSLT function current-grouping-key()
This is a special pattern that matches the "anchor node".
Provides streaming code for a call on current-group().
The expression is generated when compiling the current() function in XSLT.
Implements the XSLT 3.0 function current-merge-group()
Generate streaming code for a call on current-merge-group().
Implements the XSLT function current-grouping-key()
This class implements the XSLT 3.0 function current-output-uri()
A function obtained by currying another function, that is, the result of calling fn:partial-apply
A map implementation using a custom equality matcher, to avoid having to wrap each entry in a wrapper object to achieve customised equality testing.
A mutable set implementation using a custom equality matcher, to avoid having to wrap each entry in a wrapper object to achieve customised equality testing.
Implement XPath function fn:data() with a single argument
This element represents a top-level element in a user-defined namespace, or a child/descendant of such an element.
This class handles URIs using the data: URI scheme defined in RFC 2397
This class implements extension functions in the http://exslt.org/dates-and-times namespace.
This class supports the dateTime($date, $time) function
 
A value of type xs:dateTime.
DateTimeComparable is an object that implements the XML Schema rules for comparing date/time values
 
A value of type Date.
A value of type xs:dayTimeDuration (or a subtype thereof).
This interface may be implemented by an external debugging tool
A class that represents a character as a decimal character reference and writes the result to a supplied Writer.
Implements the saxon:decimal-divide() function
DecimalFormatManager manages the collection of named and unnamed decimal formats, for use by the format-number() function.
An AtomicComparer used for sorting values that are known to be instances of xs:decimal (including xs:integer), It also supports a separate method for getting a collation key to test equality of items
This class is modelled on Java's DecimalFormatSymbols, but it allows the use of any Unicode character to represent symbols such as the decimal point and the grouping separator, whereas DecimalFormatSymbols restricts these to a char (1-65535).
Abstract class representing the XDM type xs:decimal.
This interface represents the union of global variable declarations and function declarations in XQuery modules
Implements the fn:decode-from-uri function.
Appends the output of an ItemFeed to an Outputter
The built-in rule set introduced in XSLT 3.0, which performs a deep copy of any unmatched node.
Handle streaming for calls to user-defined functions with streamability="absorbing"
XSLT 2.0 deep-equal() function, where the collation is already known.
 
Implement streaming of deep-equal function.
The rule set introduced in XSLT 3.0, which (for any kind of node) simply ignores the node and its descendants.
Handler for saxon:deep-update elements in stylesheet.
DefaultedArgumentExpression is a placeholder used in a function call for an argument that is evaluated using the default value expression from the function definition, in cases where that expression has not yet been compiled (typically because the function call precedes the function declaration).
 
 
A DelegatingArrayItem is an abstract class representing an array that is implemented by delegating all array-related functionality to a base class.
A DelegatingFeed is an ItemFeed that delegates most of its work to a supplied Outputter.
A DelegatingMapItem is an abstract class representing a map that is implemented by delegating all map-related functionality to another map.
A pending update action representing the effect of a delete expression
A delete expression in XQuery Update
 
A Comparer used for comparing descending keys.
Iterator that produces numeric values in a monotonic sequence, ascending or descending.
A Destination represents a place where XDM values can be sent.
A helper class for implementing the Destination interface
A state in a determinized finite state machine
A "let" clause in a FLWOR expression
Implements the trace clause in a FLWOR expression.
Implements the changes to a tuple stream effected by the Let clause in a FLWOR expression
A simple implementation of MapItem where the strings are keys, and modification is unlikely.
An enumeration representing a nodeset that is teh difference of two other NodeSets.
A wrapper around the Java cryptography classes to make a SHA-256 digest.
Represents either of the facets totalDigits or fractionDigits
This class represents a resource collection containing all, or selected, files within a filestore directory.
A DirectResourceResolver is a ResourceResolver that resolves requests using the direct, native capabilities of the platform.
The saxon:distinct facet on a list type can be used to constrain the list to contain distinct values.
The XPath 2.0 distinct-values() function, with the collation argument already known
Iterator class to return the distinct values in a sequence
Implement the distinct-values function in streaming mode.
Implement the fn:doc() function - a simplified form of the Document function
Implement the saxon:doc() function - a variant of the fn:doc function with a second argument to supply option parameters.
Implement the fn:doc-available() function
A saxon:doctype element in the stylesheet.
A Container representing a document node.
A document builder holds properties controlling how a Saxon document tree should be built, and provides methods to invoke the tree construction.
This class implements the JAXP DocumentBuilder interface, allowing a Saxon TinyTree to be constructed using standard JAXP parsing interfaces.
Implements the XSLT document() function
A node in the XML parse tree representing the Document itself (or equivalently, the root node of the Document).
An instruction to create a document node.
Elaborator for an AtomicSequenceConverter (including an UntypedAtomicConverter, which is the same except that it uses a different converter internally)
Evaluate an xsl:document instruction in streaming code.
 
This class encapsulates a string used as the value of the document-uri() property of a document, together with a normalized representation of the string used for equality comparisons.
A DocumentNodeTest implements the test document-node(element(~,~))
This class (which has one instance per Configuration) is used to allocate unique document numbers.
DocumentOrderIterator takes as input an iteration of nodes in any order, and returns as output an iteration of the same nodes in document order, eliminating any duplicates.
This class is an implementation of the DOM Document class that wraps a Saxon DocumentInfo representation of a document node.
An object representing the collection of documents handled during a single transformation.
A DocumentSorter is an expression that sorts a sequence of nodes into document order.
Elaborator for a docOrder expression - sorts nodes into document order and eliminates duplicates
Generate streaming code for a document sorting expression node.
This class supports the document-uri() function
DocumentValidator checks that a document is well-formed: specifically, that it contains a single element node child and no text node children.
The tree info object for a tree implemented as a wrapper around a DOM Document.
Returns the events provided by an underlying PullProvider, with the addition of a START_DOCUMENT event immediately after the START_OF_INPUT, and an END_DOCUMENT event immediately before the END_OF_INPUT
Compiled instruction deriving from saxon:do element in stylesheet.
 
TreeInfo class for a virtual tree that wraps a DOM4J tree
A node in the XML parse tree representing an XML element, character content, or attribute.
This class is the DOM4J implementation of Saxon's ExternalObjectModel interface; it supports the wrapping of DOM4J documents as instances of the Saxon NodeInfo interface.
JDOMWriter is a Receiver that constructs a DOM4J document from the stream of events
This class represents a Destination (for example, the destination of the output of a transformation) in which the results are written to a newly constructed DOM tree in memory.
DOMEnvelope is an object model representation in which DOM interfaces are wrapped around Saxon NodeInfo nodes: that is, it implements the DOM on top of a Saxon tree implementation such as the tiny tree or linked tree.
DOM operations only raise exceptions in "exceptional" circumstances, i.e., when an operation is impossible to perform (either for logical reasons, because data is lost, or because the implementation has become unstable).
An attribute node in the Domino tree
A node in the Domino tree (other than an attribute or namespace node)
An adaptation of the TinyTree structure, used to index a DOM.
Tree model implementation for the DOMINO tree
A Builder class for the Domino tree model
This class wraps a list of nodes as a DOM NodeList
A node in the XML parse tree representing an XML element, character content, or attribute.
This interface must be implemented by any third-party object model that can be wrapped with a wrapper that implements the Saxon Object Model (the NodeInfo interface).
DOMSender.java: pseudo-SAX driver for a DOM source document.
Variant of command line net.sf.saxon.Transform do build the source document in DOM and then proceed with the transformation.
DOMWriter is a Receiver that attaches the result tree to a specified Node in the DOM Document
Default factory for number/date localizers for the .NET platform.
An AtomicComparer used for sorting values that are known to be numeric.
A numeric (double precision floating point) value
A dummy namespace resolver used when validating QName-valued attributes written to the result tree.
The XPath 4.0 duplicate-values() function, with the collation argument already known
Iterator class to return the distinct values in a sequence
The Durability of a node affects how it is handled for the purposes of caching by memo functions.
A value of type xs:duration
DurationValueComparable is a Comparable value that acts as a surrogate for a Duration, having ordering rules that implement the XML Schema specification.
A DynamicContextAccessor is a function that takes no arguments, but operates implicitly on the dynamic context.
 
 
 
 
 
This class implements the function fn:apply(), which is a standard function in XQuery 3.1.
Utility class used to perform dynamic loading of user-hook implementations
Specialization of DynamicLoader for use in Saxon-EE
Specialization of DynamicLoader for use in Saxon-PE
This object represents a dynamic context for query execution.
An EagerLetExpression is the same as a LetExpression except that the variable is evaluated using eager evaluation rather than lazy evaluation.
A SequenceEvaluator that evaluates an expression eagerly, in pull mode.
A SequenceEvaluator that evaluates an expression eagerly, in push mode.
This class is an implementation of XPathContext used when evaluating constant sub-expressions at compile time.
Internal class to represent the data associated with a transition: the element that triggers the transition, and the new state that results from the transition.
 
Special singular Term identifying a transition to be used when the maxOccurs value of a counting state is reached.
This class is at the heart of the mechanism for elaborating expressions.
A Container representing an element node.
This class supports the XSLT element-available function.
An instruction that creates an element node.
ElementCreationDetails is a package of information and callbacks designed to parameterize the element construction process, to allow maximum use of common code for direct interpreted evaluation, elaborated evaluation, streamed evaluation, etc; supporting the variations that exist between computed element constructors, fixed element constructors, and shallow copy.
Generate streaming code for an xsl:element instruction.
This event feed supports instructions that create a document or element node.
The object represents an element declaration in the schema.
ElementImpl implements an element node in the Linked tree model.
This is a filter that can be added to a pull pipeline to remember element names so that they are available immediately after the END_ELEMENT event is notified
This class is an implementation of the DOM Element class that wraps a Saxon NodeInfo representation of an element node.
A reference to an element declaration within the content model of a complex type.
This class represents an <any> element in the schema.
Emitter: This abstract class defines methods that must be implemented by components that format SAXON output.
Implementation of the fn:empty function
An implementation of AtomicSequence that contains no items.
An implementation of AttributeMap representing an empty AttributeMap
A character class represents a set of characters for regex matching purposes.
This class is a filter that is used to validate that an element has empty content.
A Comparer that modifies a base comparer by sorting empty key values and NaN values last (greatest), as opposed to the default which sorts them first.
An iterator over a zero-length sequence of integers
EmptyIterator: an iterator over an empty sequence.
An EmptySequence object represents a sequence containing no members.
This class is an implementation of the JAXP Source interface.
Streaming code for an fn:empty() function call
This class performs part of the processing in "constructing simple content": it takes an input sequence and eliminates empty text nodes into one.
Elaborator for an empty text node remove expression - inserted into a pipeline for node construction
Streamed evaluation of an EmptyTextNodeRemover expression.
A zero-length Unicode string
This class supports the function fn:encode-for-uri()
Utility class to detect the encoding of a stream by examining the initial bytes
Implements the fn:ends-with() function, with the collation already fixed
A subclass of Configuration that defines a processor with Saxon-EE capabilities.
The is the JAXP TransformerFactory implementation for the enterprise edition of Saxon.
An implementation of the JAXP XPath Factory that creates an enterprise configuration.
An implementation of the SAX EntityResolver2 interface implemented by calling a supplied ResourceResolver
This class validates that elements and attributes of type ENTITY or ENTITIES have values are declared in the DOCTYPE declaration of the instance document as unparsed entities.
 
Represents a single enumeration facet defined on a simple type.
Represents the set of enumeration values defined on a single simple type, This is a "virtual" facet that combines all the enumeration facets in one simple type definition.
Proposed extension for XPath 4.0: an enumeration type is a way of defining a subtype of xs:string, with a defined set of permitted values, without recourse to a schema or schema-awareness.
 
A couple of utility methods for handling EnumSet objects.
Implement the XPath 3.0 fn:environment-variable() function
This interface defines a Saxon plug-in used to resolve calls on the XPath 3.0 functions available-environment-variables() and environment-variable().
This class implements the saxon:EQName extension function.
A comparer for comparing two atomic values where (a) equals is defined, and is implemented using the Java equals() method, and (b) ordering is not defined, and results in a dynamic error.
Interface representing objects used to perform equality matching.
A PatternOptimizer is an agent responsible for optimizing a particular class of patterns.
This class is instantiated to build a DOMINO tree, taking a DOM Document as input; its task is to add the indexing information.
Class containing utility methods for handling error messages
Implement XPath function fn:error()
 
Error expression: this expression is generated when the supplied expression cannot be parsed, and the containing element enables forwards-compatible processing.
A SequenceIterator that throws an exception as soon as its next() method is called.
The ErrorReporter is a generic functional interface for reporting errors and warnings.
A bridging class that allows errors in an XSLT Transformation, or in a Query, to be reported to a JAXP ErrorListener.
This class has a singleton instance which represents the XML Schema 1.1 built-in type xs:error.
This class supports the function fn:escape-html-uri()
The saxon:escape-NCName function takes an arbitrary string and converts it to an NCName.
This class implements the saxon:eval() extension function
This class implements the saxon:evaluate() extension function
Inner class PreparedExpression represents a compiled XPath expression together with the standard variables $p1 ..
An EvaluateInstr is the compiled form of an xsl:evaluate instruction
This filter sometimes gets inserted into a serialization pipeline when running under an evaluation license: it's a deterrent to using the evaluation version for production
Constants for different mechanisms of expression evaluation
An event is an object representing one of the events that can be passed to a receiver: for example, a startElement, endElement, characters, or comment event.
Event representing an arbitrary item being sent to the event stream in composed form.
Event representing a comment node
Event representing end of document
Event representing the end of an element
Event representing a processing instruction node
Event representing start of document
Event representing the start of an element (including attributes or namespaces)
Event representing a text node
An EventBuffer is a receiver of events that records the events in memory for subsequent replay.
An EventMonitor is a filter that passes all events down the pipeline unchanged, keeping a note of whether any data has passed through the filter.
An implementation of the JAXP Source class that supplies a document in the form of a stream of push events sent to a Receiver
This class implements the function fn:every(), which is a proposed function for XPath 4.0
A pattern formed as the difference of two other patterns
A compiled stylesheet or a query in executable form.
An ExecutableFunctionLibrary is a function library that contains definitions of functions for use at run-time.
ItemFeed implementation supporting the fn:exists(), fn:empty(), and fn:count() function
Implementation of the fn:exists function
Streaming code for an fn:exists() function call
Implements the fn:expanded-QName() function proposed for 4.0
An ExpandedStreamResult is similar to a StreamResult, and is created from a StreamResult.
Implementation of extension functions in the EXPath Binary package, see http://expath.org/spec/binary
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Implementation of the file:base-dir function in the EXPath file library.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
This class provides support to the XX (xslt-in-xslt) compiler.
This class represents a resource collection containing an explicitly enumerated set of resources
Represents an explicitTimezone facet on a schema-defined simple type derived from date, time, dateTime, gYear, gYearMonth, gMonth, gMonthDay, or gDay
An export agent performs the job of exporting an expression to a SEF file.
Interface supported by an XPath expression.
General action class which can be used to process all nodes on an expression tree
An ExpressionContext represents the context for an XPath expression written in the stylesheet.
This class implements the saxon:expression() extension function.
Abstraction representing any class that can act as the container for an expression: either an Operand of a parent expression, or a top-level construct such as a function or template or XQuery expression
This class handles the display of an abstract expression tree in an XML format with some slight resemblance to XQueryX
 
This class handles export of packages for SaxonJS 2+ by converting the XML representation of SEF files to a JSON representation, at the level of emitting events.
This class, ExpressionTool, contains a number of useful static methods for manipulating expressions.
The ExpressionVisitor supports the various phases of processing of an expression tree which require a recursive walk of the tree structure visiting each node in turn.
Implementation of the exslt-common function library.
Implement exslt:node-set
Implement exslt:object-type
Interface ExtensionElementCreator.
Interface ExtensionElementFactory.
This is an interface for simple external/extension functions.
This abstract class is provided to allow user-written extension functions to be implemented with the full capabilities of functions that are an intrinsic part of the Saxon product.
This abstract class is provided to allow user-written extension functions to be implemented with the full capabilities of functions that are an intrinsic part of the Saxon product.
This is a marker interface representing an abstract superclass of JavaExtensionFunctionFactory and DotNetExtensionFunctionFactory.
Abstract class representing an extension instruction
This interface must be implemented by any third-party object model that can be wrapped with a wrapper that implements the Saxon Object Model (the NodeInfo interface).
This class represents the type of an external object returned by an extension function, or supplied as an external variable/parameter.
Represents an XML Schema Facet.
Represents the values of an accumulator whose evaluation has failed.
FailedResource represents an item in a collection that could not be processed because of some kind of error
The built-in rule set introduced in XSLT 3.0, which raises an error when there is no user-supplied template rule that matches a node.
The FallbackElaborator performs elaboration of expressions for which no more specific elaborator is available.
Feature defines a set of constants, representing the details of Saxon configuration options which can be supplied to the Saxon method Configuration.setProperty(), and to other interfaces
FeatureCode defines a set of integer constants, representing unique identifiers for the features that can be configured.
 
 
FeatureKeys defines a set of constants, representing the names of Saxon configuration options which can be supplied to the Saxon implementations of the JAXP interfaces TransformerFactory, SchemaFactory, Validator, and ValidationHandler, and to other interfaces such as the s9api Processor
An expression that can be evaluated in streaming mode is represented at compile time by a list of FeedMaker objects.
 
 
An ItemFeed that captures all written events in a buffer for subsequent replay.
A FieldChecker is instantiated when a field in an identity constraint is matched; it receives notification of all events until the end of the element (or attribute) that matched the selector.
The selector of an IdentityConstraint
A FieldWatch is a class that is looking for nodes that match a field selector within a uniqueness or key constraint.
A FilterExpression contains a base expression and a filter predicate, which may be an integer expression (positional filter), or a boolean expression (qualifier)
Elaborator for a filter expression
An iterator for a filter expression in which the predicate is capable of evaluating as a number (in which case it needs to be compared with the context position, rather than being converted to a boolean)
An iterator for a filter expression where it is known that the filter value will not be numeric, and can therefore be evaluated directly as a boolean
Generate streaming code for a filter expression (when not part of a Watch).
Factory class to create a ProxyReceiver which filters events on a push pipeline
This class implements the function fn:filter(), which is a standard function in XQuery 3.0
Generate streaming code for the fn:filter function.
Handle streaming for calls to user-defined functions with streamability="filter"
FilterImpl is an XMLFilter (a SAX2 filter) that performs a transformation taking a SAX stream as input and producing a SAX stream as output.
A subclass of StreamingAdjunct used for expressions that have a sequence-valued operand with usage transmission.
This class selects a subset of the items, nodes, or events selected by some supplying expression.
Interface defining the filter function, to be implemented by the caller
 
An implementation of Filter that accepts lambda expressions (C# delegates)
Three possible results of the Filter#matches operation
A FilterIterator filters an input sequence using a filter expression.
A QName triple (prefix, URI, local) with the additional ability to hold an integer fingerprint.
Class representing a finite state machine, as a collection of states with transitions between them.
 
A FirstItemExpression returns the first item in the sequence returned by a given base expression
An elaborator for a "first-item" expression, typically written as X[1] or as head(X).
Generate streaming code for a first item expression (when not part of a Watch).
An instruction derived from an xsl:attribute element in stylesheet, or from an attribute constructor in XQuery.
An instruction that creates an element node whose name is known statically.
Elaborator for a FixedElement (literal result element) expression.
A Fleeting node (that is a transient node in a streamed document) that represents a document node
Represents an element node available transiently within a streamed document
A FleetingNode is a node that exists transiently in the course of streaming processing.
A streamed document or element node.
This is a utility class that handles formatting of numbers as strings.
A numeric (single precision floating point) value
This class implements the fn:floor() function
 
This class represents a FLWOR expression, evaluated using tuple streams
An iterator that maintains the values of position() and current(), typically implemented as a wrapper over an iterator which does not maintain these values itself.
An iterator that maintains the values of position() and current(), as a wrapper over an iterator which does not maintain these values itself.
 
Implementation of aggregate functions such as sum() and avg() that supply a fold() function.
This class implements the function fn:fold-left(), which is a standard function in XPath 3.0
 
This class implements the function fn:fold-right(), which is a standard function in XQuery 1.1
Streaming code for functions implemented as fold operations.
This class implements the function fn:foot(), which is proposed as a standard function in XPath 4.0
A "for" clause in a FLWOR expression
This class represents the tuple stream returned by a "for" clause in a FLWOR expression
This class implements the changes to the tuple stream effected by a "for" clause in a FLWOR expression where "allowing empty" is specified
This class implements the changes to the tuple stream effected by a "for" clause in a FLWOR expression
This class implements the changes to the tuple stream effected by a "for" clause in a FLWOR expression
Handler for xsl:for-each elements in a stylesheet.
 
This watch implements xsl:for-each in streaming mode.
Compile an xsl:for-each instruction to streaming code.
This class implements the function fn:for-each() (formerly fn:map), which is a standard function in XQuery 3.0
Handler for xsl:for-each-group elements in stylesheet.
 
Compile an xsl:for-each-group instruction to streaming code.
This watch implements xsl:for-each-group in streaming mode, in cases where the population is being forked (using group-by), and where the population is not grounded.
This watch implements xsl:for-each-group in streaming mode, in cases where the population is being partitioned (that is, group-adjacent, group-starting-with, and group-ending-with), and where the population is not grounded.
This class implements the function fn:for-each-pair() (formerly fn:map-pairs()), which is a standard function in XQuery 3.0
A ForExpression maps an expression over a sequence.
An elaborator for a "for" expression, typically written as {for $x in SEQ return R}.
The MappingAction represents the action to be taken for each item in the source sequence.
Streaming code to implement a "for" expression
 
This class implements an xsl:fork expression.
Streaming code to implement an xsl:fork expression
Implement the format-date(), format-time(), and format-dateTime() functions in XSLT 2.0 and XQuery 1.1.
 
Implementation of format-number() function.
Inner class to represent one sub-picture (the negative or positive subpicture)
Represents the fraction-digits facet in a simple type restriction
Interface to a user-supplied class that handles XQuery annotation assertions in a particular namespace.
Implementation of the saxon:function-annotations() extension function.
This class implements the function function-arity(), which is a standard function in XPath 3.0
This class implements the XSLT function-available functions.
Abstract superclass for calls to system-defined and user-defined functions
 
A FunctionDefinition represents the declaration of a user-defined function in XQuery or XSLT; in 4.0 a function definition has an arity range.
XDM 3.0 introduces a third kind of item, beyond nodes and atomic values: the function.
An ItemType representing the type of a function item (subclasses are used for maps and arrays)
A FunctionLibrary handles the binding of function calls in XPath (or XQuery) expressions.
A FunctionLibraryList is a list of FunctionLibraries.
A FunctionLiteral is a wrapper around a FunctionItem; it is an expression, whose value is the function that it wraps.
This class supports the function-lookup() function in XPath 3.0.
 
This class implements the function function-name(), which is a standard function in XPath 3.0
An FunctionSequenceCoercer is an expression that performs function coercion on a sequence of function items: it takes a sequence of supplied items as input, and wraps each one in a CoercedFunction value, which dynamically converts the supplied arguments to the required type, and converts the result in the opposite direction, or throws a type error if conversion is not possible.
 
Enumeration class giving the different streamability categories defined for stylesheet functions in XSLT 3.0
Abstract superclass for the primitive types containing date components: xs:date, xs:gYear, xs:gYearMonth, xs:gMonth, xs:gMonthDay, xs:gDay
 
 
Implementation of the xs:gDay data type
GeneralComparison: a boolean expression that compares two expressions for equals, not-equals, greater-than or less-than.
 
Elaborator for a general comparison expression such as (A = B).
GeneralComparison10: a boolean expression that compares two expressions for equals, not-equals, greater-than or less-than.
The class GeneralComparison20 specializes GeneralComparison for the case where the comparison is done with 2.0 semantics (i.e.
Watch factory class for a general comparison
This class is used when a streaming template requests a general comparison with one operand being pushed from the streamed input document, and the other being evaluated in pull mode.
This class is used when a streaming template requests a general comparison with one operand being pushed from the streamed input document, and the other being evaluated in pull mode; used when the operator is "!=" which means we only need to remember one value (the result is true as soon as we find two values that differ).
This class is used when a streaming template requests a general comparison with one operand being pushed from the streamed input document, and the other being evaluated in pull mode.
Given an expression, this characteristic evaluates the set of hash keys corresponding to the string values of the items selected by that expression
This class provides an implementation of the GeneralComparison "=" operator, which deals efficiently with comparing two sequences.
Elaborator for a general comparison expression such as (A = B).
A GeneralNodePattern represents a pattern which, because of the presence of positional predicates or otherwise, can only be evaluated "the hard way", by evaluating the equivalent expression with successive ancestors of the tested node as context item.
A PatternOptimizer is an agent responsible for optimizing a particular class of patterns.
A GeneralPositionalPattern is a pattern of the form A[P] where A is an axis expression using the child axis and P is an expression that depends on the position.
This class supports the generate-id() function with one argument
 
An AtomicComparer used for comparing atomic values of arbitrary item types.
An AtomicComparisonFunction compares two atomic values to return a result of true or false.
A generic (model-independent) implementation of the TreeInfo interface, suitable for use with all tree models where the object representing the document node does not itself act as the TreeInfo implementation
The Genre of an item is the top-level classification of its item type: one of Atomic, Node, Function, Map, Array, or External
A Gizmo is a simple tool for performing a particular easily specified transformation on an XML document, for example deleting or renaming all the elements with a particular name.
Information about the requirements placed by a query or stylesheet on the global context item: whether it is mandatory or optional, what its type must be, and whether it has a default value.
This class is responsible for extracting global variables from subexpressions within a function or template
A Comparer used for comparing nodes in document order.
The compiled form of a global xsl:param element in an XSLT stylesheet or an external variable declared in the prolog of a Query.
A GlobalParameterSet is a set of parameters supplied when invoking a stylesheet or query.
A compiled global variable in a stylesheet or query.
This interface provides access to a collection of global variables.
A reference to a global variable
Elaborator for a global variable reference, for example $globalVar.
Implementation of the xs:gYear data type
Implementation of the xs:gMonth data type
An GroundedItemFeed is an ItemFeed in which decomposed document and element nodes (that is, start|end Document|Element events) are not accepted, and parentless leaf nodes supplied using methods such as GroundedItemFeed.characters(net.sf.saxon.str.UnicodeString, net.sf.saxon.s9api.Location, int) or Outputter.attribute(NodeName, SimpleType, String, Location, int) are converted into calls on ItemFeed.append(Item) supplying an Orphan item.
This interface is an extension to the SequenceIterator interface; it represents a SequenceIterator that is based on an in-memory representation of a sequence, and that is therefore capable of returning a Sequence containing all the items in the sequence.
A value that exists in memory and that can be directly addressed
A class that wraps a GroundedValue as a Java Iterable
A GroupAdjacentIterator iterates over a sequence of groups defined by xsl:for-each-group group-adjacent="x".
This class implements GroupingFeed when the group-adjacent option is used.
This feed supports xsl:for-each-group in streaming mode.
A GroupBreakingIterator iterates over a sequence of groups defined by xsl:for-each-group break-when="x".
This class represents an "group by" clause in a FLWOR expression
Inner class representing the contents of a tuple from the pre-grouping tuple stream; a set of such objects consitutes a group.
Inner class representing a tuple comparison key: that is, an arbitrary object whose equals() and hashCode() methods can be used to test whether two tuples have equivalent grouping keys
Represents the tuple stream delivered by an "group by" clause.
Represents the tuple stream delivered by an "group by" clause.
A GroupByIterator iterates over a sequence of groups defined by xsl:for-each-group group-by="x".
A GroupEndingIterator iterates over a sequence of groups defined by xsl:for-each-group group-ending-with="x".
This class implements GroupingFeed when the group-ending-with option is used.
A GroupIterator is an iterator that iterates over a sequence of groups.
A GroupMatchingIterator contains code shared between GroupStartingIterator and GroupEndingIterator
This class supports the extension function saxon:group-starting.
A GroupStartingIterator iterates over a sequence of groups defined by xsl:for-each-group group-starting-with="x".
This class implements GroupingFeed when the group-starting-with option is used.
This class is a specialization of ObjectToBeSorted for use when the sequence being sorted is a sequence of groups.
Implementation of the xs:gYearMonth data type
Implementation of the xs:gYear data type
This class implements the function fn:has-children($node), which is a standard function in XPath 3.0
An immutable map.
This class implements the function fn:head(), which is a standard function in XPath 3.0
This emitter implements output method saxon:hexBinary.
A value of type xs:hexBinary
A class that represents a character as a hexadecimal character reference and writes the result to a supplied Writer
This class implements the saxon:highest() and saxon:lowest() extension functions.
This class implements the saxon:highest() and saxon:lowest() extension functions.
The History object is used to avoid backtracking too far.
This class is an expression that does a run-time check of the result of a "/" expression to ensure that (a) the results consists entirely of atomic values and function items, or entirely of nodes, and (b) if the results are nodes, then they are deduplicated and sorted into document order.
Elaborator for a homogeneity checker, which checks that the items in a sequence are either all nodes, or all non-nodes.
An iterator that returns the same items as its base iterator, checking to see that they are either all nodes, or all non-nodes; if they are all nodes, it delivers them in document order.
Identifies a host language in which XPath expressions appear.
This class generates HTML 4.0 output
This class generates HTML 5.0 output
A collating sequence that compares strings according to the HTML5 rules for case-blind matching.
This class generates HTML output
A class that represents a character as a decimal character reference and writes the result to a supplied Writer.
HTMLIndenter: This ProxyReceiver indents HTML elements, by adding whitespace character data where appropriate.
HTMLIndenter with extra functionality used by Saxon-PE and Saxon-EE
A simple class for testing membership of a fixed set of case-insensitive ASCII strings.
This class is used as a filter on the serialization pipeline; it performs the function of escaping URI-valued attributes in HTML
Atomic types are the intersection of XPath item types and XSD simple types, and use multiple inheritance to inherit methods representing the characteristics of both these kinds.
Holds the values of an accumulator function for one non-streamed document
Marker interface representing a bytecode generation service
Class to report whether ICU features are loaded.
A numberer for German using the ICU features, which supports variable ordinal suffixing, for example '-en', '-es'
A numberer for English, using the ICU features, which produces space-separated word numbers, for example "Twenty Two" rather than the ICU default, which is hyphen-separated: "Twenty-Two".
A numberer using the ICU features, used principally for formatting numbers as words and day/month names
 
The IdentityComparable class provides a way to compare objects for strong equality.
IdentityComparison: a boolean expression that compares two nodes for equals, not-equals, greater-than or less-than based on identity and document ordering
Elaborator for an identity comparison (operators is, <<, and >> )
The base class for the XML Schema Identity Constraints (key, keyref, unique).
A reference to an identity constraint
The field selector for an IdentityConstraint
Implementation of the fn:identity function proposed for 4.0
The selector of an IdentityConstraint
Saxon implementation of the JAXP IdentityTransformer.
IdentityTransformerHandler implements the javax.xml.transform.sax.TransformerHandler interface.
IDFilter is a ProxyReceiver that extracts the subtree of a document rooted at the element with a given ID value.
 
This class validates that ID elements and attributes have unique values and that IDREF and IDREFS elements and attributes refer to an ID in the same document.
Interface to a class used to perform dynamic loading of classes such as user-hook implementations, as well as product-supplied resources like stylesheets and DTDs.
A whitespace stripping rule that strips whitespace text node children from all elements having an element-only content model, regardless of the value of the xml:space attribute
The IgnorableWhitespaceStripper removes whitespace text nodes belonging to elements whose schema-defined type defines element-only content
Implementation of ArrayItem backed by a persistent immutable array, so that operations that "update" the array do not have to copy the whole array
 
An immutable list implementation that only supports sequential traversal using an iterator, prepending an item to the start, and extraction of the head()/tail() of the list.
 
This implementation of FunctionLibrary contains all the functions imported into a Query Module.
This class implements an AxisIterator by providing a start item, and a function that selects the next item as a function of the previous item.
This class provides a compressed representation of a string used to represent indentation: specifically, an integer number of newlines followed by an integer number of spaces.
An IndependentContext provides a context for parsing an XPath expression appearing in a context other than a stylesheet.
This class supports the extension function saxon:index, which returns an indexed sequence
An IndexedFilterExpression contains a base expression and a filter predicate.
This class replicates functionality that is available in a Java Stack, but not in a C# Stack, for example the ability to access elements by direct index (0-based, counting from the bottom of the stack).
A representation of a (sequence) value that allows the construction of one or more indexes to provide rapid access to the items in the sequence.
Evaluator for a variable that needs to be indexed, because the optimizer has identified that it will contain a sequence that is accessed using predicates based on the content Note, indexing is only used in Saxon-EE; the implementation in Saxon-HE is a dummy.
The XPath 2.0 index-of() function, with the collation already known
Generate streaming code for the index-of() function.
The saxon:index-where() or fn:index-where extension function
This interface can be implemented by users (there are no implementations in Saxon itself).
This class implements the function fn:has-children(), which is a standard function in XPath 3.0
Allows the position of an input stream to be marked and reset.
Implementation of the saxon:in-scope-namespaces extension function.
This class implements the XPath 2.0 function fn:in-scope-prefixes()
A pending update action representing the effect of an insert expression
A pending update action representing the insert attribute action.
The XPath 2.0 insert-before() function
Insertion iterator.
Implement streaming of insert-before instruction.
An insert expression in XQuery Update
This class performs in-situ validation of a tree represented in memory as a NodeInfo object.
Abstract superclass for constructs that have operand usage "inspection" on their primary (sequence-valued) operand
Generate streaming code for an "instance of" expression
InstanceOf Expression: implements "Expr instance of data-type"
Elaborator for an instance of expression
Interface representing a factory class for instantiating instances of a specific class
Abstract superclass for all instructions in the compiled stylesheet.
Interface implemented by instructions that contain a sequence constructor evaluated using the rules for "constructing complex content": for example, xsl:element, xsl:copy, xsl:document, xsl:result-document
Internal class used for instrumentation purposes.
An integer value: note this is a subtype of decimal in XML Schema, not a primitive type.
Set of int values.
Iterator class: iterate over an array of integers
Set of int values.
An immutable integer set containing all int values except those in an excluded set
This class represents a sequence of integers, for example 1 by 5 to 50.
An IntegerRangeTest is an expression of the form E = N to M where N and M are both expressions of type integer.
 
This class represents the XPath built-in type xs:integer.
Expression representing a call to a user-written extension function implemented as a subtype of ExtensionFunctionCall
This class checks that NodeInfo objects returned by an extension function were created under the right Configuration
A library of integrated function calls, that is, user-written extension functions implemented as instances of the class ExtensionFunctionDefinition.
An immutable integer set containing no integers
A PatternOptimizer is an agent responsible for optimizing a particular class of patterns.
An enumeration representing a nodeset that is an intersection of two other NodeSets.
A pattern formed as the difference of two other patterns
The proposed XPath 4.0 intersperse() function
An IntPredicate formed as the difference of two other predicates: it matches an integer if the first operand matches the integer and the second does not
A hash table that maps int keys to Object values.
Set of int values.
An IntPredicate formed as the union of two other predicates: it matches an integer if either of the operands matches the integer
An iterator over a sequence of unboxed int values.
This class allows an integer predicate (a boolean function of an integer) to be written as a lambda expression, in a way that works both in Java and C#.
This interface represents an integer predicate (that is, a boolean function of an integer).
Set of int values.
Set of int values.
An iterator over a single integer repeated a fixed number of times
A set of integers represented as int values
A character class represents a set of characters for regex matching purposes.
An implementation of IntPredicate that tests whether a given integer is a member of some IntSet
An iterator over a single integer
An immutable integer set containing a single integer
An iterator over a sequence of integers with regular steps, e.g.
An implementation of IntToIntMap that relies on serial searching, and is therefore optimized for very small map sizes
A hash table that maps int keys to int values.
Interface defining a map from integers to integers
An IntPredicate formed as the union of two other predicates: it matches an integer if either of the operands matches the integer
An immutable integer set containing every integer
An IntPredicate that matches a single specific integer
An Invalidity is a validation error, that is, a failure of the instance document to conform to the schema being used for validation.
Interface for reporting validation errors found during validation of an instance document against a schema.
Interface for reporting validation errors found during validation of an instance document against a schema.
Interface for reporting validation errors found during validation of an instance document against a schema.
This class InvalidityReportGenerator extends the standard error handler for errors found during validation of an instance document against a schema, used if user specifies -report option on validate.
This class InvalidityReportGenerator extends the standard error handler for errors found during validation of an instance document against a schema, used if user specifies -report option on validate.
A character class represents a set of characters for regex matching purposes.
This class represents an expression that has been "inverted" (in the Jackson sense) so that its execution is push-driven, that is, driven by events from the streamed document.
A PushAction is a collection of data that together represents the strategy for how an expression should be evaluated in push mode.
 
This class supports the functions encode-for-uri() and iri-to-uri()
Handles grouping separators when formatting a number in cases where the grouping separators are not at regular intervals
This class implements the saxon:is-idref() extension function, which is specially-recognized by the system because calls are generated by the optimizer.
 
A position() eq last() expression, generated by the optimizer.
Elaborator for an "isLast" expression, equivalent to position() = last() or position() != last()
Implements the saxon:is-NaN() function.
This class defines properties of the ISO-8859-1 character set
An Item is an object that can occur as a member of a sequence.
A ItemChecker implements the item type checking of "treat as": that is, it returns the supplied sequence, checking that all its items are of the correct type.
Elaborator for a treat as expression, which is usually system-generated by the type checking phase of the compiler
Streaming code for an item checker
A Feed to go on the streaming pipeline that checks the item type of the items in the sequence represented by the events passing down the pipeline.
ItemCheckingIterator applies a supplied function to each item in a sequence.
A FunctionalInterface for any method that processes individual items, and which may generate exceptions.
An ItemElaborator is an abstract superclass for use by expressions that deliver zero or one items as their result.
Interface implemented by classes that evaluate an expression to deliver a single item
An ItemFeed evaluates an expression in "composed push" mode.
ItemMapper is an implementation of ItemMappingFunction that wraps a predicate function typically supplied as a lambda expression: unlike a standard Predicate, however, the test is allowed to throw an XPathException.
 
ItemMapper is an implementation of ItemMappingFunction that wraps a function typically supplied as a lambda expression.
 
A Feed which applies an ItemMappingFunction to each supplied item.
ItemMappingFunction is an interface that must be satisfied by an object passed to a ItemMappingIterator.
ItemMappingIterator applies a mapping function to each item in a sequence.
An interface satisfied by all instructions that invoke templates: apply-templates, call-template.
Generate streaming code for the saxon:items-after function.
Implements the XPath 4.0 items-at() function
Generate streaming code for the saxon:items-before function.
This class supports the two extension functions saxon:items-until and saxon:items-before, also available as experimental XPath 4.0 functions in the fn namespace.
 
 
Generate streaming code for the saxon:items-from function.
This class supports the two extension functions saxon:items-from and saxon:items-after, also available as experimental XPath 4.0 functions in the fn namespace.
 
 
Generate streaming code for the saxon:items-until function.
An item type, as defined in the XPath/XQuery specifications.
ItemType is an interface that allows testing of whether an Item conforms to an expected type.
ItemType representing a built-in atomic type
A mapping function for use in conjunction with an ItemMappingIterator that checks that all the items in a sequence are instances of a given item type
This class is used for creating ItemType objects.
An ItemTypePattern is a pattern that consists simply of an ItemType; although a node test is an item type, this class is used only for non-node item types, such as atomic types, map types, array types etc.
Extension of the ItemType interface implemented by some item types, to provide a cache of SequenceType objects based on this item type, with different occurrence indicators.
A class representing an item together with its merge keys and the name of the merge source object from which it derived, suitable for encapsulation as an ObjectValue.
This watch implements xsl:iterate in streaming mode.
Implement streaming code for xsl:iterate
An IterateInstr is the compiled form of an xsl:iterate instruction
 
This class implements the function fn:iterate-while(), which is a proposed function for XPath 4.0
Class IteratorWrapper - provides a SequenceIterator over a Java Iterator.
The IXSL3FunctionSet represents additions to the set of Saxon vendor-supplied extension functions that are available from SaxonJS 3.
Class IXSLElementFactory.
The IXSLFunctionSet represents additions to the set of Saxon vendor-supplied extension functions that are available on SaxonJS.
 
 
 
 
Most of the functions in this library will only run in SaxonJS, some of them only in the browser
Handler for ixsl:promise elements in stylesheet.
Handler for ixsl:remove-attribute elements in stylesheet.
Handler for ixsl:remove-property elements in stylesheet.
Handler for ixsl:schedule-action elements in stylesheet.
Handler for ixsl:set-attribute elements in stylesheet.
Handler for ixsl:set-property elements in stylesheet.
Handler for ixsl:set-style elements in stylesheet.
A JarCollection represents a collection of resources held in a JAR or ZIP archive, accessed typically using a URI using the (Java-defined) "jar" URI scheme, or simply a "file" URI where the target file is a JAR or ZIP file.
This class establishes properties of a character set that is known to the Java VM but not specifically known to Saxon.
A JavaCollationFactory allows a Collation to be created given a set of properties that the collation should have.
This class acts as a container for an extension function defined to call a method in a user-defined class.
This class acts as a factory for creating expressions that call Java extension functions.
The JavaExtensionLibrary is a FunctionLibrary that binds XPath function calls to calls on Java methods (or constructors, or fields).
This class represents the type of an external Java object returned by an extension function, or supplied as an external variable/parameter.
Default factory for number/date localizers for the Java platform
Implementation of the Platform class containing methods specific to the Java platform (as distinct from .NET).
Implementation of the Platform class containing methods specific to the Java platform (as distinct from .NET) for Saxon-EE.
Implementation of the Platform class containing methods specific to the Java platform (as distinct from .NET) for Saxon-PE and Saxon-EE.
An implementation of RegularExpression that calls the JDK regular expression library directly.
 
This class represents a variable in an XPath expression compiled using the JAXP XPath API.
 
A JAXPXPathStaticContext provides a context for parsing an XPath expression in a context other than a stylesheet.
The tree information for a tree acting as a wrapper for a JDOM2 Document.
A node in the XML parse tree representing an XML element, character content, or attribute.
This interface must be implemented by any third-party object model that can be wrapped with a wrapper that implements the Saxon Object Model (the NodeInfo interface).
Variant of command line net.sf.saxon.Transform do build the source document in JDOM2 and then proceed with the transformation.
Variant of command line net.sf.saxon.Transform do build the source document in JDOM2 and then proceed with the transformation.
JDOMWriter is a Receiver that constructs a JDOM2 document from the stream of events
Handles terminal interaction for Gizmo using the JLine2 library: https://github.com/jline/jline2
 
This class together with its embedded subclasses handles conversion from Java values to XPath values.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Class JRegexIterator - provides an iterator over matched and unmatched substrings.
The JSFunctionLibrary is a FunctionLibrary that binds XPath function calls to calls on JavaScript methods.
A JsonBuilder is used to parse JSON documents
Implements the json-to-xml function defined in XSLT 3.0.
This class implements the back-end text generation of the JSON serialization method.
Default handler class for accepting the result from parsing JSON strings
Event handler for the JSON parser which constructs a structure of maps and arrays representing the content of the JSON text.
Handler to generate an XML representation of JSON from a series of events
Parser for JSON, which notifies parsing events to a JsonHandler
 
A Receiver which receives a stream of XML events using the vocabulary defined for the XML representation of JSON in XSLT 3.0, and which generates the corresponding JSON text as a string
A Resource (that is, an item in a collection) holding JSON content
This class implements the JSON serialization method defined in XSLT+XQuery Serialization 3.1.
Implements the json-to-xml function defined in XSLT 3.0.
A JTokenIterator is an iterator over the strings that result from tokenizing a string using a regular expression, in this case a regular expression evaluated using the JDK regex engine
A class that represents the XML Schema Identity Constraint: Key.
Corresponds to a single xsl:key declaration.
A set of xsl:key definitions in a stylesheet that share the same name
 
A key index is an index maintained to support xsl:key key definitions, including both user-defined keys and keys added by the optimizer.
 
KeyManager manages the set of key definitions in a stylesheet, and the indexes associated with these key definitions.
Implementation of the saxon:key-map() extension function.
This class represents an xs:keyRef identity constraint in a schema
This class watches the selector for a key or unique constraint
A key and a corresponding value to be held in a Map.
A generic interface for calling expressions by supplying the values of their subexpressions
 
An implementation of AttributeMap suitable for larger collections of attributes (say, more than five).
The segments (other than the last) have a fixed size of 65536 codepoints, which may use one byte per codepoint, two bytes per codepoint, or three bytes per codepoint, depending on the largest codepoint present in the segment.
A LastItemExpression returns the last item in the sequence returned by a given base expression.
Elaborator for a "last item expression" (typically SEQ[last()])
Extension function to determined the last-modified date of a file
A LastPositionFinder is an interface implemented by any SequenceIterator that is able to return the position of the last item in the sequence.
 
This class performs lax validation on an element.
SequenceEvaluator that evaluates an expression lazily in pull mode; that is, it delivers a LazySequence which defers actual evaluation until the value is actually needed.
A sequence that wraps an iterator, without being materialized.
This class implements the saxon:leading() extension functions.
A LearningEvaluator initially performs lazy incremental evaluation of an expression; but if this proves unproductive, it switches after a while to eager evaluation.
Represents the length facet
Abstract class for the three facets length, minLength, and maxLength.
A "let" clause in a FLWOR expression
Implements the changes to a tuple stream effected by the Let clause in a FLWOR expression
Implements the changes to a tuple stream effected by the Let clause in a FLWOR expression
A LetExpression represents the XQuery construct let $x := expr return expr.
Elaborator for a let expression (either let $x := SELECT return ACTION in XPath, or the equivalent sequence constructor using local xsl:variable declarations in XSLT).
Compiles streaming code to implement a Let expression
Compiles streaming code to implement a Let expression for which the "action" part (the return clause) is consuming
A "Least Frequently Used" cache.
Exception thrown when there are problems with the license file
Line numbers are not held in nodes in the tree, because they are not usually needed.
Monitor construction of a document tree.
The LinkedTreeBuilder class is responsible for taking a stream of Receiver events and constructing a Document tree using the linked tree implementation.
A function item representing a castability test for a list type
A function item representing a constructor function for a list type
Class ListIterator, iterates over a sequence of items held in a Java List.
 
ListIterator.OfAtomic is a subclass of ListIterator where the list always contains atomic values; it therefore implements the AtomicIterator interface.
Interface representing a simple type of variety List
A Literal is an expression whose value is constant: it is a class that implements the Expression interface as a wrapper around a GroundedValue.
Elaborator for a literal.
Streamed evaluation of a literal (not difficult!)
A SequenceEvaluator for literals.
This class represents a literal result element in the style sheet (typically an HTML element to be output).
This class implements the function load-xquery-module(), which is a standard function in XPath 3.1.
Class to hold details of the location of an expression, of an error in a source file, etc.
Binding for local variables and parameters: anything that is allocated a slot on the XPathContext stack frame.
Interface allowing localization modules for different languages to be dynamically loaded
This class supports the local-name() function
 
NodeTest is an interface that enables a test of whether a node has a particular name and type.
A Comparer used for comparing nodes in document order.
The compiled form of an xsl:param element within a template in an XSLT stylesheet.
The Elaborator for this kind of expression
Represents the set of xsl:param elements at the start of an xsl:iterate instruction
 
A class that represents a union type declared locally, for example using the (Saxon-extension) item-type syntax union(a,b,c), or internally in Java code.
Represents the defining occurrence of a variable declared within a FLWOR expression, for example the $p in "for $x at $p in ...".
 
Variable reference: a reference to a local variable.
Elaborator for a local variable reference, for example $var.
Represents a construct that has a meaningful location for use in diagnostics
Saxon interface to represent a location, typically the location of an expression within a query or stylesheet.
A Receiver that can be inserted into an event pipeline to copy location information.
 
Interface to diagnostic event logging mechanism.
A SequenceIterator is used to iterate over a sequence.
This class wraps any sequence iterator, turning it into a lookahead iterator, by looking ahead one item
A lookup expression is an expression of the form A?*, where A must be a map or an array
 
A lookup expression is an expression of the form A?B.
 
Class to handle loop-lifting optimization, that is, extraction of subexpressions appearing within a loop when there is no dependency on the controlling variable of the loop.
This class implements the fn:lower-case() function
 
This class is a SchemaURIResolver implemented as a wrapper around a JAXP LSResourceResolver
Helper class for saxon:send-mail() extension function
Interface representing a factory class for instances of a specific type.
The class ManualGroupIterator represents an iterator that is never repositioned, but can be used to represent the focus in the dynamic context.
ManualIterator: a pseudo-iterator used while streaming.
The class ManualRegexIterator represents an iterator that is never repositioned, but can be used to represent the current regex groups in the dynamic context.
This is a variant of the map:new() or map:merge() function which differs in that duplicate keys are considered an error.
Streaming code to implement an xsl:map instruction or map constructor, where each map entry is allowed to be consuming.
Function signatures (and pointers to implementations) of the functions defined in the map namespace in XPath 3.1
Implementation of the proposed XPath 4.0 function map:build($sequence, $key, $value, $combined) as xs:anyAtomicType) => map(*)
Implementation of the XPath 3.1 function map:contains(Map, key) => boolean
Implementation of the proposed 4.0 function map:entries(Map) => map(*)*
Implementation of the extension function map:entry(key, value) => Map
Implementation of the proposed XPath 4.0 function map:filter(Map, function(*)) => Map
Implementation of the XPath 3.1 function map:find(item()*, key) => array
Implementation of the function map:for-each(Map, Function) => item()*
Implementation of the XPath 3.1 function map:get(Map, key) => value
Implementation of the XPath 3.1 function map:keys(Map) => atomicValue*
Implementation of the function map:merge() => Map From 9.8, map:merge is also used to implement map constructors in XPath and the xsl:map instruction in XSLT.
Implementation of the function map:of-pairs() => Map
Implementation of the proposed 4.0 function map:pair(key, value) => record(key, value)
Implementation of the proposed 4.0 function map:pairs(Map) => record(key, value)*
Implementation of the extension function map:put() => Map
Implementation of the XPath 3.1 function map:remove(Map, key) => value
Implementation of the extension function map:size(map) => integer
Interface supported by different implementations of an XDM map item
MappingFunction is an interface that must be satisfied by an object passed to a MappingIterator.
MappingIterator merges a sequence of sequences into a single flat sequence.
A Java Iterable which applies a mapping function to each item in a supplied Iterable
A Java Iterator which applies a mapping function to each item in an input sequence
The saxon:map-search function, new in Saxon 9.9
An instance of this class represents a specific map item type, for example map(x:integer, element(employee))
Implementation of an internal function map:untyped-contains(Map, key) => boolean, which is like map:contains except that if the supplied key is untyped atomic, it is converted to all the possible types present in the map and returns true if the key after conversion is present.
This class implements the 3-argument matches() function for regular expression matching
 
This class implements extension functions in the http://exslt.org/math namespace.
Abstract class providing functionality common to functions math:sin(), math:cos(), math:sqrt() etc; contains the concrete implementations of these functions as inner subclasses
Implement math:atan2
Implement math:pi
Implement math:pow
Generic superclass for all the arity-1 trig functions
Implements the maxExclusive facet on a simple type
Implements the maxInclusive facet on a simple type
Represents the minLength facet
A MemoClosure represents a value that has not yet been evaluated: the value is represented by an expression, together with saved values of all the context variables that the expression depends on.
A MemoClosureEvaluator is a SequenceEvaluator that evaluates an expression lazily and incrementally; it evaluates new items in the result as and when they are needed.
A user-defined function that is declared as a memo function, meaning that it remembers results of previous calls.
A NodeSurrogate is a value that represents a node; it encapsulates a Java function that can be called to test whether a particular node is the one that it represents.
A Sequence implementation that represents a lazy evaluation of a supplied iterator.
A ProgressiveIterator starts by reading any items already held in the reservoir; when the reservoir is exhausted, it reads further items from the inputIterator, copying them into the reservoir as they are read.
An iterator that groups the result of merging several xsl:merge input streams, identifying groups of adjacent items having the same merge key value
 
Mapping function for items encountered during the merge; the mapping function wraps the merged item and its merge keys into a single composite object
Inner class representing one merge source
Streaming adjunct for the xsl:merge instruction.
 
An iterator representing the sorted merge of two merge inputs, retaining all duplicates.
A Message represents the output of an xsl:message or xsl:assert instruction.
This class implements the saxon:message-count() function which returns the value of message counters at the moment of execution
MessageEmitter is the default Receiver for xsl:message output.
An xsl:message or xsl:assert element in the stylesheet.
A user-written implementation of the MessageListener interface may be registered with the XsltTransformer to receive notification of xsl:message output.
Deprecated.
MessageWarner is a user-selectable receiver for XSLT xsl:message output.
Represents information about a resource, as well as a pointer to the resource itself
The MetaTagAdjuster adds a meta element to the content of the head element, indicating the required content type and encoding; it also removes any existing meta element containing this information
Implements the minExclusive facet on a simple type
This class implements the min() and max() functions, with the collation argument already known.
Concrete subclass to define the fn:max() function
Concrete subclass to define the fn:min() function
Generate streaming code for the min() and max() functions.
Implements the minInclusive facet on a simple type
Represents the minLength facet
This exception occurs when an attempt is made to dereference a reference from one schema component to another, if the target of the reference cannot be found.
This exception occurs when an attempt is made to dereference a reference from one schema component to another, if the target of the reference cannot be found.
A Mode is a collection of rules; the selection of a rule to apply to a given element is determined by a Pattern.
Interface for helper classes used to process all the rules in the Mode
Interface for helper classes used to filter a chain of rules
A version of class Mode that optimizes various aspects of the template patterns, most notably supporting rule preconditions and indexation of unnamed elements.
 
An XML Schema Model Group.
A Model Group Definition: a schema component corresponding to a top-level (named) xs:group element in a schema document.
A reference within the content model of a complex type to a Model Group Definition.
The Mode class for use in Saxon-PE, which may contain additional XSLT3.0 features This is subclassed in Saxon-EE to add optimisation features
A ModuleURIResolver is used when resolving references to query modules.
An iterator over a single object (typically a sub-expression of an expression)
Set of int values.
A feed for an expression that typically accesses the context item but does not consume the input stream.
This watch managers a set of accumulators in streaming mode.
A MultiIndex provides fast access to the items in a sequence.
Iterator over a subset of the items in this IndexedValue, identified by an IntSet holding the positions of the items in the selected subset (zero-based)
An MultipleNodeKindTest is a nodetest that matches nodes belonging to any subset of possible node kinds, for example element and document nodes, or attribute and namespace nodes
This class performs the same role as ContextMappingIterator, but using multiple threads.
This is a thread-safe version of the parent class FocusTrackingIterator.
This instruction represents an xsl:for-each instruction using more than one thread
 
Parallel-processing version of the ItemMappingIterator class, which executes a mapping function for each item in a sequence.
This class defines a number of methods that support the use of multi-threading in Saxon.
Interface representing the document node of a mutable document
An extension of the NodeInfo interface defining a node that can be updated.
This class supports the name() function with one argument
 
The NameChecker performs validation and analysis of XML names.
The runtime object corresponding to a named xsl:template element in the stylesheet.
 
This class attempts to identify a timezone name, given the date (including the time zone offset) and the country.
An implementation of NodeName that gets the name of an existing NodeInfo object.
A NamePool holds a collection of expanded names, each containing a namespace URI, and a local name.
Unchecked Exception raised when some limit in the design of the name pool is exceeded
This class is a filter that passes all Receiver events through unchanged, except that it changes namecodes to allow for the source and the destination using different NamePools.
Represents the binding of a prefix to a URI.
Represents a set of namespace bindings
This class is not instantiated, it exists to hold a set of constants representing known namespaces.
A namespace constructor instruction.
This class bridges between the JAXP 1.3 NamespaceContext interface and Saxon's equivalent NamespaceResolver interface.
Holds a set of namespace bindings as a simple immutable map from prefixes to URIs.
NamespaceDifferencer is a ProxyReceiver responsible for removing duplicate namespace declarations.
This class supports the function namespace-uri-for-prefix()
Holds a set of namespace bindings as a simple immutable map from prefixes to URIs.
This class represents a namespace node; it is used in several tree models.
NamespaceReducer is a ProxyReceiver responsible for removing duplicate namespace declarations.
Abstract class that supports lookup of a lexical QName to get the expanded QName.
This class is a NamespaceResolver that modifies an underyling NamespaceResolver by changing the mapping of the null prefix to be a specified namespace, rather than the one used by the underlying namespace resolver.
NodeTest is an interface that enables a test of whether a node has a particular name and type.
This class represents a URI used as a namespace name.
This class supports the namespace-uri() function
Elaborator for the namespace-uri() function
NodeTest is an interface that enables a test of whether a node has a particular name and type.
NameTestUnion is new in XPath 4.0.
The Navigator class provides helper classes for navigating a tree, irrespective of its implementation
General-purpose implementation of the ancestor and ancestor-or-self axes
AxisFilter is an iterator that applies a NodeTest filter to the nodes returned by an underlying AxisIterator.
A class that delivers the children of a node as a Java Iterable
General-purpose implementation of the descendant and descendant-or-self axes, in terms of the child axis.
EmptyTextFilter is an iterator that applies removes any zero-length text nodes returned by an underlying AxisIterator.
General purpose implementation of the following axis, in terms of the ancestor, child, and following-sibling axes
Helper method to iterate over the preceding axis, or Saxon's internal preceding-or-ancestor axis, by making use of the ancestor, descendant, and preceding-sibling axes.
This interface is implemented by expressions that returns a boolean value, and returns an expression whose result is the negated boolean value
Negate Expression: implements the unary minus operator.
Elaborator for a negate expression (that is, unary minus)
This class represents a dot-separated sequence of numbers such as 1.12.5, typically used as a software version number.
Implements the saxon:new-attribute() function.
Implements the saxon:new-comment() function.
Implements the saxon:new-text() function.
Implements the saxon:new-text() function.
Streaming code to implement an xsl:map instruction or map constructor, where each map entry is allowed to be consuming.
Implements the saxon:new-namespace() function.
Implements the saxon:new-processing-instruction() function.
Implements the saxon:new-text() function.
Implements a xsl:next-iteration instruction within the body of xsl:iterate
 
Compile a xsl:next-intruction instruction to streaming code.
This class is used when one of the xsl:with-param elements within an xsl:next-iteration of an xsl:iterate consumes the streamed input
An xsl:next-match element in the stylesheet
Watch for an xsl:next-match instruction.
Compile an xsl:next-match expression/instruction to streaming code.
This class supports the nilled() function
This feed suppresses the call on close().
Interface NodeFactory.
A node in the "linked" tree representing any kind of node except a namespace node.
The NodeInfo interface represents a node in Saxon's implementation of the XPath 2.0 data model.
NodeTest is an interface that enables a test of whether a node has a particular name and kind.
Class ListIterator, iterates over a sequence of items held in a Java List.
This interface represents a node name.
This class supports the node-name() function with a single argument
Elaborator for the fn:node-name() function
This class implements the DOM Node interface as a wrapper around a Saxon NodeInfo object.
Interface representing a predicate applied to a node.
A NodeTest that wraps a general Predicate applied to nodes.
A NodeSetPattern is a pattern based on an expression that is evaluated to return a set of nodes; a node matches the pattern if it is a member of this node-set.
A JAXP Source object representing a Saxon NodeInfo.
A NodeTest is a simple kind of pattern that enables a context-free test of whether a node matches a given node kind and name.
A NodeTestPattern is a pattern that consists simply of a NodeTest
Interface defining methods common to the TinyTree and the Domino tree model.
An AxisIterator that wraps a Java Iterator.
Interface to a function that wraps nodes from an external object model in a Saxon NodeInfo representation
This exception class is used when early (compile-time) evaluation of an expression is attempted, and the expression requires knowledge of the current dateTime or implicit timezone.
A whitespace stripping rule that retains all whitespace text nodes
An implementation of NodeName for the common case of a name in no namespace
This is a marker interface: if a URIResolver implements this interface and returns null from its resolve() method, then the standard URI resolver will not be invoked.
A state in the non-determinized finite state machine
This feed is used for the inner loop of a for-each, where the results of multiple iterations need to be concatenated into a single sequence.
This feed is used for the inner loop of a for-each, where the results of multiple iterations need to be concatenated into a single sequence.
Exception indicating that an attribute or namespace node has been written when there is no open element to write it to
Implement the XPath normalize-space() function
 
Implement the XPath normalize-unicode() function (both the 1-argument and 2-argument versions)
A Notation Declaration Schema Component
A set of declared notations (in the sense of XSD xs:notation)
An xs:NOTATION value.
This class supports the XPath functions boolean(), not(), true(), and false()
 
Streaming code for an fn:not() function call
A NullDestination is a Destination that discards all output sent to it.
Implements the XPath fn:number() function when called with one argument.
 
Interface Numberer supports number formatting.
Localization class for Danish.
Class Numberer_de provides localization for format-date() and xsl:number with language = "de" (German)
Numberer class for the English language.
Class Numberer_fr is a number formatter for french.
Class Numberer_frBE is a number formatter for French as used in Belgium.
Class Numberer_he does number formatting for language="he" (Hebrew).
Localization class for Italian
Localization class for Dutch.
Numberer class for the Belgian-Dutch language region.
Numberer class for the Swedish language.
 
Class NumberFormatter defines a method to format a ArrayList of integers as a character string according to a supplied format specification.
This instruction performs the node-counting function of the xsl:number instruction.
This expression performs the formatting part of the logic of the xsl:number instruction It takes as input a sequence of integers, which may either be supplied directly as the value attribute of xsl:number, or may be computed by counting nodes.
A Comparer used for comparing sort keys when data-type="number".
A Comparer used for comparing sort keys when data-type="number".
Given an expression, this characteristic evaluates the set of hash keys corresponding to the string values of the items selected by that expression
A NumericGroupFormatter is responsible for insertion of grouping separators into a formatted number (for example, reformatting "1234" as "1,234").
Singleton class representing the class xs:numeric as defined in XPath 3.1: a union type whose members are xs:double, xs:decimal, and xs:float
NumericValue is an abstract superclass for IntegerValue, DecimalValue, FloatValue, and DoubleValue
This interface is based on the "CommonHandler" concept defined in early drafts of XQJ.
Saxon extension: a lookup expression of the form X?Y where X is a Java external object and Y is a method defined on that object.
 
Extension function saxon:object-map(), which converts an external object to a map
This class represents a member of a sequence that is being sorted.
An XPath value that encapsulates a Java object.
Represents one of the possible occurrence indicators in a SequenceType.
The OnDemandFunctionSet represents a function library where the implementation classes are loaded dynamically on demand.
A sequence containing exactly one item.
Generate streaming code for a consuming xsl:on-empty instruction
A compiled xsl:on-empty instruction.
A value that is a sequence containing one or more items.
Generate streaming code for a consuming xsl:on-non-empty instruction
A compiled xsl:on-non-empty instruction.
A match against a fixed string of any length, within a regular expression
A back-reference in a regular expression
Beginning of Line (^) in a regular expression
Open paren (captured group) within a regular expression
A match of a single character in the input against a set of permitted characters
A choice of several branches within a regular expression
The different varieties of open content for complex types
End of program in a regular expression
End of Line ($) in a regular expression
Information about a sub-expression and its relationship to the parent expression
Defines an operand set comprising an array of operands numbered zero to N.
Interface representing a visitor of the clauses of a FLWOR expression that can process and modify the operands of each clause
Defines the role of a child expression relative to its parent expression.
The usage of an operand defines how the containing expression makes use of the value of the operand, as defined in the XSLT 3.0 specification.
Represents an operation or instruction in the regular expression program.
The ForceProgressIterator is used to protect against non-termination; specifically, iterators that return an infinite number of zero-length matches.
This class implements the function fn:op(), which is a proposed function in XPath 4.0 to return a function that implements a supplied operator
Handle a greedy repetition (with possible min and max) where the size of the repeated unit is fixed.
Match empty string within a regular expression
Handle a reluctant repetition (with possible min and max) where the size of the repeated unit is fixed.
Handle a repetition (with possible min and max) where the size of the repeated unit is variable.
A sequence of multiple pieces in a regular expression
This class performs optimizations that vary between different versions of the Saxon product.
This class performs a number of optimizations that are specific to the Saxon-EE product.
Defines switches that can be used to control which optimizations take place.
A SequenceEvaluator for expressions that return a sequence of zero or one items.
 
This class implements the rules for options parameters, as used in functions such as parse-json, serialize, json-to-XML, map:merge.
Operation that wraps a base operation and traces its execution
Handle a repetition where there is no ambiguity; if the repeated term is matched in the string, then it cannot match anything other than the repeated term.
This class represents an "order by" clause in a FLWOR expression
Represents the tuple stream delivered by an "order by" clause.
Represents the tuple stream delivered by an "order by" clause.
The saxon:order facet on a list type can be used to constrain the list to be in ascending or descending order.
 
Elaborator for an "or" expression (A or B)
This class represents a function invoked using xsl:original from within an xs:override element.
A node (implementing the NodeInfo interface) representing an attribute, text node, comment, processing instruction, or namespace that has no parent (and of course no children).
An Outcome represents the result of a task, which might be success or failure T is the class of the result of the task in the event that it is successful
Expression class that implements the "outer for" clause of XQuery 3.0
An elaborator for a "for" expression, typically written as {for $x in SEQ return R}.
This class implements the function fn:outermost(), which is a standard function in XPath 3.0
Streaming code for an outermost() function call.
OuterNewlineInserter: This ProxyReceiver inserts a newline after any comment or PI child of the document node that precedes the first element child, and before any comment or PI child that follows the first element child.
Outputter: This interface represents a recipient of XML tree-walking (push) events.
An outputter event is an object representing one of the events that can be passed to an Outputter : for example, a startElement, attribute, namespace endElement, characters, or comment event.
Event representing an arbitrary item being sent to the event stream in composed form.
Event representing an attribute node
Event representing a comment node
Event representing end of document
Event representing the end of an element
Event representing a namespace node
Event representing a processing instruction node
Event representing the start of element content
Event representing start of document
Event representing the start of an element (including attributes or namespaces)
Event representing a text node
An EventBuffer is a receiver of events that records the events in memory for subsequent replay.
This interface defines an OutputURIResolver.
This class is an implementation of the ResultDocumentResolver interface that wraps a supplied OutputURIResolver.
Information about a unit of compilation: in XSLT, a package; in XQuery, a module.
Information about a package held in a package library; the package may or may not be loaded in memory
The PackageInspector class is a Receiver that looks at an incoming stylesheet document and extracts the package name and version from the root element; parsing is then abandoned.
A PackageLibrary represents a collection of packages that can be searched, typically to satisfy an xsl:use-package declaration.
Saxon-EE version of PackageLoader
This class reads the XML exported form of a package and reconstructs the package object in memory.
 
 
This class reads the XML exported form of a package and reconstructs the package object in memory.
A class to represent an XSLT package version such as 1.12.5 or 3.0-alpha
A class to handle a set of package version ranges
An iterator over a pair of objects (typically sub-expressions of an expression)
A ParameterSet is a set of parameters supplied when calling a template.
Data-only class to define the keywords used for parameters of built-in functions.
A Parcel is a way of wrapping an arbitrary sequence as a single item.
This class implements the function fn:parcel(), which is a proposed function in XPath 4.0 to wrap a sequence as a single item
Watch factory class for an atomizer
An abstract class to act as a common parent for instructions that create element nodes and document nodes.
ParentNodeImpl is an implementation of a non-leaf node (specifically, an Element node or a Document node)
This class implements the saxon:parse() extension function, which is specially-recognized by the system because it needs access to parts of the static context
Represents a content type as it appears in HTTP headers, parsed to extract two properties: (a) a boolean indicating whether the media type is XML, and (b) the character encoding.
Supports the saxon:parse-html() or fn:parse-html, which parses HTML using nu.validator
This class "tweaks" the output of nu.validator to deliver what the parse-html() function expects.
 
This class implements the function parse-ietf-date(), which is a standard function in XPath 3.1
Implements the 4.0 parse-integer() function.
Implements the parse-json function, as defined in XPath 3.1 The parsing code, and the handling of options is shared with the json-to-xml function.
This class defines options for parsing and/or validating a source document.
This class supports the fn:parse-QName() function, new in 4.0
 
Dummy Parser extension for syntax in XPath that is accepted only in particular product variants.
 
Supports the fn:build-uri function.
 
 
 
This class implements the saxon:parse-XPath() extension function, which is specially-recognized by the system because it needs access to parts of the static context
This expression class implements the operation of currying (or performing partial application) of a function.
Represents a Particle as defined by XML Schema.
Function fn:partition, new in 4.0
Proposed XPath 4.0 function that returns the components of an atomic value as a map (for example, the components of a dateTime, a duration, or a URI).
Implement the fn:path function with one argument
This class sits in a receiver (push) pipeline and maintains the current path.
A PathMap is a description of all the paths followed by an expression.
An arc joining two nodes in the path map.
A node in the path map.
A (mutable) set of nodes in the path map
A root node in the path map.
Accumulator data for a tree that is obtained by mapping the nodes in this tree to nodes in some other tree (specifically, the subtree from which this tree was originally copied with copy-accumulators=yes) and getting the accumulator value from the corresponding node in the other tree.
A Pattern represents the result of parsing an XSLT pattern string.
Represents a pattern facet on a schema-defined simple type
This is a singleton class used to convert an expression to an equivalent pattern.
A PatternOptimizer is an agent responsible for optimizing a particular class of patterns.
Parser for XSLT patterns.
This class represents a pattern that sets the value of current() to the node being matched, and then wraps another pattern that uses the value of current()
A Watch represents a class that is interested in looking at nodes for the purpose of evaluating uniqueness and key constraints, or for XSLT streaming; specifically, an implementation of Watch that retains a Pattern which is evaluated to see whether a particular node matches the Watch.
Represents a pattern with a predicate, for example item[@value=3] or .[.
A Pedigree is transient information relating to a map or array indicating the route by which it was reached; it thus compensates for the absence of parent pointers in a JSON-like tree, by allowing the steps used to reach a map or array in such a structure to be retraced.
A PedigreeArrayItem represents an XDM array together with a Pedigree: that is, retained information about how the array was selected with a JSON-like tree.
The saxon:pedigree function, new in Saxon 9.9.
A PedigreeMapItem represents an XDM map together with a Pedigree: that is, retained information about how the map was selected within a JSON-like tree.
A PedigreeValue is a map or array together with a Pedigree indicating how that map or array was selected within a JSON-like tree structure.
A pending update action, such as is found on a pending update list
A PendingUpdateList is created by updating expressions in XQuery Update.
Concrete implementation of the Pending Update List
The PIGrabber class is a ProxyReceiver that looks for xml-stylesheet processing instructions and tests whether they match specified criteria; for those that do, it creates a Source object referring to the relevant stylesheet
A Pingable represents an object that can receive an event with no associated information.
This class is an implementation of the DOM ProcessingInstruction interface that wraps a Saxon NodeInfo representation of a text or comment node.
A PipelineConfiguration sets options that apply to all the operations in a pipeline.
This class together with its embedded subclasses handles conversion from XPath values to Java values
 
 
Converter for use when the source object is an atomic value, but nothing more is known statically.
 
 
 
 
 
 
 
 
 
General-purpose converter when nothing more specific is available.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Converter for use when the target class is an array
Converter for use when the target class is a collection class.
 
Converter for use when the target class is One, which constrains the value to be a singleton
Converter for use when the target class is OneOrMore, which constrains the value to be a non-empty sequence
 
 
Converter for use when the target class is ZeroOrMore, which allows any sequence but is a generic (parameterized) class so there is compile-time information about the type of items
Converter for use when the target class is ZeroOrOne, which constrains the value to be a singleton or an empty sequence
 
A "plain type" is either an atomic type, or a union type that (a) imposes no restrictions other than those imposed by its member types, and (b) has exclusively plain types as its member types
This interface provides access to methods whose implementation depends on the chosen platform (typically Java or .NET)
An object that provides hooks for connection pool management.
 
 
 
 
 
The posture of an expression defines the relationship of the result to a streamed input document, as defined in the XSLT 3.0 specification.
This class defines a composite property of an expression containing both the posture and sweep of the expression, as defined in the XSLT 3.0 specification.
A Precondition is a boolean condition that must be true if a pattern is to match (but in general is not a sufficient condition for the pattern to match).
A BooleanPrecondition can in principle test any boolean characteristic of a pattern.
A numeric comparison precondition is used for patterns containing a predicate that compares some expression E with a numeric constant.
A StringHashPrecondition compares a characteristic in the form of a set of integer hash codes against a constant hash code; the precondition is satisfied if the constant hash code is present in the set.
This class contains the stateful part of the precondition checker.
A character class represents a set of characters for regex matching purposes.
This non-instantiable class provides a number of useful implementations of the Predicate interface, designed for use when navigating streams of XDM items.
A prefix pool maintains a two-way mapping from namespace prefixes (as strings) to integer prefix codes.
A schema is a collection of schema components.
This PreparedStylesheet class represents a Stylesheet that has been prepared for execution (or "compiled").
An iterator over nodes, that prepends a given node to the nodes returned by another iterator.
An iterator over nodes, that prepends a given node to the nodes returned by another iterator.
Represents the preprocess facet on a schema-defined simple type.
 
This class is added to the output pipeline for the principal result destination for a transformation if the transformation uses xsl:result-document instructions.
Represents both the stylesheet module at the root of the import tree, that is, the module that includes or imports all the others, and also the XSLT package that has this stylesheet module as its root.
This version of the StylesheetPackage class represents a "real" package, that is one with an xsl:package element, which potentially uses other packages and overrides selected components in those packages.
An xsl:processing-instruction element in the stylesheet, or a processing-instruction constructor in a query
The Processor class serves three purposes: it allows global Saxon configuration options to be set; it acts as a factory for generating XQuery, XPath, and XSLT compilers; and it owns certain shared resources such as the Saxon NamePool and compiled schemas.
ProcInstImpl is an implementation of ProcInstInfo used by the Propagator to construct its trees.
ProcInstParser is used to parse pseudo-attributes within Processing Instructions.
This class holds details of user-selected configuration options for a set of transformations and/or queries.
The is the JAXP TransformerFactory implementation for the professional edition of Saxon.
An implementation of the JAXP XPath Factory that creates a Professional configuration.
This class uses a PathMap to do document projection.
This class implements the rules in a property such as XMLConstants.ACCESS_EXTERNAL_SCHEMA, which constrain the set of URIs that can be used by supplying a list of permitted protocols.
 
 
A ProxyReceiver is an Receiver that filters data before passing it to another underlying Receiver.
A pseudo-expression is an object that can appear as a node on the expression tree, but which cannot actually be evaluated in its own right.
A PublicStylesheetFunctionLibrary filters a StylesheetFunctionLibrary to include only those functions whose visibility is final or public.
A PullConsumer consumes all the events supplied by a PullProvider, doing nothing with them.
Abstract implementation of Elaborator for expressions that primarily evaluate in pull mode, that is, by returning a SequenceIterator over the result.
Interface implemented by evaluators that evaluate an expression in "pull" mode, that is, by delivering a SequenceIterator over the results.
Enumeration of event types that can occur in the PullProvider interface
PullFilter is a pass-through filter class that links one PullProvider to another PullProvider in a pipeline.
This class delivers any XPath sequence through the pull interface.
PullNamespaceReducer is a PullFilter responsible for removing duplicate namespace declarations.
PullProvider is Saxon's pull-based interface for reading XML documents and XDM sequences.
This class copies a document by using the pull interface to read the input document, and the push interface to write the output document.
PullPushTee is a pass-through filter class that links one PullProvider to another PullProvider in a pipeline, copying all events that are read into a push pipeline, supplied in the form of a Receiver.
A PullSource is a JAXP Source that encapsulates a PullProvider - that is, an object that supplies an XML document as a sequence of events that are read under the control of the recipient.
This class bridges PullProvider events to XMLStreamReader (Stax) events.
Bridge a SAX SourceLocator to a javax.xml.stream.Location
PullTracer is a PullFilter that can be inserted into a pull pipeline for diagnostic purposes.
An interface designed for applications to generate XML documents by issuing events.
Interface implemented by functions that have a "push" implementation, whereby the result of the function is written incrementally to an Outputter rather than being returned as the result of a call() method.
Abstract superclass for elaborators whose primary evaluation method is in push mode.
Interface implemented by instructions that push data to an Outputter
 
This class evaluates an expression in push mode in one thread, and provides an iterator to read the results of the expression in pull mode in the original thread.
 
Implements the fn:put() function in XQuery Update 1.0.
 
A saved put() call on the pending update list.
The QName class represents an instance of xs:QName, as defined in the XPath 2.0 data model.
A QNameException represents an error condition whereby a QName (for example a variable name or template name) is malformed
This class supports the fn:QName() function
 
Parser to handle QNames in either lexical QName or EQName syntax, including resolving any prefix against a URIResolver.
Interface for tests against a QName.
A QName value.
A qualified name: this is an abstract superclass for QNameValue and NotationValue, representing the XPath primitive types xs:QName and xs:NOTATION respectively
A QuantifiedExpression tests whether some/all items in a sequence satisfy some condition.
Elaborator for a quantified expression (some|every X in Y satisfies Z)
This is a synonym of net.sf.saxon.Query, the command line interface for running XQuery.
This Query class provides a command-line interface to the Saxon XQuery processor.
This class implements the saxon:query() extension function
A QueryLibrary represents an independently compiled set of query modules that does not include a main module.
Concrete implementation of a separately-compiled XQuery library
This class represents a query module, and includes information about the static context of the query module.
This class contains static methods used to read a query as a byte stream, infer the encoding if necessary, and return the text of the query as a string; also methods to import functions and variables from one module into another, and check their consistency.
This utility class takes the result sequence produced by a query, and wraps it as an XML document.
This class performs a quick parse of commonly encountered XPath expressions that conform to common syntactic patterns.
An exception used to signal that no more input is required from the parser, and that parsing can therefore be abandoned early (but without signaling any error to the user)
This class implements extension functions in the http://exslt.org/random namespace.
This class implements the function random-number-generator(), which is a standard function in XPath 3.1
A RangeExpression is an expression that represents an integer sequence as a pair of end-points (for example "x to y").
 
This abstract class represents an iteration over the results of a range expression (A by B to C).
This class implements an XPath map item as a view of an XSLT key index.
An RawDestination is a Destination that accepts a sequence output by a stylesheet or query and returns it directly as an XdmValue, without constructing an XML tree, and without serialization.
This class is an implementation of the JAXP Result interface.
Implement saxon:read-binary-resource extension function
A RebasedDocument represents a view of a real Document in which all nodes are mapped to a different base URI and/or system ID using supplied mapping functions.
A RebasedNode is a view of a node, in a virtual tree that maps the base URI and/or system ID to new values
A map from old bindings to new bindings, maintained during a copy() operation applied to an expression tree.
Receiver: This interface represents a recipient of XML tree-walking (push) events.
ReceiverOption defines a set of constants representing boolean flags, which can be used in calls to methods on the Receiver interface.
ReceiverToXMLStreamWriter is a Receiver writes XML by using the XMLStreamWriter
Marker interface attached to a Outputter that retains serialization properties (typically, a Receiver that forms part of the serialization pipeline).
ReceivingContentHandler is a glue class that provides a standard SAX ContentHandler interface to a Saxon Receiver.
An implementation of the Saxon Location interface that wraps the SAX Locator information.
An implementation of Destination that simply wraps a supplied Receiver
A regular expression compiler class.
An instance of this class represents a specific record item type, for example record(x as xs:double, y as element(employee)).
Class representing one field definition within a record type definition, used only while constructing a record definition
An instance of this class represents a specific record type, for example record(x as xs:double, y as element(employee)).
 
Class representing a set of regular expression flags (some combination of i, m, s, x, q).
This class watches the selector for a keyref constraint
This class implements any of the functions matches(), replace(), tokenize(), analyze-string(), in the version where a flags argument is present in the argument list
This class implements any of the functions matches(), replace(), tokenize(), analyze-string(), in which the final "flags" argument is omitted.
 
This interface defines an iterator that supports the evaluation of xsl:analyze-string.
Interface defining a call-back action for processing captured groups within a regular expression
A precondition that must be true if a regular expression is to match
This interface represents a compiled regular expression.
A RegularGroupFormatter is a NumericGroupFormatter that inserts a separator at constant intervals through a number: for example, a comma after every three digits counting from the right.
A RegularSequenceChecker is a filter that can be inserted into a Receiver pipeline to check that the sequence of events passed in is a regular event sequence.
 
The standard JAXP URIResolver is given a relative URI and a base URI and returns the resource identified by this combination.
RE is an efficient, lightweight regular expression evaluator/matcher class.
 
The XPath 2.0 remove() function
An implementation of SequenceIterator that returns all items except the one at a specified position.
Generate streaming code for a remove() function call.
A pending update action representing the effect of a rename expression
A rename expression in XQuery Update
A RepairingContentHandler is a SAX filter that can be placed on the input pipeline in front of a ReceivingContentHandler for use in cases where the events supplied by the XML parser are not guaranteed to satisfy all the consistency constraints.
This class implements the replace() function for replacing substrings that match a regular expression
A pending update action representing a replace node expression applied to an attribute.
A pending update action representing the effect of a "replace node" expression
A "replace node" expression in XQuery Update
A pending update action representing the effect of a "replace value" expression.
A "replace value of" expression in XQuery Update
This class implements the saxon:replace-with() function for replacing substrings that match a regular expression by means of a callback to a user-supplied function
The proposed XPath 4.0 replicate() function
This is a subclass of SingletonIterator that reports to a LearningEvaluator when the single target item is actually read.
A class that holds compiled regular expressions.
This class supports the resolve-QName function in XPath 2.0
This class supports the resolve-uri() function in XPath 2.0
This interface defines a Resource.
This interface defines a ResourceCollection.
A ResourceFactory is used for constructing a particular type of resource
The class provides a static method for loading resources from a URL.
A bundle of information made available when requesting resource resolution.
Interface for processing a resource request to deliver a resource
Convenience class to allow a ResourceResolver to be implemented as a lambda expression.
This class implements the Saxon ResourceResolver interface as a wrapper around a DOM Level 3 LSResourceResolver.
A ResourceResolver implemented by wrapping a supplied URIResolver
The compiled form of an xsl:result-document element in the stylesheet.
Handle an xsl:result-document expression/instruction for XSLT streaming capability.
 
The ResultDocumentResolver interface may be implemented by a user application; it is a callback that is called whenever an xsl:result-document instruction is executed.
Exception thrown to indicate a syntax error in a regular expression.
This class contains the part of the static context of expressions that (a) can change from one expression to another within a query or stylesheet, and (b) are potentially needed at run-time.
This iterator applies the return expression of a FLWOR expression to each of the tuples in a supplied tuple stream, returning the result as an iterator
The class represents the final stage in a push-mode tuple pipeline.
Implement XPath function fn:reverse()
 
 
A ReversibleIterator is an interface implemented by any SequenceIterator that is able to deliver items in reverse order (or to supply another iterator that can do so).
A RoleDiagnostic (formerly RoleLocator) identifies the role in which an expression is used, for example as the third argument of the concat() function.
Implement the XPath 2.0 root() function with one argument
 
An expression whose value is always a set of nodes containing a single node, the document root.
Elaborator for a root expression (/)
Streaming code for an expression that does not support streaming
 
This class implements the fn:round() function
 
 
This class supports the round-to-half-even() function
 
Rule: common functionality representing an abstraction of a template rule, a strip-space rule, or an accumulator rule
This class wraps a RuleBasedCollator to provide a SubstringMatcher.
A chain of rules: actually in this incarnation just a pointer to the first rule in the chain, the others being linked together each to the next.
A Rule with associated preconditions
RuleManager maintains a set of template rules, one set for each mode
A simple class for holding stateful details of a rule search operation This is a dummy implementation for Saxon-HE which does not optimize searching a rule chain.
A set of built-in template rules that performs the same action as an underlying set of rules, but with the addition of a warning message saying that no user-defined template rules was found.
The target of a rule, typically a TemplateRule.
NodeTest is an interface that enables a test of whether a node has a particular name and type.
A comment node in a sapling tree
A document node in a sapling tree.
An element node on a sapling tree.
This class represents a sapling node.
A processing-instruction node in a sapling tree
This is a non-instantiable class holding a number of convenience methods for creating sapling nodes of different kinds.
 
This class represents a Destination (for example, the destination of the output of a transformation) in which events representing the XML document are sent to a user-supplied SAX2 ContentHandler, as if the ContentHandler were receiving the document directly from an XML parser.
A Factory for the old saxon:output extension instruction (in the old Saxon6 namespace) for the benefit of people running the docbook stylesheets.
An exception thrown by the Saxon s9api API.
An unchecked exception thrown by the Saxon API.
saxon:assign element in stylesheet.
saxon:change is an XSLT version of the XQuery Update "replace value of node" expression.
Implements the saxon:deep-equal() function, a variant of fn:deep-equal that provides additional control over how the comparison is performed.
Handler for saxon:deep-update elements in stylesheet.
saxon:delete is an XSLT version of the XQuery Update "delete node" expression.
Handler for saxon:do elements in stylesheet.
A saxon:doctype element in the stylesheet.
Saxon implementation of the JAXP class javax.xml.datatype.Duration.
A Factory for Saxon extension nodes in the stylesheet tree.
A Factory for Saxon extension nodes in the stylesheet tree.
A saxon:entity-ref element in the stylesheet.
The class acts as a register of Saxon-specific error codes.
The class implements a saxon:import-query declaration in a stylesheet.
saxon:insert is an XSLT version of the XQuery Update "insert node" expression.
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.
This object represents a saxon:param element in a schema document.
saxon:preprocess is an implementation-defined pre-lexical facet as permitted by XML Schema 1.1.
saxon:rename is an XSLT version of the XQuery Update rename expression.
saxon:replace is an XSLT version of the XQuery Update "replace node" expression.
This class implements the saxon:slice() (proposed as fn:slice() for 4.0))
Parser extension for syntax in XPath that is accepted only in Saxon-PE and -EE.
Handler for saxon:tabulate-maps elements in stylesheet.
A SaxonTransformerFactory instance can be used to create Transformer and Template objects.
saxon:update is an XSLT version of the XQuery Update copy-modify expression.
Handler for saxon:while elements in stylesheet.
Saxon implementation of the JAXP class javax.xml.datatype.XMLGregorianCalendar.
Saxon implementation of the XQL interface XQConnection.
Saxon implementation of the XQJ interface XQDataFactory.
Saxon implementation of the XQJ XQDataSource interface.
Saxon implementation of the XQJ DynamicContext interface
Saxon implementation of the XQJ XQExpression interface
The class is a Saxon implementation of the XQJ interface XQResultSequence.
This Saxon class is used to implement both the XQItem and XQResultItem interfaces in XQJ.
All Saxon implementations of XQItemAccessor must implement this interface
Saxon implementation of the XQJ XQItemType interface
Saxon implementation of the XQMetaData interface
Saxon implementation of the XQJ interface XQPreparedExpression.
Saxon implementation of the XQSequence interface in XQJ, which represents an XDM sequence together with a current position.
Saxon implementation of the XQJ SequenceType interface
Saxon implementation of the XQJ XQStaticContext interface
A Scalar system function is a pure function that accepts a single item as its operand, returns a single atomic value as its result, typically returns an empty sequence if the argument is an empty sequence, and has no context dependencies.
A NodeTest of the form schema-attribute(attribute-name)
A SchemaCompiler is capable of reading source schema documents and converting them into collections of schema components.
This is a marker interface that represents any "schema component" as defined in the XML Schema specification.
This is a marker interface that acts as a surrogate for an object representing a global element or attribute declaration.
An XML document containing a module of an XML Schema.
Class that applies a standard transformation to a schema document: specifically, the chameleon transformation or the override transformation
An element in an XML Schema document.
 
A NodeTest of the form schema-element(element-name)
An exception that identifies an error in reading, parsing, or validating a schema.
This is the Saxon implementation of the JAXP 1.3 SchemaFactory interface.
A JAXP ErrorReporter that wraps a SAX ErrorHandler
This class implements the saxon:schema() extension function.
The SchemaManager is used to load schema documents, and to set options for the way in which they are loaded.
The SchemaManager is used to load schema documents, and to set options for the way in which they are loaded.
This class allows a compiled schema model in SCM format to be loaded into memory.
This class provides services enabling a compiled schema to be serialized to disk
Class SchemaNodeFactory.
Marker interface for schema-element() and schema-attribute() node tests
A class for reading XML Schema documents.
A reference to a Saxon prepared schema.
The base class for all XML Schema stuctures.
SchemaType is an interface implemented by all schema types: simple and complex types, built-in and user-defined types.
Extension function saxon:schema-type
A SchemaURIResolver is used when resolving references to schema documents.
Internal indicator representing progress in validating components of a schema
A SchemaValidator is an object that is used for validating instance documents against a schema.
A SchemaValidator is an object that is used for validating instance documents against a schema.
Marker interface for elements that declare a variable which is in-scope within their body
A sequence that is held in a form that permits rapid searching, typically by use of indexes.
A whitespace stripping rule that strips elected elements unless xml:space indicates that whitespace should be preserved.
This class parses the two XPath subsets defined in XML Schema for handling the "selector" and "field" attributes of the <unique>, <key>, and <keyref> elements.
A Watch represents a class that is interested in looking at nodes for the purpose of evaluating uniqueness and key constraints.
An instance of this class represents a self-reference within a record type, that is the ".." construct in a record test such as record(data as xs:string, next? as ..).
Sender is a helper class that sends events to a Receiver from any kind of Source object
This class implements the extension function saxon:send-mail().
This interface represents an XDM Value, that is, a sequence of items.
This receiver is used when writing a sequence of atomic values and nodes, that is, when xsl:variable is used with content and an "as" attribute.
Copies a sequence, supplied as a SequenceIterator, to a push pipeline, represented by a SequenceReceiver
 
A sequence value implemented extensionally.
 
A compiled xsl:sequence instruction.
 
 
A SequenceIterator is used to iterate over any XPath 2 sequence (of values or nodes).
 
SequenceMapper is an implementation of MappingFunction that wraps a function typically supplied as a lambda expression.
 
This class supports the two extension functions starts-with-sequence, ends-with-sequence, contains-sequence
 
 
 
A SequenceCompositor represents an xs:sequence element in the schema
Implement the "sequence normalization" logic as defined in the XSLT 3.0/XQuery 3.0 serialization spec.
Implement the "sequence normalization" logic as defined in the XSLT 3.0/XQuery 3.0 serialization spec.
Implement the "sequence normalization" logic as defined in the XSLT 3.0/XQuery 3.0 serialization spec, for the case where there is no item-separator.
SequenceReceiver: this extension of the Receiver interface is used when processing a sequence constructor.
Utility class for manipulating sequences.
A SequenceType is the combination of an ItemType and an OccurrenceIndicator
SequenceType: a sequence type consists of a primary type, which indicates the type of item, and a cardinality, which indicates the number of occurrences permitted.
This class can be used in a push pipeline: it accepts any sequence as input, and generates a document in which the items of the sequence are wrapped by elements containing information about the types of the items in the input sequence.
The SequenceWriter is used when writing a sequence of items, for example, when xsl:variable is used with content and an "as" attribute.
A component that can be serialized by the SchemaSerializer.
This class handles a set of serialization parameters provided in the form of an XDM instance as specified in the Serialization 3.0 definition, section 3.1
Define a set of serialization properties.
This class implements the saxon:serialize() extension function, which is specially-recognized by the system because it needs access to parts of the static context
Implementation of fn:serialize() as defined in XPath 3.1
A Serializer takes a tree representation of XML and turns it into lexical XML markup.
Enumeration class defining the permitted serialization properties
Helper class to construct a serialization pipeline for a given result destination and a given set of output properties.
Saxon-PE extensions to the serializer factory
This class implements extension functions in the http://exslt.org/sets namespace.
The built-in shallow-copy-all rule set proposed for XSLT 4.0, which is the same as shallow-copy, except for maps and arrays.
This event feed implements an implicit xsl:copy instruction used in a built-in template.
The built-in rule set introduced in XSLT 3.0, which is effectively an identity template.
Handle streaming for calls to user-defined functions with streamability="shallow-descent"
A built-in set of template rules that ignores the current node and does an apply-templates to its children.
Evaluator for expressions that are evaluated in "shared append" mode.
Interface that extends NodeInfo by providing a method to get the position of a node relative to its siblings.
This receiver is inserted into the output pipeline whenever on-empty or on-non-empty is used (XSLT 3.0).
A simple implementation of XDM array items, in which the array is backed by a Java List.
A simple collation that just wraps a supplied Comparator
A reference to a named schema group within the content model of a complex type
This class is used when a streaming template requests evaluation of a simple content constructor in streaming mode (that is, when it constructs a text, attribute, comment, or PI node based on the contents of the streamed document).
This class is a filter that is used to validate that an element has simple content conforming to a given simple type.
An abstract implementation of Expression designed to make it easy to implement new expressions, in particular, expressions to support extension instructions.
 
A Mode is a collection of rules; the selection of a rule to apply to a given element is determined by a Pattern.
Interface used around a group of rules - principally at the group start and the group end
Common superclass for XSLT instructions whose content template produces a text value: xsl:attribute, xsl:comment, xsl:processing-instruction, xsl:namespace, and xsl:text, and their XQuery equivalents
Generate streaming code for an xsl:value-of, xsl:comment, xsl:processing-instruction instruction, etc
This class is used when a streaming template requests evaluation of a simple content constructor in streaming mode (that is, when it constructs a text, attribute, comment, or PI node based on the contents of the streamed document).
Abstract elaborator for expressions that evaluate simple nodes (text nodes, comments, attributes, etc) in push mode.
A SimplePositionalPattern is a pattern of the form A[N] where A is an axis expression using the child axis and P is a numeric literal.
A SimpleStepExpression is a special case of a SlashExpression in which the start expression selects a single item (or nothing), and the step expression is a simple AxisExpression.
Elaborator for a simple step expression, that is X/axis::Y where X evaluates to a singleton
This interface represents a simple type, which may be a built-in simple type, or a user-defined simple type.
This class implements equality and ordering comparisons between values of simple types: that is, atomic values, and sequences of atomic values, following the XSD-defined rules for equality and ordering comparisons.
A simple type definition holds all the information about a simpleType during the course of schema processing.
This class implements equality and identity comparisons between values of simple types: that is, atomic values, and sequences of atomic values, following the XSD-defined rules for equality and identity comparisons.
SingletonIterator: an iterator over a sequence of exactly one atomic value
A key and a corresponding value to be held in a Map.
A SequenceEvaluator for expressions that return a single item (exactly one, never an empty sequence).
A SingleItemFilter is an expression that selects zero or one items from a supplied sequence
A schema (collection of schema components) that has an identifiable target namespace: typically the set of components derived from a single import or include.
SingleNodeIterator: an iterator over a sequence of zero or one nodes
A SingletonAtomizer combines the functions of an Atomizer and a CardinalityChecker: it is used to atomize a sequence of nodes, checking that the result of the atomization contains zero or one atomic values.
Watch factory class for a singleton atomizer
An implementation of AttributeMap for use when there is exactly one attribute
A character class represents a set of characters for regex matching purposes.
A SingletonClosure represents a value that has not yet been evaluated: the value is represented by an expression, together with saved values of all the context variables that the expression depends on.
This expression is equivalent to (A intersect B) in the case where A has cardinality zero-or-one.
Elaborator for a Venn expression: that is A union B, A intersect B, or A except B
SingletonIterator: an iterator over a sequence exactly one value
The "singularity" tuple stream delivers a single empty tuple.
A Sink is a Receiver that discards all information passed to it
An ItemFeed that swallows (discards) all input passed to it
An Outputter that swallows (discards) all input supplied to it
This class is a filter that passes all Receiver events through unchanged, except that it removes all type annotations from element and attribute nodes.
A slash expression is any expression using the binary slash operator "/".
Elaborator for a slash expression.
This class implements the fn:slice() function in 4.0.
A Unicode string consisting entirely of 16-bit BMP characters, implemented as a range of an underlying byte array
A Unicode string consisting of 24-bit characters, implemented as a range of an underlying byte array holding three bytes per codepoint
A Unicode string consisting entirely of 8-bit characters, implemented as a range of an underlying byte array
A SlotManager supports functions, templates, etc: specifically, any executable code that requires a stack frame containing local variables.
 
An implementation of AttributeMap suitable for small collections of attributes (typically, up to five).
This class provides streamed implementation of the snapshot() function
XSLT 3.0 function snapshot().
Generate streaming code for the snapshot() function
This class represents a node within a tree produced by the snapshot() function, as a virtual copy of the relevant nodes in another tree.
This class implements the function fn:some(), which is a proposed function for XPath 4.0
This class implements the function fn:sort#1, which is a standard function in XPath 3.1
 
This class implements the function fn:sort#2, according to the new XPath 3.1 spec in bug 29792
This class implements the function fn:sort#2, which is a higher-order function in XPath 3.1 available only in Saxon-PE and above
A SortedGroupIterator is a modified SortedIterator.
Class to do a sorted iteration
Expression equivalent to the imaginary syntax expr sortby (sort-key)+
Elaborator for a sort expression - sorts nodes into order based on a user-supplied sort key
Streaming code for sort expression.
A SortKeyDefinition defines one component of a sort key.
The class represents a list of sort key definitions in major-to-minor sort key order.
Callback interface used to evaluate sort keys.
Helper class for xsl:variable and xsl:param elements.
 
Non-streamable implementation of the xsl:source-document instruction
This interface defines a SourceResolver.
A SpaceStrippedDocument represents a view of a real Document in which selected whitespace text nodes are treated as having been stripped.
A StrippedNode is a view of a node, in a virtual tree that has whitespace text nodes stripped from it.
Interface for deciding whether a particular element is to have whitespace text nodes stripped
An instance of this class represents a specific function item type, for example function(xs:int) as xs:boolean
An sql:close element in the stylesheet.
An sql:column element in the stylesheet.
An sql:connect element in the stylesheet.
 
This class implements the sql:connect() extension function.
An sql:delete element in the stylesheet.
This class implements the sql:delete() extension function.
Class SQLElementFactory.
An sql:execute element in the stylesheet.
This class implements the sql:execute() extension function.
The SQLFunctionSet is a set of Saxon vendor-supplied extension functions designed to enable access to SQL databases
An sql:insert element in the stylesheet.
This class implements the sql:insert() extension function.
This class implements the sql:prepared-query() extension function.
This class implements the sql:prepared-statement() extension function.
An sql:query element in the stylesheet.
This class implements the sql:query() extension function.
 
This class implements the sql:table() extension function.
An sql:update element in the stylesheet.
This class implements the sql:update() extension function.
An expression that delivers a fixed size array whose members are the result of evaluating corresponding expressions: [a,b,c,d]
This class represents a stack frame holding details of the variables used in a function or in an XSLT template.
StandardCollationURIResolver allows a Collation to be created given a URI starting with "http://saxon.sf.net/collation" followed by a set of query parameters.
Default implementation of the CollectionFinder interface.
This class is an abstract superclass of classes such as the StandardErrorListener and StandardInvalidityHandler, and exists to provide common utility methods for these classes, and for similar user-written classes if required
Default implementation of the EnvironmentVariableResolver.
A default implementation of the SAX ErrorHandler interface.
StandardErrorListener is the standard error handler for XSLT and XQuery processing errors, used if no other ErrorListener is nominated.
StandardErrorReporter is the standard error handler for processing XSLT and XQuery static errors, used if no other error handler is nominated.
This class StandardInvalidityHandler, despite its name, is not directly used by Saxon, and in particular it is NOT the default InvalidityHandler.
The default Logger used by Saxon on the Java platform.
This is the default implementation of the new Saxon 11 interface for user-defined handling of xsl:message and xsl:assert output.
This class is the standard ModuleURIResolver used to implement the "import module" declaration in a Query Prolog.
Well-known names used in XSLT processing.
This class provides all the conversion methods used to convert data between XDM values and Java values in the XQJ API.
This class defines the default OutputURIResolver.
This class defines the default ResultDocumentResolver.
The default schema resolver used when no other is requested
Default implementation of the UnparsedTextURIResolver, used if no other implementation is nominated to the Configuration.
This class checks whether a string is a valid URI.
This class provides the service of converting a URI into an Source.
Implements the fn:starts-with() function, with the collation already known
A State is a dynamic state of the finite state machine.
 
Implement the XPath function static-base-uri()
A StaticContext contains the information needed while an expression or pattern is being parsed.
A StaticContextAccessor is a function that takes no arguments, but operates implicitly on the static context.
Implement the XPath function default-collation()
The StaticError interface is retained in Saxon 10.0 as a marker interface so that the methods XsltCompiler.setErrorList(List) and XQueryCompiler.setErrorList(List) continue to function.
A call to a function that is known statically.
This class contains constants identifying dependencies that an XPath expression might have on its context.
StaticQueryContext contains information used to build a StaticContext for use when processing XQuery expressions.
A version of StaticQueryContext for Saxon-EE, that extends the capability by allowing compilation of library modules.
Factory class for creating a customized instance of StaticQueryContext
A version of StaticQueryContext for Saxon-PE
Statistics on the size of TinyTree instances, kept so that the system can learn how much space to allocate to new trees
Generates statistics relating to a validation episode
This class implements the Saxon PullProvider API on top of a standard StAX parser (or any other StAX XMLStreamReader implementation)
StAxResultHandler is a helper class
StAxResultHandler is used to allow a transformation result to be supplied as a StAXResult.
A Step is a function that can be applied to an item to return a stream of items.
The SteppingNavigator is a utility class containing methods to assist with navigating a tree whose nodes implement the SteppingNode interface
An iterator over the descendant or descendant-or-self axis
This interface can be implemented by an implementation of NodeInfo to take advantage of a generic implementation of the descendant axis found in class SteppingNavigator
This non-instantiable class provides a number of useful implementations of the Step interface, used to navigate XDM trees, typically as an argument to XdmValue.select(net.sf.saxon.s9api.streams.Step<T>).
Supporting class for assessing the streamability of expressions.
Represents a used-defined XSLT function whose declared streamability is other than "unclassified"
This class implements the XSLT 3.0 function stream-available()
 
This class implements the saxon:stream() extension function.
This abstract class supplements an Expression with methods used at compile-time to support streaming, by generating a Watch that allows the expression to be evaluated in push mode.
Elaborator for the first argument of a streamable stylesheet function
StreamingFilterImpl is an XMLFilter (a SAX2 filter) that performs a transformation taking a SAX stream as input and producing a SAX stream as output, using XSLT 3.0 streaming to process the source
This is a special pattern that matches the node supplied as the first argument of a call to a streamable stylesheet function; it corresponds to the pattern match="$arg" where $arg is the first argument of the function.
Factory class to make a streaming pattern from an expression.
A SequenceWriter that can be used on a streaming pipeline to direct the output of an operation to the next expression in the pipeline
The is a customized JAXP TransformerFactory implementation for the enterprise edition of Saxon.
Saxon implementation of the JAXP Transformer interface.
Implementation of the xsl:source-document (streamable="yes") instruction
 
 
This class implements the XmlStreamWriter interface, translating the events into Saxon Receiver events.
Implement XPath function string() with a single argument
 
This interface represents a "collation" as defined in XPath, that is, a set of rules for comparing strings
Contains constants representing some frequently used strings, either as a UnicodeString or in some cases as a byte array.
A Converter that accepts a string as input.
Converts string to anyURI
Converts string to base64
Converts a string to a boolean
Converts a string to a date
Converts a string to a dateTime
Converts a string to a dateTimeStamp
Converts a string to a dayTimeDuration
Converts a string to an xs:decimal
Converts from xs;string to a user-defined type derived from a built-in subtype of xs:string
Converts a string to a duration
Converts a string to xs:float
Converts a string to a gDay
Converts a string to a gMonth
Converts a string to a gMonthDay
Converts a string to a gYear
Converts a string to a gYearMonth
Converts a string to hexBinary
Converts a string to an integer
Converts a string to a built-in subtype of integer
Converts from xs:string to xs:language
Converts from xs:string to xs:Name
Converts from xs:string to xs:NCName, xs:ID, xs:IDREF, or xs:ENTITY
Converts from xs:string to xs:NMTOKEN
Converter from string to a derived type (derived from a type other than xs:string), where the derived type needs to retain the original string for validating against lexical facets such as pattern.
Converts from xs:string to xs:normalizedString
Converts String to NOTATION
Converts String to QName
Converts from xs:string or xs:untypedAtomic to xs:String
Converts from xs:string to a user-defined type derived directly from xs:string
Converts a string to a time
Converts from xs:string to xs:token
Converter from string to plain union types
Converts from xs:string or xs:untypedAtomic to xs:untypedAtomic
Converts a string to a yearMonthDuration
An abstract Elaborator for expressions that evaluate their result as a single string (that is, as an instance of UnicodeString); they may also return null to indicate that the result is an empty sequence.
A StringEvaluator is a function that typically encapsulates the logic for evaluating an expression that returns a string.
Streaming code to implement the XPath string() function
fn:string-join(string* $sequence, string $separator)
Implement the XPath string-length() function
 
Subclass of Literal used specifically for string literals, as this is a common case
This class supports the function string-to-codepoints()
This class converts a string to an xs:double according to the rules in XML Schema 1.0
Convert a string to a double using the rules of XML Schema 1.1
 
An atomic value of type xs:string.
 
CharacterIterator is used to iterate over the characters in a string, returning them as integers representing the Unicode code-point.
This class is used when a streamed template requests evaluation of the string value of the nodes selected by a path expression, typically in response to an xsl:value-of instruction.
A StringValueGatherer is a Receiver that computes the string value of an element in streaming mode, by copying all the text nodes to a supplied receiver.
An implementation of the UnicodeString interface that wraps an ordinary Java string.
The Stripper class performs whitespace stripping according to the rules of the xsl:strip-space and xsl:preserve-space instructions.
 
This class provides an economical representation of a QName triple (prefix, URI, and localname).
This represents a library of function signatures with no actual implementation in SaxonJ.
Abstract superclass for all element nodes in the stylesheet.
 
Class StyleNodeFactory.
Class StyleNodeFactoryEE: Subclass of StyleNodeFactory used for Saxon-EE.
Class StyleNodeFactoryPE: Subclass of StyleNodeFactory used for Saxon-PE.
A cache of the stylesheets (as XsltExecutables) used in calls to the fn:transform function, in a stylesheet or query.
This interface is implemented by all top-level XSL elements that can contain local variable declarations.
A StylesheetFunctionLibrary contains functions defined by the user in a stylesheet.
A stylesheet module represents a module of a stylesheet.
A (compiled) stylesheet package.
Subclass of StylesheetPackage for Saxon-EE
A whitespace stripping rule that strips whitespace according to the rules defined for XSLT stylesheets
A SubscriptExpression represents a FilterExpression of the form EXPR[n] where n is known to be singleton numeric and to be independent of the focus; it does not need to be constant
An elaborator for a "subscript" expression, typically written as X[$n] where $n is an integer or a numeric expression.
Streaming code for a subscript expression
Implements the XPath 2.0 subsequence() function with two arguments
Implements the XPath 2.0 subsequence() function with three arguments
A SubsequenceIterator selects a subsequence of a sequence
Generate streaming code for a subsequence() function call.
 
This class implements the XPath substring() function
 
Implements the fn:substring-after() function with the collation already known
 
Implements the fn:substring-before() function with the collation already known
 
This interface is implemented by a collation that is capable of supporting the XPath functions that require matching of a substring: namely contains(), starts-with, ends-with, substring-before, and substring-after.
The state of a finite state machine that is processing "suffix" open content.
Implementation of the fn:sum function
 
Implementation of Fold class to do the summation in push mode
The XPath id() or element-with-id() function XPath 2.0 version: accepts any sequence as the first parameter; each item in the sequence is taken as an IDREFS value, that is, a space-separated list of ID values.
 
 
Supplied parameter reference: this is an internal expression used to refer to the value of the n'th parameter supplied on a template call or a call to an inline function.
 
The posture of an expression defines the relationship of the result to a streamed input document, as defined in the XSLT 3.0 specification.
Streaming code to implement a switch expression, which results from optimizing a choose where all the branches have similar test conditions.
A comparer that compares atomic values for equality, with the properties: - non-comparable types compare false - NaN compares equal to NaN Used for comparisons in XQuery Switch expressions
Class to handle comparisons for XQuery switch expressions.
An optimized Choose expression in which all the branches are tests of the same expression for equality with some value.
Data structure used for holding details of a switch expression
Elaborator for a "Switch" expression (typically an xsl:choose that tests one expression against a list of constants: not exactly equivalent to an XQuery 3.1 switch expression).
The symbolic name of a component consists of the component kind (e.g.
Subclass of SymbolicName used for function names (including the arity)
This class holds constants used to identify the various symbol spaces defined in XML Schema: element declarations, attribute declarations, types, groups, and so on.
Abstract superclass for calls to functions in the standard function library
A call to a system-defined function (specifically, a function implemented as an instance of SystemFunction)
Subclass representing a system function call that has been optimized; this overrides the optimize() method to do nothing, thus ensuring that optimization converges.
Elaborator for a system function call, used in cases where the specific function call has no custom support
A Callable that wraps another Callable and a Dynamic Context, in effect acting as a closure that executes the original callable with a saved context.
System IDs are not held in nodes in the tree, because they are usually the same for a whole document.
An implementation of Saxon's Logger interface that writes all messages through to a supplied java.util.logging.Logger.
Implementation of the XSLT system-property() function
Handler for a saxon:tabulate-maps instruction in an XSLT stylesheet.
Interface representing a Tail Call.
A TailCallLoop wraps the body of a function that contains tail-recursive function calls.
 
 
 
A TailExpression represents a FilterExpression of the form EXPR[position() > n] Here n is usually 2, but we allow other values
Elaborator for a tail expression
 
This class implements the function fn:tail(), which is a standard function in XPath 3.0
TailIterator iterates over a base sequence starting at an element other than the first.
Interface for a simple line-based question/answer dialog with the user
A TeeDestination allows writing to two destinations at once.
TeeOutputter: a SequenceReceiver that duplicates received events to two different destinations
The runtime object corresponding to an xsl:template element in the stylesheet.
Saxon-EE version of the TemplateRule class, with added code for JIT compilation and streamability analysis
A TemplateRuleInitializer is used to prepare a template rule for execution the first time that its match pattern is matched, in cases where JIT template rule compilation is in force.
A trace listener for XSLT that only handles invocation of template rules; enabled using saxon:trace="yes" on the xsl:mode declaration
TemplatesHandlerImpl implements the javax.xml.transform.sax.TemplatesHandler interface.
Saxon implementation of the JAXP Templates interface.
Represents a Term in a content model as defined by XML Schema.
An exception thrown by xsl:message terminate="yes".
A Terminator provides a method that can be called to cause early termination of a streaming pass over an input document, in the case where no more information from the document is needed.
A Comparer used for comparing sort keys when data-type="text".
This class generates TEXT output
This class represents a temporary tree whose root document node owns a single text node.
A node in the XML parse tree representing character content.
An iterator that iterates over a file line by line, returning each line as a StringValue
The built-in rule set used for 1.0 and 2.0, which for document and element nodes does an apply-templates to children, and for text nodes and attribute nodes copies the node.
This class represents a DOM text node that is the child of a DOM attribute node.
This class is an implementation of the DOM Text and Comment interfaces that wraps a Saxon NodeInfo representation of a text or comment node.
Define the static context for expressions appearing between curly braces in a text value template.
A text node in an XSLT 3.0 stylesheet that may or may not contain a text value template
The ThreadManager is used to manage asynchronous execution of xsl:result-document instructions in Saxon-EE.
Utility class for collecting and reporting timing information, used only under diagnostic control
This class implements the saxon:timestamp() function which returns the date/time at the moment of execution
A value of type xs:time
 
A code injector that wraps the body of a template or function in a TraceExpression, which causes the TimingTraceListener to be notified at the start and end of the function/template evaluation
A trace listener that records timing information for templates and functions, outputting this information as an HTML report to a specified destination when the transformation completes.
A node in the XML parse tree representing an attribute.
The TinyBuilder class is responsible for taking a stream of SAX events and constructing a Document tree, using the "TinyTree" implementation.
Variant of the TinyBuilder to create a tiny tree in which multiple text nodes or attribute nodes sharing the same string value economize on space by only holding the value once.
Monitor construction of a TinyTree.
A node in the XML parse tree representing the Document itself (or equivalently, the root node of the Document).
A node in the XML parse tree representing an XML element.
A node in a TinyTree representing an XML element, character content, or attribute.
TinyParentNodeImpl is an implementation of a non-leaf node (specifically, an Element node or a Document node)
A node in the XML parse tree representing character content
An element node in the TinyTree that has no attributes or namespace declarations and that has a single text node child.
Inner class representing the text node; this is created on demand
A data structure to hold the contents of a tree.
This class holds static constants and methods defining the lexical tokens used in XPath and XQuery, and associated keywords.
This class implements the single-argument tokenize() function introduced in XPath 3.1
This class implements the 3-argument tokenize() function for regular expression matching.
Tokenizer for expressions and inputs.
Given an expression, this characteristic evaluates the set of hash keys corresponding to the whitespace-separated tokens in the string values of the items selected by that expression.
Class to perform lowercase conversion.
Provides an iterable over a stack that iterates in order from top to bottom.
Eepresents the value of the totalDigits facet
Class to perform uppercase conversion.
This class supports the XPath 2.0 function trace().
A construct whose execution can be notified to a TraceListener.
A construct whose execution can be notified to a TraceListener.
A "trace" clause in a FLWOR expression, added by a TraceCodeInjector for diagnostic tracing, debugging, profiling or similar purposes.
This class represents the tuple stream delivered as the output of a trace clause in a FLWOR expression.
This class represents the tuple stream delivered as the output of a trace clause in a FLWOR expression.
A code injector that wraps every expression (other than a literal) in a TraceExpression, which causes a TraceListener to be notified when the expression is evaluated
A class which implements efficient and thread-safe multi-cast event dispatching for the TraceListener evants.
Implement streaming of the trace instruction injected into the code when compiled with tracing enabled.
A wrapper expression used to trace expressions in XSLT and XQuery.
 
This interface defines methods that are called by Saxon during the execution of a stylesheet or query, if tracing is switched on.
Implement streaming of fn:trace instruction.
A filter that can be inserted into a Receiver pipeline to trace the events that pass through.
This is a synonym of the command line interface net.sf.saxon.Transform for running XSLT transformations.
This Transform class is the command-line entry point to the Saxon XSLT Processor.
A TransformerFactory instance can be used to create Transformer and Template objects.
TransformerHandlerImpl implements the javax.xml.transform.sax.TransformerHandler interface.
Saxon implementation of the JAXP Transformer interface.
TransformerReceiver is similar in concept to the JAXP TransformerHandler, except that it implements Saxon's Receiver interface rather than the standard SAX2 interface.
This class implements the saxon:transform() extension function (not to be confused with the standard fn:transform() function in XPath 3.1)
This class implements the function transform(), which is a standard function in XPath 3.1
Function fn:transitive-closure, proposed for 4.0 (revised simplified 2-argument form in PR 761)
Implement the XPath translate() function
 
A subclass of StreamingAdjunct used for expressions that have a sequence-valued operand with usage transmission.
Treat Expression: implements "treat as data-type ( expression )".
This class supports the XPath 2.0 functions exactly-one(), one-or-more(), zero-or-one().
 
 
 
Generate streaming code for a "treat" function call (for example one-or-more)
This interface represents information about a tree as a whole.
A TreeModel represents an implementation of the Saxon NodeInfo interface, which itself is essentially an implementation of the XDM model defined in W3C specifications (except that Saxon's NodeInfo understands the 13 XPath axes, rather than merely supporting parent and child properties).
A TreeReceiver acts as a bridge between a SequenceReceiver, which can receive events for constructing any kind of sequence, and an ordinary Receiver, which only handles events relating to the building of trees.
 
This implementation of the Saxon pull interface starts from any NodeInfo, and returns the events corresponding to that node and its descendants (including their attributes and namespaces).
 
A Trigger is a Watch that contains a pattern used for matching streamed nodes, and a WatchAction which is invoked when a matching node is found.
This class implements the function fn:trunk(), which is proposed as a standard function in XPath 4.0
This class implements a try/catch expression.
 
Streaming code for a try/catch expression
 
A tuple, as it appears in an XQuery tuple stream handled by extended FLWOR expressions.
A tuple expression is an expression that returns a FLWOR tuple.
Abtract class representing a tuple stream (used to evaluate a FLWOR expression) in pull mode (where the consumer of tuples activates the provider of those tuples)
Abtract class representing a tuple stream (used to evaluate a FLWOR expression) in push mode (where the provider of tuples activates the consumer of those tuples)
Twine16 is a Unicode string consisting entirely of codepoints in the range 0-65535 (that is, the basic multilingual plane), excluding surrogates.
Twine24 is Unicode string that accommodates any codepoint value up to 24 bits.
Twine8 is Unicode string whose codepoints are all in the range 0-255 (that is, Latin-1).
Interface that accepts a a sequence of Unicode codepoints.
An iterator over a pair of objects (typically sub-expressions of an expression)
This class contains static information about types and methods for constructing type codes.
Manager for xsl:item-type declarations in a stylesheet.
A TypeAlternative schema component (See XML Schema 1.1 Part 1 Working Draft)
This class supports the XSLT fn:type-available() function.
This class provides Saxon's type checking capability.
This class provides type checking capability with XPath 1.0 backwards compatibility enabled.
A filter on the push pipeline that performs type checking, both of the item type and the cardinality.
This class is an extension of ContentHandlerProxy that provides access to type information, using the DOM Level 3 TypeInfo interfaces.
A StreamSource augmented with ContentType information, which potentially provides the media type and encoding
This class is used when a streamed template requests evaluation of the typed value of the nodes selected by a path expression.
This class exists to provide answers to questions about the type hierarchy.
Refinement of the TypeHierarchy class to handle schema-aware types such as schema-element(A).
This class implements the DOM TypeInfo interface as a wrapper over the Saxon SchemaType interface.
A reference to a simple or complex type
A TypeStrippedDocument represents a view of a real Document in which all nodes are untyped
A TypeStrippedNode is a view of a node, in a virtual tree that has type annotations stripped from it.
This class is an implementation of Saxon collation keys based on the functionality of collation keys supplied by the ICU library.
This class represents a collation (for comparing strings) implemented using the ICU library.
This class implements (an approximation to) the UCA Collation Algorithm relying solely on the built-in Java support (that is, without using the ICU library).
Unary Expression: an expression taking a single operand expression
An UnboundFunctionLibrary is not a real function library; rather, it is used to keep track of function calls that cannot yet be bound to a known declared function, but will have to be bound when all user-declared functions are available.
 
When implementing certain interfaces Saxon is not able to throw a checked exception because the interface definition does not allow it.
This class is used when the decision on which serialization method to use has to be delayed until the first element is read.
An UndeclaredVariable object is created when a reference is encountered to a variable that has not yet been declared.
The saxon:unescape-NCName function reverses the effect of saxon:escape-NCName: it takes an NCName constructed using saxon:escape-NCName as input, and returns the string from which it was constructed.
PullProvider is Saxon's pull-based interface for reading XML documents and XDM sequences.
This singleton class provides knowledge of the names and contents of Unicode character blocks, as referenced using the \p{IsXXXXX} construct in a regular expression.
Builder class to construct a UnicodeString by appending text incrementally
A UnicodeString containing a single codepoint
UnicodeNormalizer: This ProxyReceiver performs unicode normalization on the contents of attribute and text nodes.
A UnicodeString is a sequence of Unicode codepoints that supports codepoint addressing.
A StringEvaluator is a function that typically encapsulates the logic for evaluating an expression that returns a string, in the form of a UnicodeString
Interface that accepts strings in the form of UnicodeString objects, which are written to some destination.
An UnicodeWriterResult encapsulates a UnicodeWriter to act as the destination for a transformation or serialization
Implementation of UnicodeWriter that converts Unicode strings to ordinary Java strings and sends them to a supplied Writer
The extension function saxon:unindexed returns the value of its argument unchanged.
Function to test castability to a union type
Function to perform a cast to a union type
An enumeration representing a nodeset that is a union of two other NodeSets.
A multi-way union delivering the sorted results obtained from a number of sorted input iterators
A pattern formed as the union (or) of two other patterns
A QNameTest that is the union of a number of supplied QNameTests
Interface representing a union type.
This class represents an xs:unique identity constraint
Interface that accepts a string in the form of a sequence of CharSequences, which are conceptually concatenated (though in some implementations, the final string may never be materialized in memory)
The UniversalPattern matches everything
An unknown element in an XML Schema document.
The class is an implementation of the generic Resource object (typically an item in a collection) representing a resource whose type is not yet known - typically because it uses an unregistered file extension.
XPath 2.0 unordered() function
This class implements the function fn:unparcel(), which is a proposed function in XPath 4.0 to unwrap a sequence that has been wrapped as a parcel item
Implements the unparsed-entity-uri() function defined in XSLT 1.0 and the unparsed-entity-public-id() function defined in XSLT 2.0
This class is used to represent unparsed entities in the PullProvider interface
 
 
Implementation of fn:unparsed-text() - with one argument or two
 
Abstract superclass containing common code supporting the functions unparsed-text(), unparsed-text-lines(), and unparsed-text-available()
Class UnparsedTextIterator, iterates over a file line by line
 
This class implements th interface Resource.
An UnparsedTextURIResolver accepts an absolute URI and optionally an encoding name as input, and returns a Reader as its result.
An enumeration defining possible strategies for resolving unprefixed element names appearing as name tests in the steps of a path expression or XSLT match pattern
 
This class has a singleton instance which represents the complex type xdt:untyped, used for elements that have not been validated.
AtomizingIterator returns the atomization of an underlying sequence supplied as an iterator.
A specialist comparer that implements the rules for comparing an untypedAtomic value (always the first operand) to a numeric value (always the second operand)
An UntypedSequenceConverter is an expression that performs a cast on each member of a supplied sequence that is an untypedAtomic value, while leaving other items unchanged
A Converter that converts untyped atomic values to the required type, while leaving other values unchanged
Elaborator for an UntypedSequenceConverter
An UpdateAgent is a callback class that is called to handle a document after it has been updated.
Abstract evaluator for XQuery Update expressions.
Interface implemented by XQuery Update expressions, to evaluate an update expression by adding update primitives to a supplied pending update list.
Parser utility methods for the XQuery Update extensions
This class implements the fn:upper-case() function
 
This interface defines a method for checking whether a string is considered to be a valid URI.
Implement the fn:uri-collection() function (new in XQuery 3.0/XSLT 3.0).
Common declarations for BuildURI and ParseURI.
A set of query parameters on a URI passed to the collection() or document() function
A FilenameFilter that tests file names against a regular expression
This instruction corresponds to a single QName appearing within a use-attribute-sets attribute on a literal result element, xsl:element, or xsl:copy instruction.
 
 
Describes an xsl:use-package requirement from within a package, in terms of a name and a set of version ranges
An object belonging to this class represents an atomic type: either a built-in atomic type, or a user-defined atomic type.
A user-defined complex type (that is, any complex type other than xs:anyType)
This class represents a user-defined simple type or complex type as defined in XML Schema.
This object represents the compiled form of a user-written function (the source can be either an XSLT stylesheet function or an XQuery function).
 
This class represents a call to a user-defined function in the stylesheet or query.
Handle streaming for calls to user-defined functions Used only for XSLT streaming capability.
Run-time object representing a formal argument to a user-defined function
A UserFunctionReference is an expression in the form local:f#1 where local:f is a user-defined function.
A BoundUserFunction represents a user-defined function seen as a component.
A reference to a function; typically a forwards reference to a user-defined function in XQuery that has not yet been compiled.
Represents a SimpleType that is a list of a given SimpleType, known as its itemType.
A SchemaComponent is an object in a schema.
This class represents a used-defined simple type, as defined in the XML Schema specification.
A class that represents the XML Schema simple-type with variety union.
Function signatures (and pointers to implementations) of the functions available for use in static expressions (including use-when expressions) in XSLT 3.0 stylesheets
 
This is a filter inserted into the input pipeline for processing stylesheet modules, whose task is to evaluate use-when expressions and discard those parts of the stylesheet module for which the use-when attribute evaluates to false.
This class implements the static context used for evaluating use-when and other static expressions in XSLT 3.0 A new instance of this class is created for each use-when expression encountered; there are therefore no issues with reusability.
A class to hold some static constants and methods associated with processing UTF16 and surrogate pairs
This class defines properties of the UTF-8 character set
Specialized buffering UTF-8 writer.
A UType is a union of primitive (atomic, node, or function) item types.
This Validate class provides a command line interface that allows validation of a source document against a schema, and/or checking that a source schema is a valid schema.
This class implements the saxon:validate() extension function.
This class is used for a filter on the validation pipeline.
Interface implemented by instructions that have validation and type attributes
This class is a Saxon implementation of XMLReader that performs schema validation using Saxon's schema processor.
This class contains constants and static methods to manipulate the validation property of a type.
This class defines information about a validation episode
This exception indicates a failure when validating an instance against a type defined in a schema.
This exception indicates a failure when validating an instance against a type defined in a schema.
Enumeration class defining different schema validation (or construction) modes
This class represents a collection of parameter values for use in schema validation; it defines values for the parameters declared using the saxon:param XSD extension.
This class manages the receivers that do element content validation.
Class for collection validation statistics produced via s9api processing
Defines a class that is notified of validation statistics at the end of a validation episode
The is the Saxon implementation of the JAXP 1.3 ValidatorHandler interface.
This class in the Saxon implementation of the JAXP 1.3 Validator "interface" (which is actually defined as an abstract class).
Interface for reporting validation errors found during validation of an instance document against a schema.
ValueComparison: a boolean expression that compares two atomic values for equals, not-equals, greater-than or less-than.
Elaborator for a value comparison (such as A eq B), including the case where a general comparison is reduced to a value comparison by the optimiser
A value constraint represents the default or fixed value of an element declaration, attribute declaration, or attribute use
 
An xsl:value-of element in the stylesheet.
Represents any of the facets minInclusive, maxInclusive, minExclusive, maxExclusive
ValueTailIterator iterates over a base sequence starting at an element other than the first.
A Valve is a general-purpose component for use in a pipeline of receivers.
Variable reference: a reference to a variable.
 
The VendorFunctionLibraryEE represents additions to the set of Saxon vendor-supplied extension functions that are available only with the Saxon-EE edition
Implementation of vendor functions in the Saxon namespace, available in Saxon-HE because they are used internally.
Implementation of the function saxon:array-as-sequence-of-maps(array)
 
Implement saxon:dynamic-error-info
Implement saxon:has-local-namespaces.
Implement saxon:has-uniform-namespaces.
Implement saxon:is-whole-number
Implementation of the function saxon:map-as-sequence-of-maps(array)
 
The VendorFunctionLibraryPE represents additions to the set of Saxon vendor-supplied extension functions that are available only with the Saxon-PE and Saxon-EE editions
 
 
 
 
 
 
 
 
Implement the saxon:discard-document() function, which returns its argument unchanged, but with the side-effect of removing it from the document pool, making it eligible for garbage collection.
 
 
 
 
 
 
Ask whether an attribute node exists as a result of the expansion of default and fixed values defined in a schema.
 
Implement saxon:namespace-node extension function
 
 
 
 
 
 
Implement saxon:string-to-utf8 extension function
 
Implement saxon:tunnel-params extension function.
Extension function saxon:type-annotation, which returns the type annotation of a node or atomic value as an xs:QName value.
Implement saxon:unparsed-entities extension function
Implement saxon:valid-character extension function
An expression representing a nodeset that is a union, difference, or intersection of two other NodeSets
Elaborator for a Venn expression: that is A union B, A intersect B, or A except B
Class to handle streaming of union, intersect, and except expressions
Abstract pattern formed as the union, intersection, or difference of two other patterns; concrete subclasses are used for the different operators.
A helper class for EnterpriseConfiguration that handles license keys as issued for the Java platform.
 
The Version class holds the SAXON version information.
This is a filter inserted into the input pipeline for processing schema documents, whose task is to examine attributes such as vc:maxVersion and discard those parts of the schema document that are to be ignored because of those attributes.
This class represents the combination of an XSLT package name (that is, a URI) and a version number
Holds the values of an accumulator function for a virtual copy of a document (where the accumulator values are copies of those on the underlying document)
This class represents a node that is a virtual copy of another node: that is, it behaves as a node that's the same as another node, but has different identity.
VirtualCopier implements the XPath axes as applied to a VirtualCopy node.
This interface is implemented by NodeInfo implementations that act as wrappers on some underlying tree.
Implementation of TreeInfo for a Virtual Copy tree
This class represents a virtual copy of a node with type annotations stripped
Enumeration class giving the different visibility levels defined for components in XSLT 3.0
Indicates where the visibility property of a component came from
This class implements the function fn:void(), which is a proposed function for XPath 4.0.
A Watch represents a class that is interested in looking at nodes passing down a push pipeline.
A WatchMaker is a factory class for creating a Watch.
This class sits on a push pipeline and evaluates the passing element and attribute nodes.
 
 
A "where" clause in a FLWOR expression
This class represents the tuple stream delivered as the output of a where clause in a FLWOR expression: that is, it returns all the tuples in its input stream that satisfy a specified predicate.
This class represents the tuple stream delivered as the output of a where clause in a FLWOR expression: that is, it supplies all the tuples in its input stream that satisfy a specified predicate.
A compiled xsl:where-populated instruction (formerly xsl:conditional-content).
Generate streaming code for an xsl:where-populated instruction.
This class acts as a filter on a push pipeline, allowing through only those items that are deemed non-empty according to the rules of the xsl:where-populated instruction.
Handler for saxon:while elements in stylesheet.
 
A "where" clause in a FLWOR expression
This class represents the tuple stream delivered as the output of a while clause in a FLWOR expression: that is, it returns all the tuples in its input stream that satisfy a specified predicate, until it finds one that doesn't.
This class represents the tuple stream delivered as the output of a while clause in a FLWOR expression: that is, it supplies all the tuples in its input stream that satisfy a specified predicate until it finds one that doesn't.
This class provides helper methods and constants for handling whitespace
An iterator that splits a string on whitespace boundaries, corresponding to the XPath 3.1 function tokenize#1
Represents a whitespace facet on a schema-defined simple type
This abstract class represents a couple of different implementations of strings containing whitespace only.
WhitespaceStrippingPolicy is class defining the possible policies for handling whitespace text nodes in a source document.
A node in the XML parse tree representing a text node with compressed whitespace content
A class that represents an XML Schema Wildcard.
Implements an XQuery 3.0 sliding or tumbling window clause within a FLWOR expression
Information about a window: the items making up the window, as well as the variables relating to the start and end of the window, and the status of the winoow in relation to the processing of the current input sequence.
Implement a sliding or tumbling window clause of a FLWOR expression in tuple-pull mode.
Implement a sliding or tumbling window clause of a FLWOR expression in tuple-push mode.
An object derived from a xsl:with-param element in the stylesheet.
The saxon:with-pedigree function, new in Saxon 9.9.
Callback to create a VirtualNode that wraps a given NodeInfo
A WrappingIterator delivers wrappers for the nodes delivered by its underlying iterator.
A Java Iterator which wraps a supplied unfailing SequenceIterator
An array in the XDM data model.
 
The class XdmAtomicValue represents an item in an XPath sequence that is an atomic value.
This class contains a number of static methods that deliver implementations of the Collector interface suitable for use with streams processing XDM nodes and other items.
Unchecked exception that occurs when a collector method such as XdmCollectors.asAtomic() or XdmCollectors.asOptionalNode() is called, and the sequence contains more than one item.
An XdmDestination is a Destination in which an XdmNode is constructed to hold the output of a query or transformation: that is, a tree using Saxon's implementation of the XDM data model
The class XdmEmptySequence represents an empty sequence in the XDM Data Model.
The class XdmExternalObject represents an XDM item that wraps an external (Java or .NET) object.
The class XdmFunctionItem represents a function item
The class XdmItem represents an item in a sequence, as defined by the XDM data model.
A map in the XDM data model.
This class represents a node in the XDM data model.
Enumeration class defining the seven kinds of node defined in the XDM model
An iterator over an XPath sequence.
XdmStream extends the capabilities of the standard JDK Stream class.
Implementation of the fn:xdm-to-json function proposed for 4.0
A value in the XDM data model.
XHTMLEmitter is an Emitter that generates XHTML 1 output.
XHTML5Emitter is an Emitter that generates XHTML 5 output.
Filter to change elements in the XHTML, SVG, or MathML namespaces so they have no prefix (that is, to make these the default namespace).
This class performs URI escaping for the XHTML output method.
This class is used on the serialization pipeline to check that the document conforms to XML 1.0 rules.
This module contains data regarding the classification of characters in XML 1.0 and XML 1.1, and a number of interrogative methods to support queries on this data.
XMLEmitter is an Emitter that generates XML output to a specified destination.
XMLIndenter: This ProxyReceiver indents elements, by adding character data where appropriate.
XMLIndenter with extra functionality for Saxon-PE and Saxon-EE
This module constructs synthetically (that is, without reading an XML schema document) the schema components for the XML namespace
An unchecked exception, triggered when a user-supplied ErrorReporter requests that processing should be aborted
The XmlProcessingError class contains information about an error detected during compilation or execution of a stylesheet, query, XPath expression, or schema
The XmlProcessingException class is a concrete implementation of the XmlProcessingError interface that wraps an XPathException object.
The XmlProcessingIncident class is a concrete implementation of the XmlProcessingError interface that holds all the required information internally.
The class is an implementation of the generic Resource object (typically an item in a collection) representing an XML document
XMLStreamWriterDestination is a s9api Destination that writes output to a supplied XMLStreamWriter
Implement the XML to JSON conversion as a built-in function - fn:xml-to-json()
Streaming code for the xml-to-json() function
The root node of an XPath tree.
A node in the XML parse tree representing an XML element, character content, or attribute.
This interface must be implemented by any third-party object model that can be wrapped with a wrapper that implements the Saxon Object Model (the NodeInfo interface).
XOMWriter is a Receiver that constructs a XOM document from the stream of events
Function signatures (and pointers to implementations) of the functions defined in XPath 2.0
Function signatures (and pointers to implementations) of the functions defined in XPath 3.0 without the Higher-Order-Functions feature
Function signatures (and pointers to implementations) of the functions defined in XPath 3.1 without the Higher-Order-Functions feature
Function signatures (and pointers to implementations) of the functions defined in XPath 4.0
This interface sometimes represents an XPath atomic value where the Java comparison semantics (using the compareTo method) match the XPath equality and ordering semantics; and sometimes it represents a surrogate for an XPath atomic value, chosen so that the Java comparison semantics match the XPath rules.
An XPathCompiler object allows XPath queries to be compiled.
This class represents a context in which an XPath expression is evaluated.
This class represents a "major context" in which an XPath expression is evaluated: a "major context" object allows all aspects of the dynamic context to change, whereas a "minor context" only allows changes to the focus and the destination for push output.
The ThreadManager is used to manage asynchronous execution of xsl:result-document instructions in Saxon-EE.
This class represents a minor change in the dynamic context in which an XPath expression is evaluated: a "major context" object allows all aspects of the dynamic context to change, whereas a "minor context" only allows changes to the focus and the destination for push output.
Container for cached value of the last() function.
This object represents the dynamic XPath execution context for use in the free-standing Saxon XPath API.
This class provides a native Saxon API for free-standing evaluation of XPath expressions.
XPathEvaluator implements the JAXP API for standalone XPath processing (that is, executing XPath expressions in the absence of an XSLT stylesheet).
XPathException is used to indicate an error (static or dynamic) in an XPath expression, or in a query or stylesheet.
Subclass of XPathException used to report circularities
Subclass of XPathException used to report stack overflow
An XPathExecutable represents the compiled form of an XPath expression.
This class is a representation of an XPath Expression for use with the XPathEvaluator class.
The JAXP XPathExpression interface represents a compiled XPath expression that can be repeatedly evaluated.
Saxon implementation of the JAXP 1.3 XPathFactory
This class is an expression that calls an external function supplied using the JAXP XPathFunction interface
The XPathFunctionLibrary is a FunctionLibrary that supports binding of XPath function calls to instances of the JAXP XPathFunction interface returned by an XPathFunctionResolver.
Parser for XPath expressions and XSLT patterns.
 
 
A nested location: for use with XPath expressions and queries nested within some larger document.
 
An XPathSelector represents a compiled and loaded XPath expression ready for execution.
This interface defines methods that must be provided when Saxon's free-standing XPath API is used.
An object representing an XPath variable for use in the standalone XPath API.
XQCancelledException is an exception to indicate that the current XQuery processing is cancelled by the application through a cancel() request.
A connection (session) with a specific XQuery engine.
An event object that provides information about the source of a connection-related event.
An object that registers to be notified of events generated by a PooledXQConnection object.
XQConstants class provides constants that can be used in the XQJ API.
This interface represents a factory to obtain sequences, item objects and types.
An XQDataSource is a factory for XQConnection objects.
XQDynamicContext provides access to the dynamic context as defined in 2.1.2 Dynamic Context, XQuery 1.0: An XML Query Language.
An exception that provides information on XQJ, XQuery or other errors reported by an XQJ implementation.
This interface describes the execute immediate functionality for expressions.
This interface represents an item in the XDM.
This interface represents a common interface for accessing the values of an XQuery item.
The XQItemType interface represents an item type as defined in XQuery 1.0: An XML Query language.
XQMetaData interface provides information about the data source, in various aspects, such as the product name and version identification, supported features, specific behaviors, user information, product limits and so forth.
This interface describes an expression that can be prepared for multiple subsequent executions.
An exception that provides information on errors occurring during the evaluation of an xquery.
This interface represents an immutable item object obtained from an XQResultSequence using the getItem method.
This interface represents a sequence of items obtained as a result of evaluation XQuery expressions.
This interface represents a sequence of items as defined in the XDM.
The XQSequenceType interface represents a sequence type as XQuery 1.0: An XML Query language.
This class represents a frame in a stack trace, akin to the java.lang.StackTraceElement but for XQuery callstacks instead of Java.
This class represents the list of variables and their values in an error stack.
An XQStaticContext represents default values for various XQuery Static Context Components.
An XQueryCompiler object allows XQuery 1.0 queries to be compiled.
The XQueryEmitter is designed to serialize an XQuery that was originally embedded in an XML document.
An XQueryEvaluator represents a compiled and loaded query ready for execution.
An XQueryExecutable represents the compiled form of a query.
XQueryExpression represents a compiled query.
Saxon-EE version of XQueryExpression.
This class implements the saxon:xquery() extension function
A user-defined function in an XQuery module
Function annotation handler for annotations in the built-in namespace http://www.w3.org/2012/xquery.
XQueryFunctionBinder is an extension of the FunctionLibrary interface used for function libraries that contain user-written XQuery functions.
An XQueryFunctionLibrary is a function library containing all the user-defined functions available for use within a particular XQuery module: that is, the functions declared in that module, and the functions imported from other modules.
Inner class containing information about a reference to a function whose declaration has not yet been encountered.
This class defines extensions to the XPath parser to handle the additional syntax supported in XQuery
 
Parser extension for syntax in XQuery Update and/or XQuery 3.0 that is supported only in -EE.
Parser extension for syntax in XQuery Update and/or XQuery 3.0 that is supported only in Saxon-PE or -EE.
A code injector designed to support the -T tracing option in XQuery
A Simple trace listener for XQuery that writes messages (by default) to System.err
Function signatures (and pointers to implementations) of the functions defined in XQuery Update 1.0
An xs:alternative element in a schema (see draft XML Schema 1.1 Part 1)
An xs:annotation element in an XML Schema document
An xs:any element in an XML Schema document
An xs:anyAttribute element in an XML Schema document
An xs:assert or xs:assertion element in a schema (see draft XML Schema 1.1 Part 1)
Define a customized XPath evaluator which injects code into the XPath code generation; this has the effect for a complex-type XSDAssert of modifying the expression so that instead of returning a boolean, it returns a list of nodes that contribute to the invalidity of the assertion.
An xs:attribute element in a schema document
An xs:attributeGroup element in an XML Schema document
An xs:complexContent element in an XML Schema Document
An xs:restriction element that is a child of xs:complexContent within an XML Schema document
An xs:complexType element in an XML Schema document
An xs:sequence, xs:choice, or xs:all element in an XML Schema document
An element in an XML Schema document defining the default open content
An xs:documentation or xs:appinfo element in an XML Schema document
An xs:element element in a schema document
An xs:extension element in a schema document
An element in an XML Schema document representing a facet, for example minLength or pattern or enumeration: any facet except assertion, which is represented by the XSDAssert class
An xs:field or xs:selector element in an XML Schema document
An xs:group element in an XML Schema document
An xs:unique, xs:key, or xs:keyref element in an XML Schema document
An xs:import element in an XML Schema document
An xs:include element in an XML Schema document
This class represents an xs:list element in a schema document.
An element in an XML Schema document representing a notation declaration
An element in an XML Schema document defining the default open content
An xs:override element in an XML Schema Document
An xs:redefine element in an XML Schema Document
An xs:schema element in an XML Schema document
An xs:simpleContent element in an XML Schema document
An xs:restriction element in an XML Schema document that appears as a child of an xs:simpleContent element
An xs:simple-type element in an XML Schema document
An xs:restriction element in an XML Schema Document, whose parent element is an xs:simpleType
An xs:union element in an XML Schema document
This class processes attributes such as xsi:schemaLocation and xsi:type.
This module constructs synthetically (that is, without reading an XML schema document) the schema components for the XML namespace
Represents an xsl:accept element in an XSLT 3.0 package manifest.
Handler for xsl:accept and xsl:expose elements in stylesheet.
Handler for xsl:accumulator elements in a stylesheet (XSLT 3.0).
Handler for xsl:accumulator-rule elements in a stylesheet (XSLT 3.0).
An xsl:analyze-string elements in the stylesheet.
An xsl:apply-imports element in the stylesheet
An xsl:apply-templates element in the stylesheet
xsl:array element in stylesheet - proposed XSLT 4.0 instruction The xsl:array element has the same content model as xsl:sequence.
xsl:array-member element in stylesheet - originally a Saxon extension now retained for backwards compatibility, for the time being.
An xsl:assert element in an XSLT 3.0 stylesheet.
xsl:attribute element in stylesheet.
An xsl:attribute-set element in the stylesheet.
A xsl:break element in the stylesheet
Abstract class containing functionality common to xsl:break and xsl:next-iteration
An xsl:call-template element in the stylesheet
Handler for xsl:catch elements in stylesheet.
An xsl:character-map declaration in the stylesheet.
An xsl:choose element in the stylesheet.
An xsl:choose or xsl:switch element in the stylesheet.
An xsl:comment elements in the stylesheet.
An xsl:context-item element in the stylesheet.
Handler for xsl:copy elements in stylesheet.
An xsl:copy-of element in the stylesheet.
Handler for xsl:decimal-format elements in stylesheet.
An xsl:document instruction in the stylesheet.
An xsl:element element in the stylesheet.
Handler for xsl:evaluate elements in XSLT 3.0 stylesheet.
Represents an xsl:expose element in an XSLT 3.0 package manifest.
xsl:fallback element in stylesheet.
Handler for xsl:for-each elements in stylesheet.
Handler for xsl:for-each-group elements in stylesheet.
Handler for xsl:fork elements in XSLT 3.0 stylesheet.
Handler for xsl:function elements in stylesheet (XSLT 2.0).
Abstract class to represent an xsl:include or xsl:import element in the stylesheet.
This class defines common behaviour across xsl:variable, xsl:param, and xsl:with-param
An xsl:global-context-item declaration in the stylesheet
An xsl:param element representing a global parameter (stylesheet parameter) in the stylesheet.
Handler for xsl:variable elements appearing as a child of xsl:stylesheet.
Handler for xsl:if elements in stylesheet.
xsl:import element in the stylesheet.
Compile-time representation of an xsl:import-schema declaration in a stylesheet
xsl:include element in the stylesheet.
The class implements a xsl:item-type declaration in a stylesheet.
Handler for xsl:iterate elements in stylesheet.
Handler for xsl:key elements in stylesheet.
Common superclass for XSLT elements whose content template produces a text value: xsl:text, xsl:value-of, xsl:attribute, xsl:comment, xsl:namespace, and xsl:processing-instruction
An xsl:param element representing a local parameter (template or function parameter) in the stylesheet.
Handler for xsl:variable elements acting as local variable declarations in a stylesheet.
Handler for xsl:map instructions in an XSLT 3.0 stylesheet.
Handler for xsl:map-entry instructions in an XSLT 3.0 stylesheet.
Handler for xsl:matching-substring and xsl:non-matching-substring elements in stylesheet.
Handler for xsl:merge elements in stylesheet.
 
An xsl:merge-key element in the stylesheet.
Implements the xsl:merge-source element available in XSLT 3.0 as a child of xsl:merge.
An xsl:message element in the stylesheet.
Handler for xsl:mode elements in stylesheet.
Class representing xsl:stylesheet, xsl:transform, or xsl:package
An xsl:namespace element in the stylesheet.
An xsl:namespace-alias element in the stylesheet.
An xsl:next-iteration element in the stylesheet
An xsl:next-match element in the stylesheet
An xsl:number element in the stylesheet.
An xsl:on-completion element in the stylesheet (XSLT 3.0).
An xsl:on-empty element in the stylesheet.
An xsl:on-non-empty element in the stylesheet.
A function library that recognizes the function name "xsl:original", which may appear within xsl:override
Handler for xsl:otherwise elements in stylesheet.
An xsl:output element in the stylesheet.
An xsl:output-character element in the stylesheet.
Represents an xsl:override element in a package manifest.
Handler for xsl:package elements.
Handler for xsl:perform-sort elements in stylesheet (XSLT 2.0).
An xsl:preserve-space or xsl:strip-space elements in stylesheet.
An xsl:processing-instruction element in the stylesheet.
An xsl:result-document element in the stylesheet.
An xsl:sequence element in the stylesheet.
An xsl:sort element in the stylesheet.
 
Handler for xsl:source-document element in XSLT 3.0 stylesheet.
An xsl:stylesheet or xsl:transform element in the stylesheet.
An xsl:switch element in the stylesheet (XSLT 4.0).
Function signatures (and pointers to implementations) of the functions defined in XSLT 3.0.
An Xslt30Transformer represents a compiled and loaded stylesheet ready for execution.
Function signatures (and pointers to implementations) of the functions defined in XSLT 4.0.
An XsltCompiler object allows XSLT stylesheets to be compiled.
This class is an extension of the Controller class, used when executing XSLT stylesheets.
An xsl:template element in the style sheet.
An XsltExecutable represents the compiled form of a stylesheet.
Inner class containing information about a global parameter to a compiled stylesheet
Handler for xsl:text elements in stylesheet.
An XsltPackage object represents the result of compiling an XSLT 3.0 package, as represented by an XML document containing an xsl:package element.
Handler for xsl:try elements in stylesheet.
A code injector that wraps every expression (other than a literal) in a TraceExpression, which causes a TraceListener to be notified when the expression is evaluated
A Simple trace listener for XSLT that writes messages (by default) to System.err
An XsltTransformer represents a compiled and loaded stylesheet ready for execution.
Handler for xsl:use-package elements in stylesheet.
An xsl:value-of element in the stylesheet.
Handler for xsl:when elements in stylesheet.
An xsl:where-populated element in the stylesheet.
An xsl:with-param element in the stylesheet.
A value of type xs:yearMonthDuration (or a subtype thereof).
An implementation of sequences as a list-of-lists, where the sublists at the end of the master list tend to be small, and the sublists at the start tend to be larger (or the other way around if the list is built by prepending items rather than appending them).
A (Java) Iterator over a ZenoChain
An immutable XDM sequence implemented as a ZenoChain.
A SequenceIterator over a ZenoSequence
A ZenoString is an implementation of UnicodeString that comprises a list of segments representing substrings of the total string.
A sequence value implemented extensionally.
A value that is a sequence containing zero or one items.