XML Editor
Sign up for a WebBoard account Sign Up Keyword Search Search More Options... Options
Chat Rooms Chat Help Help News News Log in to WebBoard Log in Not Logged in
Show tree view Topic
Topic Page 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Go to previous topicPrev TopicGo to next topicNext Topic
Postnext
Alberto MassariSubject: Re: 'catalogueItem' and 'catalogueItem' violate the Unique Particle Attribution rule
Author: Alberto Massari
Date: 30 Aug 2004 03:25 PM
Hi Jerry,
there is indeed a problem with your schema (that the error message doesn't
help to understand... I'll file a request for a better error message with
the Xerces team).
For the record, the Unique Particle Attribution rule states that "A content
model must be formed such that during validation of an element information
item sequence, the particle component contained directly, indirectly or
implicitly therein with which to attempt to validate each item in the
sequence in turn can be uniquely determined without examining the content
or attributes of that item, and without any information about the items in
the remainder of the sequence"; that is, if we expand all the possible
branches that a definition allows, they all start with a different sequence.
In your schema you have 4 places where this condition is not satisfied:
- ResultListType
- CatalogueItemMaintenanceCommandOperandType
- CheckComplianceCommandOperandType
- NotificationDetailType

ResultListType, CheckComplianceCommandOperandType and
NotificationDetailType fail because they have, between their choices, a
DocumentGroup.
And both DocumentGroup and CatalogueItemMaintenanceCommandOperandType fail
because they are choices between, among others, CatalogueItemGroupType and
catalogueItem.

At last, CatalogueItemGroupType is defined as



type="xs:positiveInteger" minOccurs="0"/>




Being "totalQuantityOfNextLowerLevelTradeItem" an optional item
(minOccurs="0"), it's not possible for the validator to determine if an
element "catalogueItem" children of one of the 4 types named above is
either part of a CatalogueItemGrouptType or a choice alternative to that group.

To fix this schema you should either make the
"totalQuantityOfNextLowerLevelTradeItem" mandatory (minOccurs="1") or
remove "catalogueItem" from the choices of DocumentGroup and
CatalogueItemMaintenanceCommandOperandType.

Hope this helps,
Alberto


Posttop
Alberto MassariSubject: Re: 'catalogueItem' and 'catalogueItem' violate the Unique Particle Attribution rule
Author: Alberto Massari
Date: 16 Sep 2004 10:30 AM
Hi Jerry,

At 13.20 15/09/2004 -0400, stylus-studio-tech Listmanager wrote:
>From: "Jerry Sheehan"
>
>Thanks very much for the details. This is outstanding.

Thanks you for your kind words ;-)

>Just one follow up. You mentioned you would file this with the Xerces
>Team, is it possible you can give me a link to this discussion? Did you
>file it with any of the other validators?

I have sent a patch directly to the Xerces team, without using their bug
tracker. It should appear in the upcoming Xerces 2.6.
As for the other validators, Xerces-J is the only one reporting this error,
and, even if it doesn't name the complex type failing the validation, it
reports the line in the schema file where that type can be found.

Alberto


 
Topic Page 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Go to previous topicPrev TopicGo to next topicNext Topic
Download A Free Trial of Stylus Studio 6 XML Professional Edition Today! Powered by Stylus Studio, the world's leading XML IDE for XML, XSLT, XQuery, XML Schema, DTD, XPath, WSDL, XHTML, SQL/XML, and XML Mapping!  
go

Log In Options

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