Subjects
Home
VOTE Move XML Commons to Xerces
Commented: (XERCESJ 589) Bug with pattern restriction on long strings
: Xerces J 2 8 1 Release on Wednesday, September 13th
: Xerces J 2 9 0 Release on Wednesday, November 22nd
Commented: (XERCESJ 1066) Restriction+choice+substitutionGroup error
Commented: (XERCESJ 1178) Error getting prefix for an attribute with no n
Updated: (XERCESJ 1244) XMLSchemaValidator does not contribute element 's
Some consideration about the xerces DOM implementation
Updated: (XERCESJ 1066) Restriction+choice+substitutionGroup error
Commented: (XERCESJ 1227) Poor performance / OutOfMemoryError for sequenc
retain exception stack traces
Updated: (XERCESJ 1193) NPE or hang when parsing using the "continue afte
Future of NekoHTML
Commented: (XERCESJ 1203) NPE in XMLDTDProcessor
DOM Level 3 APIs for Xalan J and a new Xalan release (2 7 1)
: xml commons external 1 3 04 Release on Wednesday, November 22nd
Commented: (XERCESJ 1247) Incorrect location information on SAX when usin
XInclude exceptions how to mirror Xerces J functionality into Xerces C++?
First proposal on SoC project "Add support for the StAX (JSR 173) cursor API
: xml commons resolver 1 2 Release on Wednesday, November 22nd
Typo in RangeToken java Please check
Validator features
java lang ClassCastException when adopting Node
using the org apache xerces impl xs identity package
Updated: (XERCESJ 1257) buffer overflow in UTF8Reader for characters out
Problem with ref attributes and schema validation
Updated: (XERCESJ 122) XMLSchemaValidator does not contribute element 's d
Performance problem under load Xerces with Weblogic 9 x
remove ignored memory allocation
Commented: (XERCESJ 1177) SAXXMLStreamReader doesn 't always report namesp
Commented: (XERCESJ 977) Null pointer exception during DOM parsing
Commented: (XERCESJ 1197) Code cleanup for org apache xml serialize
Commented: (XERCESJ 1201) Initial contribution for StAX Event API
Updated: (XERCESJ 1061) Regex "$ " and "^ " characters treated as special c
Commented: (XERCESJ 1199) SAXXMLStreamReader should attempt to register a
Commented: (XERCESJ 1061) Regex "$ " and "^ " characters treated as special
Updated: (XERCESJ 589) Bug with pattern restriction on long strings
StackOverflow
xerces Range unnecessarily not garbage collectable if not detached
Updated: (XERCESJ 1178) Error getting prefix for an attribute with no nam
Bug in xs:redefine
Commented: (XERCESJ 1204) Can not set XMLEntityResolver for LSParser
Updated: (XERCESJ 1253) Prototype for SoC2007 project "Add support for th
Updated: (XERCESJ 1259) Add SteamFilter Function to SoC2007 project "Add
Assigned: (XERCESJ 444) SAXException thrown by EntityResolver is reported
Google Summer of Code 2007
Xerces J and XInclude relative path issue
Assigned: (XERCESJ 206) Stack overflow when using a schema validation
Commented: (XERCESJ 1215) Restrictions involving two levels of substituti
Closed: (XERCESJ 1203) NPE in XMLDTDProcessor
non overriding equals methoda
Resolved: (XERCESJ 1079) invalid value returned for TOTALDIGITS facet in
Xerces AS3 port
Updated: (XERCESJ 325) Regular Expression; Pattern "| " clause order de
Updated: (XERCESJ 1196) Javadoc generation fails on Java SE 5 0
Closed: (XERCESJ 1202) DTD validation on XIncluded documents when the sch
Created: (XERCESJ 1124) Nonspecific schema error message
a bug in xerces
Updated: (XERCESJ 1201) Initial contribution for StAX Event API
Closed: (XERCESJ 1254) Empty uris in targetNamespace attribute not report
Links
Home
Oracle database error code
 
Search:  
Power your search with and, or, +, -, or "some phrase" operators.
Cannot validate restricted complex type in schema

Cannot validate restricted complex type in schema

2004-02-10       - By Kornél Esti
Reply:     1     2  

Hi all,

I'm having a problem with restricted complex types using Xerces-J 2.6.1.

I have tried to validate the complex type restriction example from the
Schema primer:
http://www.w3.org/TR/2001/REC-xmlschema-0-20010502/#DerivByRestrict
using the supplied sample xni.XMLGrammarBuilder.

Running `java xni.XMLGrammarBuilder -f -a ipo_test.xsd`
gives me:
[Error] ipo_test.xsd:56:37: rcase-NameAndTypeOK.7: The type of element
'item', 'null', is not derived from the type of the base element, 'null'.
[Error] ipo_test.xsd:56:37: derivation-ok-restriction.5.4.2: Error for type
'ConfirmedItems'.  The particle of the type is not a valid restriction of
the particle of the base.

See the files used below.

