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?




----- Original Message -----
From: "Jonathan Borden" <jborden@mediaone.net>
To: "Martin Gudgin" <marting@develop.com>; "Kohsuke KAWAGUCHI"
<kohsukekawaguchi@yahoo.com>; <xml-dev@lists.xml.org>
Sent: Saturday, May 19, 2001 8:35 PM
Subject: RE: Namespace: what's the correct usage?


> Martin Gudgin wrote:
>
> > ----- Original Message -----
> > From: "Jonathan Borden" <jborden@mediaone.net>
>
> > >
> > > why would anyone want to complicate this with different namespaces for
> > each
> > > element of the structure?
> >
> > I wouldn't 'complicate it with different namespaces for each
> > element in the
> > structure'. I would qualify the top-level element ( person ) and
> > not qualify
> > the children. This seems the most natural mapping to
>
> but that means there are (at least potentially) _two_ namespaces for the
> structure, one for the qualified top level element and another for the
> unprefixed children.

The *unqualified* children are always in 'no namespace'. Assume there is an
xmlns='' on the qualified element if that helps...

>
>
> >
> > package example.org.person;
> >
> > public class person
> > {
> >     String given;
> >     String family;
> > }
> >
> > to me at least...
>
> The difference is that in XML elements are first class entities, that is
the
> "given" element is not declared within the scope of the "person" class.

But attributes are declared in the scope of their owner element. Why not
child elements? This is the crux of the question I think. XML Schema allows
me to say

<complexType name='person'>
  <sequence>
    <element name='given' type='string' />
    <element name='family' type='string' />
  </sequence>
</complexType>

and the given and family elements *are* declared in the scope of the person
'class'

Regards

Martin Gudgin
DevelopMentor