- From: Michael Kay <mike@saxonica.com>
- Date: Mon, 25 Jun 2018 08:57:11 +0100
- To: Mukul Gandhi <gandhi.mukul@gmail.com>
- Cc: public-qt-comments <public-qt-comments@w3.org>
The reason was to allow XPath expressions to be written without any dependency on an externally-defined namespace context.
For example it allows the new fn:path() function to generate a path that is context-independent.
Of course the syntax is more suited to software-generated XPath expressions than to human-written ones. But even with hand-written XPath, I find that if I'm only going to use a namespace once it's often convenient to use the new syntax, for example in a function call
<xsl:message>Processing element {name()} on line {Q{http://saxon.sf.net/}line-number}</xsl:message>
Michael Kay
Saxonica
> On 25 Jun 2018, at 06:56, Mukul Gandhi <gandhi.mukul@gmail.com> wrote:
>
> Hi all,
> XPath 3.0 seems to have introduced the following new "XML name" syntax,
>
> EQName ::= QName | URIQualifiedName
> URIQualifiedName ::= BracedURILiteral NCName
> BracedURILiteral ::= "Q" "{" [^{}]* "}"
>
> The URIQualifiedName seems to be new in XPath 3.0. What was the reason of introducing this? I feel, that QName is all that is needed.
>
>
>
> --
> Regards,
> Mukul Gandhi
Received on Monday, 25 June 2018 07:58:08 UTC