Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » XML Schema Definition (XSD) » Derivation by restriction
Derivation by restriction [message #591595] Thu, 16 September 2004 19:21
Paul Cooper is currently offline Paul CooperFriend
Messages: 11
Registered: July 2009
Junior Member
I have a test case below that seems to be well formed but is failing XSD
validation and I was wondering if anyone can confirm whether is this is
user error or not?

The messages I'm seeing are:
The type of element '#item' must derive from
http://test.org/#item_._type' at line '58' and column '11' in
'file:/C:/test/WSDLLib/Def10783.wsdl'.

The restricted content type must accept a subset of the content accepted
by the base type at line '54' and column '3' in
'file:/C:/test/WSDLLib/Def10783.wsdl'.

(Note, the line numbers may not match the input data as I've edited it
slightly for display purposes)


Here is a copy of the schema:

<s:schema targetNamespace="http://test.org/"
xmlns:s0="http://test.org/"
xmlns:s="http://www.w3.org/2001/XMLSchema">
<s:complexType name="Address" final="restriction">
<s:sequence>
<s:element name="name" type="s:string"/>
<s:element name="street" type="s:string"/>
<s:element name="city" type="s:string"/>
</s:sequence>
</s:complexType>

<!-- type derived by extension -->
<s:complexType name="USAddress">
<s:complexContent>
<s:extension base="s0:Address">
<s:sequence>
<s:element name="state" type="s0:USState"/>
<s:element name="zip" type="s:positiveInteger"/>
</s:sequence>
</s:extension>
</s:complexContent>
</s:complexType>

<s:simpleType name="USState" final="restriction">
<s:restriction base="s:string">
<s:enumeration value="AK"/>
<s:enumeration value="AL"/>
<s:enumeration value="AR"/>
</s:restriction>
</s:simpleType>

<s:complexType name="Items" final="extension">
<s:sequence>
<s:element name="item" minOccurs="0" maxOccurs="unbounded">
<s:complexType>
<s:sequence>
<s:element name="productName" type="s:string"/>
<s:element name="quantity">
<s:simpleType>
<s:restriction base="s:positiveInteger">
<s:maxExclusive value="100"/>
</s:restriction>
</s:simpleType>
</s:element>
<s:element name="USPrice" type="s:decimal"/>
<s:element name="shipDate" type="s:date" minOccurs="0"/>
</s:sequence>
</s:complexType>
</s:element>
</s:sequence>
</s:complexType>

<!-- type derived by restriction -->
<s:complexType name="ConfirmedItems">
<s:complexContent>
<s:restriction base="s0:Items">
<s:sequence>
<s:element name="item" minOccurs="1" maxOccurs="unbounded">
<s:complexType>
<s:sequence>
<s:element name="productName" type="s:string"/>
<s:element name="quantity">
<s:simpleType>
<s:restriction base="s:positiveInteger">
<s:maxExclusive value="100"/>
</s:restriction>
</s:simpleType>
</s:element>
<s:element name="USPrice" type="s:decimal"/>
<s:element name="shipDate" type="s:date" minOccurs="0"/>
</s:sequence>
</s:complexType>
</s:element>
</s:sequence>
</s:restriction>
</s:complexContent>
</s:complexType>
</s:schema>

I think the sample input may have been taken from the XSD primer (or
somewhere similar) so it ought to be valid.

Any thoughts will be appreciated,

Thanks,
Paul Cooper.
Previous Topic:maxlength value missing
Next Topic:Derivation by restriction
Goto Forum:
  


Current Time: Thu Sep 19 13:35:40 GMT 2024

Powered by FUDForum. Page generated in 0.03568 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top