[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: XML schema cos-nonambig problem

  • To: "Niels Peter Strandberg" <nielspeter@n...>,<xml-dev@l...>
  • Subject: RE: XML schema cos-nonambig problem
  • From: "Chiusano Joseph" <chiusano_joseph@b...>
  • Date: Fri, 16 Dec 2005 11:38:10 -0500
  • Thread-index: AcYCXPWA/+sYo8etRgKw/e3CjvQTfAAAa3wg
  • Thread-topic: XML schema cos-nonambig problem

cos nonambig
Sure - the issue here is that when the XML schema processor encounters a
"major" element, it has no way of determining (without doing a
"look-ahead") which "choice" set is used. The fact that it has to look
ahead (which W3C schema processors cannot do) means that there is
non-determinism. However, if the complex type were changed to look as
follows:

> >>       <xs:complexType name="contentiddef">
> >> 		<xs:choice>
> >> 			<xs:choice minOccurs="0" maxOccurs="unbounded">
> >> 				<xs:element ref="x:externalid"/>
> >> 				<xs:element ref="x:major"/>
> >> 			</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>

the XML schema processor would know which choice set it is in when it
encounters a "major" element because if it first encountered an
"externalID" element (which must remain mandatory - as it is above - in
order for this to work) it knows that it must be in the first choice
set; otherwise, it must be in the second.

Hope that helps,
Joe

Joseph Chiusano
Associate
Booz Allen Hamilton
 
700 13th St. NW, Suite 1100
Washington, DC 20005
O: 202-508-6514  
C: 202-251-0731
Visit us online@ http://www.boozallen.com
 

> -----Original Message-----
> From: Niels Peter Strandberg [mailto:nielspeter@n...] 
> Sent: Friday, December 16, 2005 11:14 AM
> To: xml-dev@l...
> Subject: Re:  XML schema cos-nonambig problem
> 
> Im not sure what you mean! Could you show me, on the xml 
> snippet below?
> 
> Niels Peter
> 
> 
> Den 16/12/2005 kl. 17.03 skrev Chiusano Joseph:
> 
> > In your first choice set, if you reverse the 2 elements that will 
> > remove the non-determinism - but only if the "externalid" element 
> > remains declared as mandatory.
> >
> > Joe
> >
> > Joseph Chiusano
> > Associate
> > Booz Allen Hamilton
> >
> > 700 13th St. NW, Suite 1100
> > Washington, DC 20005
> > O: 202-508-6514
> > C: 202-251-0731
> > Visit us online@ http://www.boozallen.com
> >
> >
> >> -----Original Message-----
> >> From: Niels Peter Strandberg [mailto:nielspeter@n...]
> >> Sent: Friday, December 16, 2005 10:53 AM
> >> To: xml-dev@l...
> >> Subject:  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>
> >>
> >>
> 
> 
> -----------------------------------------------------------------
> 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>
> 
> 

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.