See: Description
Interface | Description |
---|---|
PatternFinder |
This interface enables a client to find all nodes in a document that match a particular pattern.
|
PatternParser |
Created by IntelliJ IDEA.
|
QNameTest |
Interface for tests against a QName.
|
SchemaNodeTest |
Marker interface for schema-element() and schema-attribute() node tests
|
Class | Description |
---|---|
AncestorQualifiedPattern |
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.
|
AnchorPattern |
This is a special pattern that matches the "anchor node"; it is not used for XSLT patterns,
but for the selectors that arise when evaluating XPath expressions in streaming mode; the anchor
node is the context node for the streamed XPath evaluation.
|
AnyChildNodeTest |
An AnyChildNodePattern is the pattern node(), which matches any node except a root node,
an attribute node, or a namespace node: in other words, any node that is the child of another
node.
|
AnyNodeTest |
NodeTest is an interface that enables a test of whether a node has a particular
name and type.
|
BooleanExpressionPattern |
A BooleanExpressionPattern is a pattern of the form ?{ Expr } introduced in XSLT 3.0.
|
CombinedNodeTest |
A CombinedNodeTest combines two nodetests using one of the operators
union (=or), intersect (=and), difference (= "and not").
|
ConditionalPattern |
A ConditionalPattern tests a node against one of a number of patterns depending on the value of a condition.
|
ContentTypeTest |
NodeTest is an interface that enables a test of whether a node matches particular
conditions.
|
DocumentNodeTest |
A DocumentNodeTest implements the test document-node(element(~,~))
|
EmptySequenceTest |
NodeTest is an interface that enables a test of whether a node has a particular
name and type.
|
ExceptPattern |
A pattern formed as the difference of two other patterns
|
GeneralNodePattern |
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.
|
GeneralPositionalPattern |
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.
|
IdrefTest |
IdrefTest is a test that cannot be represented directly in XPath or
XSLT patterns, but which is used internally for matching IDREF nodes: it tests
whether the node has the is-idref property
|
IntersectPattern |
A pattern formed as the difference of two other patterns
|
ItemTypePattern |
A ItemTypePattern is a pattern that consists simply of an ItemType.
|
LocalNameTest |
NodeTest is an interface that enables a test of whether a node has a particular
name and type.
|
NamespaceTest |
NodeTest is an interface that enables a test of whether a node has a particular
name and type.
|
NameTest |
NodeTest is an interface that enables a test of whether a node has a particular
name and type.
|
NodeKindTest |
NodeTest is an interface that enables a test of whether a node has a particular
name and kind.
|
NodeSetPattern |
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.
|
NodeTest |
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.
|
Pattern |
A Pattern represents the result of parsing an XSLT pattern string.
|
PatternMaker |
This is a singleton class used to convert an expression to an equivalent pattern.
|
PatternParser20 |
Parser for XSLT patterns.
|
PatternSponsor |
The PatternSponsor class allows a Pattern to be treated like an expression.
|
PatternThatSetsCurrent |
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()
|
PatternWithPredicate |
Class for handling patterns with simple non-positional boolean predicates
|
SimplePositionalPattern |
A SimplePositionalPattern 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.
|
UnionPattern |
A pattern formed as the union (or) of two other patterns
|
UnionQNameTest |
A QNameTest that is the union of a number of supplied QNameTests
|
VennPattern |
Abstract pattern formed as the union, intersection, or difference of two other patterns;
concrete subclasses are used for the different operators
|
This package provides classes associated with XSLT pattern handling.
The principal classes are:
Pattern:
This represents an XSLT Pattern. There is a static method Pattern.make() which is
used to construct a Pattern from a String (it is a factory method rather than a
constructor, because it typically returns some subclass of Pattern according
to the syntax supplied). Subclasses of Pattern represent different kinds of pattern
such as LocationPathPattern and IDKeyPattern. What they all have in common is a match()
method, which determines whether a given node matches the pattern. A pattern is
not in itself an Expression, but the class PatternSponsor
is used
to wrap a pattern making it look like an expression for the benefit of the static analysis
(allowing the same mechanisms to be used for example to find all the references to a variable).
NodeTest:
This represents a NodeTest within a step of an XPath expression. A NodeTest performs several
roles: as well as its use in conjuction with an axis to form a step of a path expression,
it acts as an ItemType used in handling type checking of nodes, and (wrapped in a NodeTestPattern)
it acts as an XSLT pattern for use in constructs such as the match
attribute of
xsl:template
and xsl:key
.
A NodeTest is used directly to implement simple patterns such as match="item"
or match="*"
. There are several subclasses of NodeTest, depending on the conditions
to be matched: node type, node name, namespace URI, and so on. The class AnyNodeTest matches any node,
while NoNodeTest matches nothing. NodeTests can also be combined using the operators of intersection,
difference, and union, to describe the more complex types that are sometimes computed by the type
checking machinery.
Michael H. Kay
Saxonica Limited
9 February 2005
Copyright (c) 2004-2013 Saxonica Limited. All rights reserved.