RE: [xml-dev] XML schema cos-nonambig problem

From
Laurens van den Oever <>
To
Niels Peter Strandberg <>,
Date
2005-12-16T16:28:27Z
ID
<>
Thread
RE: [xml-dev] XML schema cos-nonambig problem
I think your schema should be:

<xs:complexType name="contentiddef">
  <xs:sequence>
    <xs:element ref="x:major" minOccurs="0" maxOccurs="unbounded"/>
    <xs:choice>
      <xs:sequence>
        <xs:element ref="x:minor"/> 
        <xs:choice minOccurs="0" maxOccurs="unbounded">
          <xs:element ref="x:major"/>
          <xs:element ref="x:minor"/>
          <xs:element ref="x:version"/>
        </xs:choice>
      </xs:sequence>
      <xs:sequence>
        <xs:element ref="x:version"/>
        <xs:choice minOccurs="0" maxOccurs="unbounded">
          <xs:element ref="x:major"/>
          <xs:element ref="x:minor"/>
          <xs:element ref="x:version"/>
        </xs:choice>
      </xs:sequence>
      <xs:sequence>
        <xs:element ref="x:externalid"/>
        <xs:choice minOccurs="0" maxOccurs="unbounded">
          <xs:element ref="x:major"/>
          <xs:element ref="x:externalid"/>
        </xs:choice>
      </xs:sequence>
    </xs:choice>
  </xs:sequence>
</xs:complexType>

This makes you think about your data model. Usually when it's hard to
write a schema for a certain xml flavor, you might want to reconsider
the xml. What are you trying to achieve?

Best,

Laurens van den Oever
Q42

-----Original Message-----
From: Niels Peter Strandberg [mailto:] 
Sent: Friday, December 16, 2005 4:53 PM
To: 
Subject: [xml-dev] XML schema cos-nonambig problem

This error message below is reported back from Xerces. The problem is  
the "major" element. How can I reconstruct my XML Schema so that I  
can avoid this error?

cos-nonambig: "http://www.polopoly.com/polopoly/cm/app/xml":major and  
"http://www.polopoly.com/polopoly/cm/app/xml":major (or elements from  
their substitution group) violate "Unique Particle Attribution".  
During validation against this schema, ambiguity would be created for  
those two particles.
		

      <xs:complexType name="contentiddef">
		<xs:choice>
			<xs:choice minOccurs="0" maxOccurs="unbounded">
				<xs:element ref="x:major"/>
				<xs:element ref="x:externalid"/>
			</xs:choice>
			<xs:choice minOccurs="0" maxOccurs="unbounded">
				<xs:element ref="x:major"/>
				<xs:element ref="x:minor"/>
				<xs:element ref="x:version"/>
			</xs:choice>
		</xs:choice>
	</xs:complexType>

Thanks!

Niels Peter


-----------------------------------------------------------------
The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
initiative of OASIS <http://www.oasis-open.org>

The list archives are at http://lists.xml.org/archives/xml-dev/

To subscribe or unsubscribe from this list use the subscription
manager: <http://www.oasis-open.org/mlmanage/index.php>