|
next
|
 Subject: Re: 'catalogueItem' and 'catalogueItem' violate the Unique Particle Attribution rule Author: (Deleted User) 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
|
|
|