OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Namespace: what's the correct usage?



Martin Gudgin wrote:
>
> I left out the top-level element decl for conciseness. How's this;
>
> <xs:schema xmlns:xs='http://www.w3.org/2001/XMLSchema'
>            xmlns:this='urn:example.org.people'
>            targetNamespace='urn:example.org.people' >
>
>   <xs:complexType name='person' >
>     <xs:sequence>
>       <xs:element name='given' type='xs:string' />
>       <xs:element name='family' type='xs:string' />
>     </xs:sequence>
>   </xs:complexType>
>
>   <xs:element name='person' type='this:person' />
>
> </xs:schema>
>
> It's *both* an element and a complex type.
>
it gets very difficult to follow what is being said when the same name is
being used for two separate things, one an element and another a
complexType.

it seems to me that:

1) the "given" and "family" elements _are not_ locally scoped to the
"person" element.

this is completely akin to:

<!ENTITY % person.model "(given,family)">
<!ELEMENT given (#PCDATA)>
<!ELEMENT family (#PCDATA)>

<!ELEMENT person %person.model;>

in this case I can also do:

<!ELEMENT another.person %person.model;>

similarly

<xs:element name="another.person" type="this:person"/>

2) it also looks like all these elements are in the same namespace (as I
suggested).

-Jonathan