[xquery-talk] fn:in-scope-prefixes

Ronald Bourret rpbourret at rpbourret.com
Wed Feb 14 20:21:57 PST 2007

Why wouldn't the values be distinct? If two ancestors of the element 
both have namespace declarations that use the same prefix, the 
declaration that is closer to the element masks the declaration that is 
closer to the root. Thus, there cannot be two in-scope namespaces that 
use the same prefix.

-- Ron

James A. Robinson wrote:
> The XQuery 1.0 and XPath 2.0 Functions and Operators specification
> has this to say about fn:in-scope-prefixes:
>   11.2.6 fn:in-scope-prefixes
>   fn:in-scope-prefixes($element as element()) as xs:string*
>   Summary: Returns the prefixes of the in-scope namespaces for
>   $element. For namespaces that have a prefix, it returns the prefix
>   as an xs:NCName. For the default namespace, which has no prefix,
>   it returns the zero-length string.
> it does not promise that the xs:string* response will be distinct values.
> Do people have any pointers to anything which might indicate whether or
> not the function is or in not supposed to return unique values?
> I had originally assumed the set would be unique, but reading that
> spec paragraph leaves me unsure.

More information about the talk mailing list