Package net.sf.saxon.pattern
Interface QNameTest
- All Known Implementing Classes:
AnyNodeTest
,LocalNameTest
,NamespaceTest
,NameTest
,NameTestUnion
,SameNameTest
,UnionQNameTest
public interface QNameTest
Interface for tests against a QName. This is implemented by a subset of NodeTests, specifically
those that are only concerned with testing a name. It is used for matching error
codes against the codes specified in a try/catch clause, and also to match component names
in xsl:accept and xsl:expose.
The various implementations of QNameTest typically match a node kind as well as node name. This
interface, however, is concerned only with matching of QNames, and the ability of an implementation
to match a node kind as well is redundant.
-
Method Summary
Modifier and TypeMethodDescriptionExport the QNameTest as a string for use in a SEF file (typically in a catch clause).boolean
matches
(StructuredQName qname) Test whether the QNameTest matches a given QNameboolean
matchesFingerprint
(NamePool namePool, int fp) Test whether the QNameTest matches a given fingerprint
-
Method Details
-
matches
Test whether the QNameTest matches a given QName- Parameters:
qname
- the QName to be matched- Returns:
- true if the name matches, false if not
-
matchesFingerprint
Test whether the QNameTest matches a given fingerprint- Parameters:
namePool
- the name poolfp
- the fingerprint of the QName to be matched- Returns:
- true if the name matches, false if not
-
exportQNameTest
String exportQNameTest()Export the QNameTest as a string for use in a SEF file (typically in a catch clause).- Returns:
- a string representation of the QNameTest, suitable for use in export files. The format is a sequence of alternatives, space-separated, where each alternative is one of '*', '*:localname', 'Q{uri}*', or 'Q{uri}local'.
-