> I had somewhere the same problem, i.e. the (painful :-) dilemma:
>
> a) either fine control of the number of occurrences (obtained via
> <sequence>);
> b) or unconstrained order (obtained via <choice maxOccurs="unbounded">).
>
> Maybe we should suggest W3C (for the XSD 1.1) the "natural" extension,
Or even more elegant: generalising a bit the <all> construct, like:
<all>
<element name="e(p)" minOccurs="n(p)" maxOccurs="m(p)">... </element>
...
<element name="e(q)" minOccurs="n(q)" maxOccurs="m(q)">... </element>
</all>
where n(i) >= 0 and m(i) >= n(i).
Feasable ?
Dan
> something like:
>
> <choice minOccurs="x" maxOccurs="y">
> <element name="e(p)" minOccurs="n(p)" maxOccurs="m(p)">... </element>
> ...
> <element name="e(q)" minOccurs="n(q)" maxOccurs="m(q)">... </element>
> </choice>
>
> where the elements are allowed in any order, but WITH a constrained number of
> occurrences.
>
> In this case, x and y are imposed (i.e. they could disappear ?):
>
> x = sum (n(i), i = p..q)
> y = sum (m(j), j = p.. q)
>
>
> What do you think ?
>
> Dan
>
> -----------------------------------------------------------------------
> Dan Matei, director
> CIMEC - Institutul de Memorie Culturala [Institute for Cultural Memory]
> Piata Presei Libere nr. 1, CP 33-90
> 013701 Bucuresti [Bucharest], Romania
> tel. (+40-21) 317 90 72; fax (+40-21) 317 90 64
> www.cimec.ro
>
>
> -----Original Message-----
> From: Joe Altimus <[log in to unmask]>
> To: [log in to unmask]
> Date: Fri, 8 Aug 2008 14:53:00 -0700
> Subject: Re: [MODS] schema use of xsd:sequence to define children of the
> cartographics element
>
> > OK, I think I get it. There is no good reason for rigidly ordering these
> > elements, we've just run into a limitation of the XML Schema standard.
> >
> > On Fri, Aug 1, 2008 at 6:55 AM, Ray Denenberg, Library of Congress <
> > [log in to unmask]> wrote:
> >
> > > <cartographics> is defined as xsd:sequence because <scale> and
> > > <projection>
> > > are not repeatable, but <coordinates> is repeatable.
> > >
> > > <all> requires that each element occur zero or one time and would not
> allow
> > > multiple <coordinates> elements.
> > >
> > > <choice maxOccurs="unbounded"> (which MODS uses in cases without such
> > > constraints) would not constrain <scale> and <projection> to maximum one
> > > occurence.
> > >
> > > (Contrast this for example with <subject> ........
> > >
> > > <choice maxOccurs="unbounded">
> > > <element name="topic"/>
> > > <element name="geographic"/>
> > > <element name="temporal"/>
> > > <element name="titleInfo"/>
> > >
> > > etc.
> > >
> > > </choice>
> > >
> > > etc.
> > >
> > > .....any of these subject categories may occur any number of times,
> > > including zero, and the whole set may occur in any order.)
> > >
> > >
> > > ----- Original Message -----
> > > From: "Joe Altimus" <[log in to unmask]>
> > > To: <[log in to unmask]>
> > > Sent: Thursday, July 31, 2008 5:30 PM
> > > Subject: [MODS] schema use of xsd:sequence to define children of the
> > > cartographics element
> > >
> > >
> > > I notice that the MODS schema uses xsd:sequence to define the children
> > > of the cartographics element:
> > >
> > > <xsd:sequence>
> > > <xsd:element name="scale" minOccurs="0" type="xsd:string"/>
> > > <xsd:element name="projection" minOccurs="0"
> > > type="xsd:string"/>
> > > <xsd:element name="coordinates" minOccurs="0"
> > > maxOccurs="unbounded" type="xsd:string"/>
> > > </xsd:sequence>
> > >
> > > However, an example of <cartographics> in the MODS User Guidelines
> > > does not conform to the schema:
> > >
> > > <subject>
> > > <cartographics>
> > > <coordinates>E 72°--E 148°/N 13°--N 18°</coordinates>
> > > <scale>1:22,000,000</scale>
> > > <projection>Conic proj</projection>
> > > </cartographics>
> > > </subject>
> > >
> > > so I wonder if the example is wrong or the Schema (xsd:all instead of
> > > xsd:sequence)? Is there a strong reason why the children should occur
> > > in a rigid order in this case?
> > >
> > > Joe Altimus
> > > Arizona State University Libraries
> > >
|