W3C home > Mailing lists > Public > www-xpath-comments@w3.org > January to March 2000

Re: Request for clarification, possible spec defect

From: James Clark <jjc@jclark.com>
Date: Fri, 24 Mar 2000 12:05:27 +0700
Message-ID: <38DAF797.E86EF796@jclark.com>
To: gmarcy@us.ibm.com
CC: www-xpath-comments@w3.org
A FunctionName is a QName and can contain a colon.

I think it would be clearest to add a sentence saying "If the character
following a QName (possibly after any intervening ExprWhitespace) is (,
then the token must be recognized as a FunctionName."

The current wording is almost defensible because the grammar for QName
in the Namespaces Rec ends with NCName, thus any occurrence of a QName
followed by a ( is also an instance of an NCName followed by (.

gmarcy@us.ibm.com wrote:
> I have run across the following inconsistency in the spec:
> In section "3.7 Lexical Structure", it says the following:
>         "If the character following an NCName (possibly after intervening
> ExprWhitespace) is (, then the token
>         must be recognized as a NodeType or a FunctionName."
> and
>         "Otherwise, the token must not be recognized as a MultiplyOperator,
>  an OperatorName, a NodeType, a
>         FunctionName, or an AxisName."
> However, the production for FunctionName reads:
>     [35] FunctionName ::= QName - NodeType
> So the question is "Can a FunctionName contain a ':' character?"  If it
> can, then the earlier prose needs to
> say that the '(' can follow a QName, not just an NCName.  If not, then the
> production for FunctionName
> should be "FunctionName ::= NCName - NodeType".
> Comments?
> Glenn Marcy
> Technical Consultant
> XML Technology Group, IBM
Received on Friday, 24 March 2000 00:06:23 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 20:02:13 UTC