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: [xml-dev] <all> and minOccurs="0" Problem



On 14 Sep 2001, Henry S. Thompson wrote:

> Eddie <eddie@allette.com.au> writes:
>
> > > > -----Original Message-----
> > > > From: Radek Wisniewski [mailto:rw@datenknecht.de]
> > > > Sent: Thursday, September 13, 2001 10:00 AM
> > > > To: Martin Gudgin
> > > > Cc: Radek Wisniewski; xml-dev@lists.xml.org
> > > > Subject: Re: [xml-dev] <all> and minOccurs="0" Problem
> > > >
> > > >
> > > > Yes, it works fine. But the question remains unanswered: What is the sence
> > > > of <all minOccurs="0"> attribute?
> > > > What interesting, I can't deklare such en value in any way because:
> > > > 1) under <complexType>, element <all> must have both attributes minOccurs
> > > > and maxOccurs set to 1
> >
> > No, the entire <xs:all> group can be optional as well, i.e allowed values for
> > minOccurs on the xs:all element itself is 0 or 1.
>
> Eddie is correct -- the XML Schema WG has agreed a correction here, as
> two different parts of the REC contradict each other on this point,
> but the resolution will be that 0 or 1 is allowed.

OK, is allowed in <all> definition, but if i declare:

<xs:element name="person">
	<xs:complexType>
		<xs:all minOccurs="0">
			<xs:element name="vorname"/>
			<xs:element name="name"/>
		</xs:all>
	</xs:complexType>
</xs:element>

Xerces claims: Error:  cos-all-limited.1.2:  The minOccurs attribute of a
mod el group with "all" compositor that is part of a pair that is the
content type of a complex type definition must have the value one.
The value "0" is incorrect.

And has right, look at http://www.w3.org/TR/xmlschema-1/#cos-all-limited

So probably we should use maxOccurs="0" in <group>? Lets try:

<xs:group name="personGroup">
	<xs:all minOccurs="0">
		<xs:element name="vorname"/>
		<xs:element name="name"/>
	</xs:all>
</xs:group>


Xerces say: Error:  The child 'xs:all' of the named group definition
'personGroup' must not specify either the minOccurs or maxOccurs attribute.

So where can I specyfy <all> with minOccurs="0" in not under <comlexType>
or <group> ?

XML Syp for example doesn't see any of abowe problems so please dosn't use
this tool for this matter.

>
> ht
> --
>   Henry S. Thompson, HCRC Language Technology Group, University of Edinburgh
>           W3C Fellow 1999--2001, part-time member of W3C Team
>      2 Buccleuch Place, Edinburgh EH8 9LW, SCOTLAND -- (44) 131 650-4440
> 	    Fax: (44) 131 650-4587, e-mail: ht@cogsci.ed.ac.uk
> 		     URL: http://www.ltg.ed.ac.uk/~ht/
>