DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://nagoya.apache.org/bugzilla/show_bug.cgi?id=6344>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=6344 KEY uniqueness not enforced during validation Summary: KEY uniqueness not enforced during validation Product: Xerces-J Version: 1.4.4 Platform: All OS/Version: All Status: NEW Severity: Major Priority: Other Component: Schema-Datatypes AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] When implicitly validating my XML doc against my Schema doc via the SAXCount and DOMCount example programs, I get no errors found/reported even tho I am violating the uniqueness constraint of my "KEY" fields. --- XML file --- <?xml version="1.0"?> <products_by_vendor xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="gg_products.xsd"> <vendor id="conners"> <vendor_name>Conners Chair Company</vendor_name> <product> <gg_sku>GG001</gg_sku> <vendor_sku>QA3452</vendor_sku> <short_desc>Queen Anne Chair</short_desc> <price type="cost">$85.00</price> </product> <product> <gg_sku>GG001</gg_sku> <vendor_sku>RC2342</vendor_sku> <short_desc>Early American Rocking Chair</short_desc> <price>120.00</price> <inventory location="warehouse">40</inventory> </product> </vendor> </products_by_vendor> --- SCHEMA --- <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <!-- NOTE: these definitions are in "top-down" order. --> <xs:element name="products_by_vendor"> <xs:complexType> <xs:sequence> <xs:element ref="vendor" maxOccurs="unbounded" /> </xs:sequence> </xs:complexType> <xs:key name="PK"> <xs:selector xpath="product"/> <xs:field xpath="gg_sku"/> </xs:key> </xs:element> <xs:element name="vendor"> <xs:complexType> <xs:sequence> <xs:element name="vendor_name" type="xs:string" /> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element name="phone" type="xs:string"/> <xs:element name="fax" type="xs:string"/> <xs:element name="website" type="xs:anyURI"/> <xs:element name="address" type="AddressType"/> <xs:element name="email" type="xs:string"/> </xs:choice> <xs:element ref="suite" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="product" minOccurs="0" maxOccurs="unbounded" /> </xs:sequence> <xs:attribute name="id" type="xs:ID" use="required" /> </xs:complexType> </xs:element> <xs:element name="suite"> <xs:complexType> <xs:sequence> <xs:group ref="skuData" /> <xs:element ref="product" minOccurs="0" maxOccurs="unbounded" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="product"> <xs:complexType> <xs:sequence> <xs:element name="gg_sku" type="GG_SKU" /> <xs:group ref="skuData" /> <xs:element ref="version" minOccurs="0" maxOccurs="unbounded" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="version"> <xs:complexType> <xs:sequence> <xs:group ref="skuData" /> </xs:sequence> </xs:complexType> </xs:element> <!-- GROUP definitions --> <xs:group name="skuData"> <xs:sequence> <xs:element name="vendor_sku" type="xs:string" minOccurs="0" maxOccurs="1" /> <xs:element name="short_desc" type="xs:string" /> <xs:element name="long_desc" type="xs:string" minOccurs="0" maxOccurs="1" /> <xs:element ref="price" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="inventory" minOccurs="0" maxOccurs="unbounded" /> </xs:sequence> </xs:group> <!-- "primitive" definitions that are referenced above --> <xs:element name="price"> <xs:complexType> <xs:simpleContent> <xs:extension base="MoneyType"> <xs:attribute name="type" type="PriceType" default="retail" /> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element> <xs:element name="inventory"> <xs:complexType> <xs:simpleContent> <xs:extension base="xs:integer"> <xs:attribute name="location" type="LocationType" default="showroom" /> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element> <xs:simpleType name="PriceType"> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="cost"/> <xs:enumeration value="sale"/> <xs:enumeration value="retail"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="LocationType"> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="warehouse"/> <xs:enumeration value="showroom"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="GG_SKU"> <xs:restriction base="xs:string"> <xs:pattern value="GG\d{3}"/> </xs:restriction> </xs:simpleType> <xs:complexType name="AddressType"> <xs:attribute name="state" type="xs:string"/> <xs:attribute name="city" type="xs:string"/> <xs:attribute name="zip" type="xs:decimal"/> <xs:attribute name="street" type="xs:string"/> </xs:complexType> <xs:simpleType name="MoneyType"> <xs:restriction base="xs:string"> <xs:pattern value="\p{Sc}?\p{Nd}+(\.\p{Nd}\p{Nd})?"/> </xs:restriction> </xs:simpleType> </xs:schema> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
