xsl-list
[Top] [All Lists]

Re: [xsl] are all strings in a sequence valid potential QNames

2010-02-04 03:13:53
At 2010-02-04 09:04 +0000, Andrew Welch wrote:
> Just to check that by "valid potential QName" you mean a string that is in
> the lexical space of xs:QName and will therefore constitute a valid QName
> provided the prefix is in scope?
>
> ($x castable as xs:QName) will not work because (a) it also tests whether
> the prefix is in scope, and (b) to avoid the issues of it therefore being
> context-sensitive, the W3C spec says this is only allowed if the argument
> ($x) is a string literal.
>
> So you do need to use the regex approach.

Could you do a  fn:prefix-from-QName($x) = fn:in-scope-prefixes(.)
check before doing the castable as check?

Nope:

  http://www.w3.org/TR/2007/REC-xpath20-20070123/#id-castable
  "[if] the input argument of the expression is of type xs:string but it is
   not a literal string, the result of the castable expression is false."

I hope this helps.

. . . . . . . . . . . . Ken


--
XSLT/XQuery/XPath training after http://XMLPrague.cz 2010-03-15/19
XSLT/XQuery/XPath training:   San Carlos, California 2010-04-26/30
Vote for your XML training:   http://www.CraneSoftwrights.com/s/i/
Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/s/
Training tools: Comprehensive interactive XSLT/XPath 1.0/2.0 video
Video lesson:    http://www.youtube.com/watch?v=PrNjJCh7Ppg&fmt=18
Video overview:  http://www.youtube.com/watch?v=VTiodiij6gE&fmt=18
G. Ken Holman                 mailto:gkholman(_at_)CraneSoftwrights(_dot_)com
Male Cancer Awareness Nov'07  http://www.CraneSoftwrights.com/s/bc
Legal business disclaimers:  http://www.CraneSoftwrights.com/legal


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>