RE: Error in Primer? ... xpath expressions in keys

Hi Roger,

<snip/>

> Does that sound reasonable?  Well, there's a problem.  Look at the
> schema again.  The two elements, parts and part are "local" elements.
> By definition, only global elements are "in the namespace".  So
> {http://www.example.com/Report}:parts and
> {http://www.example.com/Report}:part do not exist.  Rather, the two
> elements are in "no namespace".
>

The example in the Primer has elementFormDefault="qualified".  Local,
qualified elements are "in the namespace", so the Primer example is correct.


<snip/>
>
> I *think* that the way to do it is to declare a namespace prefix and
> assign it to no-namespace:
>
>    xmlns:bitBucket=""
>
> and then qualify parts and part with bitBucket:
>
>  <selector xpath="bitBucket:parts/bitBucket:part"/>
>

This is not valid according to the Namespaces rec. You can make the default
namespace an empty string (e.g. xmlns=""), but not a prefix.

If the elements involved are unqualified, you cannot use a default namespace
for the XML Schema namespace; you are forced to map a prefix to it.  You
would then leave the element names in the XPath unprefixed.  In the absence
of a default namespace declaration, unprefixed names are "in no namespace."


Hope that helps.

Priscilla


Priscilla Walmsley
Vitria Technology

Received on Friday, 13 July 2001 15:12:29 UTC