Hi All,

I get the following message when parsing an input file with schema checking
on:

        Message: No circular definitions are allowed: 'ValueGroup'

A portion of my schema is defined as follows:

        <xs:complexType name="ObjectType">
                <xs:sequence>
                        <xs:group ref="ValueGroup" minOccurs="0" 
maxOccurs="unbounded"/>
                </xs:sequence>
        </xs:complexType>
        <xs:group name="ValueGroup">
                <xs:choice>
                        <xs:element name="Inherited" type="InheritedType"/>
                        <xs:element name="Basic" type="BasicType"/>
                        <xs:element name="String" type="StringType"/>
                </xs:choice>
        </xs:group>
        <xs:complexType name="InheritedType">
                <xs:complexContent>
                        <xs:extension base="ValueType">
                                <xs:group ref="ValueGroup" minOccurs="0" 
maxOccurs="unbounded"/>
                        </xs:extension>
        </xs:complexType>

Some sample XML would be:

  <Object>
    <Inherited name="ooObjectPlacementStrategy" position="0">
      <Inherited name="ooPdStrategy" position="0">
        <String name="mName" position="1">EvolveTest</String>
        <String name="mComment" position="2"/>
      </Inherited>
      <Basic name="mSeparateByOwner" position="4" type="uint8" value="1"/>
    </Inherited>
    <Basic name="mPagePlacement" position="2" type="uint8" value="7"/>
  </Object>

The complaint is that InheritedType is included in ValueGroup, and includes
ValueGroup.  This is certainly circular from the schema's point of view, but
is a natural outcome of generically modeling an object's data, which is what
I am doing.  Is such an arrangement really illegal?  Or is it a constraint
specific to Xerces' implementation?  I was not able to locate any such
constraint in the XML Schema specification (I may have missed it though).
Also, when processing the same input with XML Spy, I do not get this error
(I believe it uses MSXML).

Thanks,

Lenny


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to