Am I doing something wrong?

Greetings,

Kornel

--------

file "ipo_test.xsd":
===============================

<schema targetNamespace="http://www.example.com/IPO"
       xmlns="http://www.w3.org/2001/XMLSchema"
       xmlns:ipo="http://www.example.com/IPO">

<annotation>
 <documentation xml:lang="en">
  International Purchase order schema for Example.com
  Copyright 2000 Example.com. All rights reserved.
 </documentation>
</annotation>

<!-- include address constructs -->
<!--include
 schemaLocation="http://www.example.com/schemas/address.xsd"/-->

<include
 schemaLocation="ipo_address.xsd"/>

<element name="purchaseOrder" type="ipo:PurchaseOrderType"/>

<element name="comment" type="string"/>

<complexType name="PurchaseOrderType">
 <sequence>
  <element name="shipTo"     type="ipo:Address"/>
  <element name="billTo"     type="ipo:Address"/>
  <element ref="ipo:comment" minOccurs="0"/>
  <element name="items"      type="ipo:Items"/>
 </sequence>
 <attribute name="orderDate" type="date"/>
</complexType>

<complexType name="Items">
 <sequence>
  <element name="item" minOccurs="0" maxOccurs="unbounded">
   <complexType>
    <sequence>
     <element name="productName" type="string"/>
     <element name="quantity">
      <simpleType>
       <restriction base="positiveInteger">
        <maxExclusive value="100"/>
       </restriction>
      </simpleType>
     </element>
     <element name="USPrice"    type="decimal"/>
     <element ref="ipo:comment" minOccurs="0"/>
     <element name="shipDate"   type="date" minOccurs="0"/>
    </sequence>
    <attribute name="partNum" type="ipo:SKU" use="required"/>
   </complexType>
  </element>
 </sequence>
</complexType>

<complexType name="ConfirmedItems">
 <complexContent>
  <restriction base="ipo:Items">
   <sequence>

    <!-- item element is different than in Items -->
    <element name="item" minOccurs="1" maxOccurs="unbounded">

     <!-- remainder of definition is same as Items -->
     <complexType>
      <sequence>
       <element name="productName" type="string"/>
        <element name="quantity">
        <simpleType>
         <restriction base="positiveInteger">
          <maxExclusive value="100"/>
         </restriction>
        </simpleType>
       </element>
       <element name="USPrice"    type="decimal"/>
       <element ref="ipo:comment" minOccurs="0"/>
       <element name="shipDate"   type="date" minOccurs="0"/>
      </sequence>
      <attribute name="partNum" type="ipo:SKU" use="required"/>
     </complexType>
    </element>

   </sequence>
  </restriction>
 </complexContent>
</complexType>

<simpleType name="SKU">
 <restriction base="string">
  <pattern value="\d{3}-[A-Z]{2}"/>
 </restriction>
</simpleType>

</schema>


file "ipo_address.xsd":
===============================

<schema targetNamespace="http://www.example.com/IPO"
       xmlns="http://www.w3.org/2001/XMLSchema"
       xmlns:ipo="http://www.example.com/IPO">

<annotation>
 <documentation xml:lang="en">
  Addresses for International Purchase order schema
  Copyright 2000 Example.com. All rights reserved.
 </documentation>
</annotation>

<complexType name="Address">
 <sequence>
  <element name="name"   type="string"/>
  <element name="street" type="string"/>
  <element name="city"   type="string"/>
 </sequence>
</complexType>

<complexType name="USAddress">
 <complexContent>
  <extension base="ipo:Address">
   <sequence>
    <element name="state" type="ipo:USState"/>
    <element name="zip"   type="positiveInteger"/>
   </sequence>
  </extension>
 </complexContent>
</complexType>

<complexType name="UKAddress">
 <complexContent>
  <extension base="ipo:Address">
   <sequence>
    <element name="postcode" type="ipo:UKPostcode"/>
   </sequence>
   <attribute name="exportCode" type="positiveInteger" fixed="1"/>
  </extension>
 </complexContent>
</complexType>

<!-- other Address derivations for more countries -->

<simpleType name="USState">
 <restriction base="string">
  <enumeration value="AK"/>
  <enumeration value="AL"/>
  <enumeration value="AR"/>
  <!-- and so on ... -->
 </restriction>
</simpleType>

<!-- simple type definition for UKPostcode -->
<simpleType name="Postcode">
  <restriction base="string">
    <length value="7" fixed="true"/>
  </restriction>
</simpleType>

<simpleType name="UKPostcode">
  <restriction base="ipo:Postcode">
    <pattern value="[A-Z]{2}\d\s\d[A-Z]{2}"/>
  </restriction>
</simpleType>

</schema>

_________________________________________________________________
STOP MORE SPAM with the new MSN 8 and get 2 months FREE*
http://join.msn.com/?page=features/junkmail


---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-j-user-unsubscribe@(protected)
For additional commands, e-mail: xerces-j-user-help@(protected)