- From: Dare Obasanjo <kpako@yahoo.com>
- Date: Wed, 9 Jan 2002 13:09:51 -0800
- To: <xmlschema-dev@w3.org>
The attached schema gives the following error ERROR: Invalid particle derivation by restriction. when validated with MSFT .NET's XmlValidatingReader but works fine with XSV (and XML Spy). So is there a bug in the .NET XmlValidatingReader or is the derivation invalid? I assume the relevant parts of the XML Schema: Structures recommendation is section 3.4.6 (Constraints on Complex Type Definition Schema Components) and Schema Component Constraint: Particle Valid (Restriction) [0] and Schema Component Constraint: Particle Derivation OK (Choice:Choice -- RecurseLax) [1] but it wasn't readily obvious if there was any problem with the schema _except_ if the part 2 of the (Choice:Choice -- RecurseLax) section mentioned above requires that for each particle in the Base type,B, there must be a corresponding particle in the Derived type, D. [0] http://www.w3.org/TR/xmlschema-1/#cd-model-restriction [1] http://www.w3.org/TR/xmlschema-1/#rcase-RecurseLax <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:phx="urn:foo" targetNamespace="urn:foo"> <xs:element name="Manifest" type="xs:string" /> <xs:element name="Shipment" type="xs:string" /> <xs:element name="Package" type="xs:string" /> <xs:simpleType name="CarrierSpecialService_t"> <xs:restriction base="xs:positiveInteger"> <xs:maxExclusive value="100"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="Carrier_t"> <xs:restriction base="xs:positiveInteger"> <xs:maxExclusive value="100"/> </xs:restriction> </xs:simpleType> <xs:complexType name="RequestPayload_t"> <xs:choice maxOccurs="unbounded"> <xs:element ref="phx:Manifest" minOccurs="0"/> <xs:element ref="phx:Shipment" minOccurs="0"/> <xs:element ref="phx:Package" minOccurs="0"/> <xs:element name="CarrierSpSvc" type="phx:CarrierSpecialService_t" minOccurs="0"/> <xs:element name="Carrier" type="phx:Carrier_t" minOccurs="0"/> </xs:choice> </xs:complexType> <xs:complexType name="storeShipmentPayload_t"> <xs:complexContent> <xs:restriction base="phx:RequestPayload_t"> <xs:choice maxOccurs="unbounded"> <! -- ERROR OCCURS HERE --> <xs:element ref="phx:Shipment" maxOccurs="unbounded"/> </xs:choice> </xs:restriction> </xs:complexContent> </xs:complexType> </xs:schema> -- THINGS TO DO IF I BECOME AN EVIL OVERLORD #71 If I decide to test a lieutenant's loyalty and see if he/she should be made a trusted lieutenant, I will have a crack squad of marksmen standing by in case the answer is no. _________________________________________________________ Do You Yahoo!? Get your free @yahoo.com address at http://mail.yahoo.com
Received on Wednesday, 9 January 2002 13:10:46 UTC