This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
The current BNF that describes the XPath subset used for SML identity constraints allows the deref() function. But it doesn't allow the form prefix:deref(). (The prefix is needed, given that deref() belongs to the SML functions namespace.) Suggest to replace occurrences of 'deref(' with (NCName ':')? 'deref('
Decision is to fix in FPWD and Michael will open another issue to discuss whether to remove this BNF in favor of referencing the XPath spec and using prose.
changed the BNF to: Selector ::= Path ( '|' Path)* Path ::= ('.//')? Step ( '/' Step)* | DerefExpr DerefExpr ::= (NCName ':')? 'deref(' Step (/Step)* ')' ('/'Step)* | (NCName ':')? 'deref(' DerefExpr ')' (/Step)* Step::= '.' | NameTest NameTest ::= QName |'*' | NCName ':' '*'