Expand description
Hand-written recursive-descent parser for identity-constraint XPath.
Parses the restricted XPath subset used in XSD <selector> and <field> expressions
over pre-lexed tokens from IdXPathLexer.
Grammar:
Selector ::= Path ( '|' Path )*
Field ::= Path ( '|' Path )*
Path ::= ('.' '//')? Step ( '/' Step )*
Step ::= '.' | '@' NameTest | AxisName '::' NameTest | NameTest
NameTest ::= '*' | NCName ':' '*' | NCName ':' NCName | NCName