- From: Dare Obasanjo <dareo@microsoft.com>
- Date: Fri, 8 Mar 2002 19:08:32 -0800
- To: "Jeni Tennison" <jeni@jenitennison.com>
- Cc: "Henry S. Thompson" <ht@cogsci.ed.ac.uk>, <Simon.Cox@csiro.au>, <xmlschema-dev@w3.org>
> -----Original Message-----
> From: Jeni Tennison [mailto:jeni@jenitennison.com]
> Sent: Friday, March 08, 2002 2:07 AM
> To: Dare Obasanjo
> Cc: Henry S. Thompson; Simon.Cox@csiro.au; xmlschema-dev@w3.org
> Subject: Re: Derivation by restriction from <any>
>
>
> Hi Dare,
>
> > Upon investigating the W3C XML Schema Structures specification I've
> > had some difficulty locating where it specifies that one-to-many
> > particle derivations are acceptable. I would appreciate a
> pointer to
> > where in the recommendation it mentions that this is possible. From
> > what I've read[0] particle derivation is a one-to-one affair.
>
> The specific derivation from this example is a derivation by
> restriction from the base model group:
>
> <sequence>
> <any maxOccurs="unbounded"/>
> </sequence>
>
> to the derived model group:
>
> <sequence>
> <element name="e1" type="string"/>
> <element name="e2" type="integer" minOccurs="0"/>
> <element name="e3" type="date" minOccurs="0"/>
> </sequence>
>
> By the rules of the Schema Component Constraint: Particle Valid
> (Restriction)
> (http://www.w3.org/TR/xmlschema-1/#cos-particle-restrict),
> the sequence in the base model group is "pointless" so the
> base model group is equivalent to:
>
I am curious as to what rules you used to come to that conclusion. The
original XML schema fragment was
<complexType name="basetype">
<sequence>
<any maxOccurs="unbounded"/>
</sequence>
</complexType>
<complexType name="newtype">
<complexContent>
<restriction base="my:basetype">
<sequence>
<element name="e1" type="string"/>
<element name="e2" type="integer" minOccurs="0"/>
<element name="e3" type="date" minOccurs="0"/>
</sequence>
</restriction>
</complexContent>
</complexType>
The rules for pointlessness for an xs:sequence are
<sequence>
One of the following must be true:
2.2.1 {particles} is empty. [Dare - Nope, not in this case]
2.2.2 All of the following must be true:
2.2.2.1 The particle within which this <sequence> appears has
{max occurs} and {min occurs} of 1. [Dare - the sequence does not
appear in a particle. Now it is possible that somewhere in the spec
defines some implicit particle similar to how there is an implicit
xs:complexContent child of a xs:complexType when it has particles as
children. If this is the case I'd appreciate it if you could point this
out]
Thanks.
<snip stuff on restricting xs:any to xs:sequence>
--
THINGS TO DO IF I BECOME AN EVIL OVERLORD #230
I will not procrastinate regarding any ritual granting immortality.
Received on Friday, 8 March 2002 22:09:19 UTC