Braced URI literal.
EQName, so either a URIQualifiedName or a QName.
NCName, that is, a non-colon name.
Binding of a variable name to an expression.
XPathElem that can introduce one or more variable bindings.
XPath 3.0 AST.
XPath 3.0 AST. The root of the type hierarchy is XPathElem. It offers the ElemApi query API.
The purpose of this AST is as follows:
Having such an AST of a successfully parsed XPath expression, it must be easy to reliably find used namespace prefixes, for example.
TODO Improve several class names.
TODO XPath 3.1.
Names, as per the XML specification.
Names, as per the XML specification. See for example https://www.w3.org/TR/REC-xml/#NT-Name.
Only characters in the Unicode BMP (max. ) are considered. So the range from #x10000 to #xEFFFF is not recognized as valid name characters in this implementation.
The functions of this class must be fast, because they are typically called very many times during parsing of XPath expressions.
Classes like NCName lean on this object. An NCName is an XML name without colon.
Abstract syntax tree of XPath expressions, as produced by the parsers specified in the 'parse' package.