You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by "Fernando Jeronymo (JIRA)" <xe...@xml.apache.org> on 2007/11/09 21:42:51 UTC
[jira] Created: (XERCESC-1758) Incorrect "Unique Particle
Attribution rule in its components '##other' and '##any'" with FAST Schema
definition
Incorrect "Unique Particle Attribution rule in its components '##other' and '##any'" with FAST Schema definition
-----------------------------------------------------------------------------------------------------------------
Key: XERCESC-1758
URL: https://issues.apache.org/jira/browse/XERCESC-1758
Project: Xerces-C++
Issue Type: Bug
Components: Validating Parser (Schema) (Xerces 1.5 or up only)
Affects Versions: 2.8.0
Environment: Linux 2.6.9-55.ELsmp #1 SMP x86_64 GNU/Linux
Red Hat Enterprise Linux AS release 4 (Nahant Update 5)
Xerces-C++ Version 2.8.0 compiled with g++ 4.2.1 64 bits
Reporter: Fernando Jeronymo
When attempting to validate an XML file with the following schema (from http://www.fixprotocol.org/documents/3066/FAST%20Specification%201%20x%201.pdf [Appendix 2 W3C XML Schema (Non-Normative)] )
With the following XML file:
<?xml version="1.0" encoding="UTF-8"?>
<templates xmlns="http://www.fixprotocol.org/ns/fast/td/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.fixprotocol.org/ns/fast/td/1.1 fast.xsd">
<template name="MDIncRefresh" id="123">
<typeRef name="MDIncRefresh"/>
<uInt32 name="field1" id="1"> <copy/> </uInt32>
<uInt32 name="field2" id="2"> </uInt32>
<uInt32 name="field3" id="3"> <default value="300000000"/> </uInt32>
<uInt32 name="field4" id="4"> <constant value="260000000"/> </uInt32>
<uInt32 name="field5" id="5"> <delta/> </uInt32>
<uInt32 name="field6" id="6"> <increment/> </uInt32>
<uInt32 name="field7" id="7"> <copy/> </uInt32>
<uInt32 name="field8" id="8"> <copy/> </uInt32>
<uInt32 name="field9" id="9"> <copy/> </uInt32>
<uInt32 name="field10" id="10"> <copy/> </uInt32>
<uInt32 name="field11" id="11"> <copy/> </uInt32>
<uInt32 name="field12" id="12"> <copy/> </uInt32>
</template>
</templates>
I get the following error from Xerces-C:
Error at file fastapi.xml, line 2, char 201
Message: Complex type '__AnonC13' violates the Unique Particle Attribution rule in its components '##other' and '##any'
However, other tools (including Xerces-J) validate the schema correctly.
Below I attach the XSD schema in question:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:td="http://www.fixprotocol.org/ns/fast/td/1.1" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.fixprotocol.org/ns/fast/td/1.1" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="templates">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref="td:template"/>
<xs:group ref="td:other"/>
</xs:choice>
<xs:attribute name="ns"/>
<xs:attribute name="templateNs"/>
<xs:attribute name="dictionary">
<xs:simpleType>
<xs:union memberTypes="xs:string">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="template"/>
<xs:enumeration value="type"/>
<xs:enumeration value="global"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
</xs:attribute>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:element name="template">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:choice>
<xs:element ref="td:typeRef"/>
<xs:group ref="td:instruction"/>
</xs:choice>
<xs:group ref="td:other"/>
</xs:choice>
<xs:attributeGroup ref="td:templateNsName"/>
<xs:attribute name="ns"/>
<xs:attribute name="dictionary">
<xs:simpleType>
<xs:union memberTypes="xs:string">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="template"/>
<xs:enumeration value="type"/>
<xs:enumeration value="global"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
</xs:attribute>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:element name="typeRef">
<xs:complexType>
<xs:group ref="td:other"/>
<xs:attributeGroup ref="td:nameAttr"/>
<xs:attribute name="ns"/>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:group name="instruction">
<xs:choice>
<xs:group ref="td:field"/>
<xs:element ref="td:templateRef"/>
</xs:choice>
</xs:group>
<xs:group name="fieldInstrContent">
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="td:fieldOp"/>
<xs:group ref="td:other"/>
</xs:choice>
</xs:sequence>
</xs:group>
<xs:attributeGroup name="fieldInstrContent">
<xs:attributeGroup ref="td:nsName"/>
<xs:attribute name="presence">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="mandatory"/>
<xs:enumeration value="optional"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attributeGroup ref="td:other"/>
</xs:attributeGroup>
<xs:group name="field">
<xs:choice>
<xs:group ref="td:integerField"/>
<xs:element ref="td:decimal"/>
<xs:group ref="td:stringField"/>
<xs:element ref="td:byteVector"/>
<xs:element ref="td:sequence"/>
<xs:element ref="td:group"/>
</xs:choice>
</xs:group>
<xs:complexType name="integerField">
<xs:group ref="td:fieldInstrContent"/>
<xs:attributeGroup ref="td:fieldInstrContent"/>
</xs:complexType>
<xs:group name="integerField">
<xs:choice>
<xs:element ref="td:int32"/>
<xs:element ref="td:uInt32"/>
<xs:element ref="td:int64"/>
<xs:element ref="td:uInt64"/>
</xs:choice>
</xs:group>
<xs:element name="int32" type="td:integerField"/>
<xs:element name="uInt32" type="td:integerField"/>
<xs:element name="int64" type="td:integerField"/>
<xs:element name="uInt64" type="td:integerField"/>
<xs:element name="decimal">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:choice>
<xs:group ref="td:fieldOp"/>
<xs:choice>
<xs:element ref="td:exponent"/>
<xs:element ref="td:mantissa"/>
</xs:choice>
</xs:choice>
<xs:group ref="td:other"/>
</xs:choice>
<xs:attributeGroup ref="td:nsName"/>
<xs:attribute name="presence">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="mandatory"/>
<xs:enumeration value="optional"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:element name="exponent">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="td:fieldOp"/>
<xs:group ref="td:other"/>
</xs:choice>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:element name="mantissa">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="td:fieldOp"/>
<xs:group ref="td:other"/>
</xs:choice>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:group name="stringField">
<xs:sequence>
<xs:element name="string">
<xs:complexType>
<xs:sequence>
<xs:group ref="td:byteVectorLength" minOccurs="0"/>
<xs:group ref="td:fieldInstrContent"/>
</xs:sequence>
<xs:attributeGroup ref="td:fieldInstrContent"/>
<xs:attribute name="charset">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="ascii"/>
<xs:enumeration value="unicode"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:group>
<xs:element name="byteVector">
<xs:complexType>
<xs:sequence>
<xs:group ref="td:byteVectorLength" minOccurs="0"/>
<xs:group ref="td:fieldInstrContent"/>
</xs:sequence>
<xs:attributeGroup ref="td:fieldInstrContent"/>
</xs:complexType>
</xs:element>
<xs:group name="byteVectorLength">
<xs:sequence>
<xs:element name="length">
<xs:complexType>
<xs:attributeGroup ref="td:nsName"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:group>
<xs:element name="sequence">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:choice>
<xs:element ref="td:typeRef"/>
<xs:group ref="td:length"/>
<xs:group ref="td:instruction"/>
</xs:choice>
<xs:group ref="td:other"/>
</xs:choice>
<xs:attributeGroup ref="td:nsName"/>
<xs:attribute name="presence">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="mandatory"/>
<xs:enumeration value="optional"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="dictionary">
<xs:simpleType>
<xs:union memberTypes="xs:string">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="template"/>
<xs:enumeration value="type"/>
<xs:enumeration value="global"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
</xs:attribute>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:group name="length">
<xs:sequence>
<xs:element name="length">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="td:fieldOp"/>
<xs:group ref="td:other"/>
</xs:choice>
<xs:attribute name="name" type="xs:token"/>
<xs:attribute name="ns"/>
<xs:attribute name="id" type="xs:token"/>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:group>
<xs:element name="group">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:choice>
<xs:element ref="td:typeRef"/>
<xs:group ref="td:instruction"/>
</xs:choice>
<xs:group ref="td:other"/>
</xs:choice>
<xs:attributeGroup ref="td:nsName"/>
<xs:attribute name="presence">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="mandatory"/>
<xs:enumeration value="optional"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="dictionary">
<xs:simpleType>
<xs:union memberTypes="xs:string">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="template"/>
<xs:enumeration value="type"/>
<xs:enumeration value="global"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
</xs:attribute>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:group name="fieldOp">
<xs:choice>
<xs:element ref="td:constant"/>
<xs:element ref="td:default"/>
<xs:element ref="td:copy"/>
<xs:element ref="td:increment"/>
<xs:element ref="td:delta"/>
<xs:element ref="td:tail"/>
</xs:choice>
</xs:group>
<xs:element name="constant">
<xs:complexType>
<xs:group ref="td:other"/>
<xs:attributeGroup ref="td:initialValueAttr"/>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:element name="default">
<xs:complexType>
<xs:group ref="td:other"/>
<xs:attribute name="value"/>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:element name="copy" type="td:opContext"/>
<xs:element name="increment" type="td:opContext"/>
<xs:element name="delta" type="td:opContext"/>
<xs:element name="tail" type="td:opContext"/>
<xs:attributeGroup name="initialValueAttr">
<xs:attribute name="value" use="required"/>
</xs:attributeGroup>
<xs:complexType name="opContext">
<xs:group ref="td:other"/>
<xs:attribute name="dictionary">
<xs:simpleType>
<xs:union memberTypes="xs:string">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="template"/>
<xs:enumeration value="type"/>
<xs:enumeration value="global"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="key" type="xs:token"/>
<xs:attribute name="ns"/>
<xs:attribute name="value"/>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
<xs:element name="templateRef">
<xs:complexType>
<xs:group ref="td:other"/>
<xs:attribute name="name" type="xs:token"/>
<xs:attribute name="templateNs"/>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:attributeGroup name="nsName">
<xs:attributeGroup ref="td:nameAttr"/>
<xs:attribute name="ns"/>
<xs:attribute name="id" type="xs:token"/>
</xs:attributeGroup>
<xs:attributeGroup name="templateNsName">
<xs:attributeGroup ref="td:nameAttr"/>
<xs:attribute name="templateNs"/>
<xs:attribute name="id" type="xs:token"/>
</xs:attributeGroup>
<xs:attributeGroup name="nameAttr">
<xs:attribute name="name" type="xs:token" use="required"/>
</xs:attributeGroup>
<xs:group name="other">
<xs:sequence>
<xs:group ref="td:foreignElm" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:group>
<xs:attributeGroup name="other">
<xs:attributeGroup ref="td:foreignAttr"/>
</xs:attributeGroup>
<xs:group name="foreignElm">
<xs:choice>
<xs:any namespace="##other" processContents="skip"/>
<xs:any namespace="##local" processContents="skip"/>
</xs:choice>
</xs:group>
<xs:attributeGroup name="foreignAttr">
<xs:anyAttribute namespace="##other" processContents="skip"/>
</xs:attributeGroup>
</xs:schema>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
[jira] Closed: (XERCESC-1758) Incorrect "Unique Particle
Attribution rule in its components '##other' and '##any'" with FAST Schema
definition
Posted by "Boris Kolpackov (JIRA)" <xe...@xml.apache.org>.
[ https://issues.apache.org/jira/browse/XERCESC-1758?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Boris Kolpackov closed XERCESC-1758.
------------------------------------
Resolution: Fixed
Assignee: Boris Kolpackov
Fix is in SVN.
> Incorrect "Unique Particle Attribution rule in its components '##other' and '##any'" with FAST Schema definition
> -----------------------------------------------------------------------------------------------------------------
>
> Key: XERCESC-1758
> URL: https://issues.apache.org/jira/browse/XERCESC-1758
> Project: Xerces-C++
> Issue Type: Bug
> Components: Validating Parser (XML Schema)
> Affects Versions: 2.8.0
> Environment: Linux 2.6.9-55.ELsmp #1 SMP x86_64 GNU/Linux
> Red Hat Enterprise Linux AS release 4 (Nahant Update 5)
> Xerces-C++ Version 2.8.0 compiled with g++ 4.2.1 64 bits
> Reporter: Fernando Jeronymo
> Assignee: Boris Kolpackov
> Fix For: 3.0.0, 2.9.0
>
> Attachments: fast.xsd, fastExample.xml
>
>
> When attempting to validate an XML file with the following schema (from http://www.fixprotocol.org/documents/3066/FAST%20Specification%201%20x%201.pdf [Appendix 2 W3C XML Schema (Non-Normative)] )
> I get the following error from Xerces-C:
> Error at file fastapi.xml, line 2, char 201
> Message: Complex type '__AnonC13' violates the Unique Particle Attribution rule in its components '##other' and '##any'
> However, other tools (XMLSpy, Xerces-J) validate the schema correctly.
> I have attached both XSD and XML files that were used to test/reproduce the issue.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
[jira] Issue Comment Edited: (XERCESC-1758) Incorrect "Unique
Particle Attribution rule in its components '##other' and '##any'" with
FAST Schema definition
Posted by "Fernando Jeronymo (JIRA)" <xe...@xml.apache.org>.
[ https://issues.apache.org/jira/browse/XERCESC-1758?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12541438 ]
fjeronymo edited comment on XERCESC-1758 at 11/9/07 12:51 PM:
----------------------------------------------------------------------
Adding XML file.
was (Author: fjeronymo):
The XML file in question
> Incorrect "Unique Particle Attribution rule in its components '##other' and '##any'" with FAST Schema definition
> -----------------------------------------------------------------------------------------------------------------
>
> Key: XERCESC-1758
> URL: https://issues.apache.org/jira/browse/XERCESC-1758
> Project: Xerces-C++
> Issue Type: Bug
> Components: Validating Parser (Schema) (Xerces 1.5 or up only)
> Affects Versions: 2.8.0
> Environment: Linux 2.6.9-55.ELsmp #1 SMP x86_64 GNU/Linux
> Red Hat Enterprise Linux AS release 4 (Nahant Update 5)
> Xerces-C++ Version 2.8.0 compiled with g++ 4.2.1 64 bits
> Reporter: Fernando Jeronymo
> Attachments: fast.xsd, fastExample.xml
>
>
> When attempting to validate an XML file with the following schema (from http://www.fixprotocol.org/documents/3066/FAST%20Specification%201%20x%201.pdf [Appendix 2 W3C XML Schema (Non-Normative)] )
> I get the following error from Xerces-C:
> Error at file fastapi.xml, line 2, char 201
> Message: Complex type '__AnonC13' violates the Unique Particle Attribution rule in its components '##other' and '##any'
> However, other tools (XMLSpy, Xerces-J) validate the schema correctly.
> I have attached both XSD and XML files that were used to test/reproduce the issue.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
[jira] Updated: (XERCESC-1758) Incorrect "Unique Particle
Attribution rule in its components '##other' and '##any'" with FAST Schema
definition
Posted by "Fernando Jeronymo (JIRA)" <xe...@xml.apache.org>.
[ https://issues.apache.org/jira/browse/XERCESC-1758?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Fernando Jeronymo updated XERCESC-1758:
---------------------------------------
Attachment: fast.xsd
The schema file in question
> Incorrect "Unique Particle Attribution rule in its components '##other' and '##any'" with FAST Schema definition
> -----------------------------------------------------------------------------------------------------------------
>
> Key: XERCESC-1758
> URL: https://issues.apache.org/jira/browse/XERCESC-1758
> Project: Xerces-C++
> Issue Type: Bug
> Components: Validating Parser (Schema) (Xerces 1.5 or up only)
> Affects Versions: 2.8.0
> Environment: Linux 2.6.9-55.ELsmp #1 SMP x86_64 GNU/Linux
> Red Hat Enterprise Linux AS release 4 (Nahant Update 5)
> Xerces-C++ Version 2.8.0 compiled with g++ 4.2.1 64 bits
> Reporter: Fernando Jeronymo
> Attachments: fast.xsd
>
>
> When attempting to validate an XML file with the following schema (from http://www.fixprotocol.org/documents/3066/FAST%20Specification%201%20x%201.pdf [Appendix 2 W3C XML Schema (Non-Normative)] )
> With the following XML file:
> <?xml version="1.0" encoding="UTF-8"?>
> <templates xmlns="http://www.fixprotocol.org/ns/fast/td/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.fixprotocol.org/ns/fast/td/1.1 fast.xsd">
> <template name="MDIncRefresh" id="123">
> <typeRef name="MDIncRefresh"/>
> <uInt32 name="field1" id="1"> <copy/> </uInt32>
> <uInt32 name="field2" id="2"> </uInt32>
> <uInt32 name="field3" id="3"> <default value="300000000"/> </uInt32>
> <uInt32 name="field4" id="4"> <constant value="260000000"/> </uInt32>
> <uInt32 name="field5" id="5"> <delta/> </uInt32>
> <uInt32 name="field6" id="6"> <increment/> </uInt32>
> <uInt32 name="field7" id="7"> <copy/> </uInt32>
> <uInt32 name="field8" id="8"> <copy/> </uInt32>
> <uInt32 name="field9" id="9"> <copy/> </uInt32>
> <uInt32 name="field10" id="10"> <copy/> </uInt32>
> <uInt32 name="field11" id="11"> <copy/> </uInt32>
> <uInt32 name="field12" id="12"> <copy/> </uInt32>
> </template>
> </templates>
> I get the following error from Xerces-C:
> Error at file fastapi.xml, line 2, char 201
> Message: Complex type '__AnonC13' violates the Unique Particle Attribution rule in its components '##other' and '##any'
> However, other tools (including Xerces-J) validate the schema correctly.
> Below I attach the XSD schema in question:
> <?xml version="1.0" encoding="UTF-8"?>
> <xs:schema xmlns:td="http://www.fixprotocol.org/ns/fast/td/1.1" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.fixprotocol.org/ns/fast/td/1.1" elementFormDefault="qualified" attributeFormDefault="unqualified">
> <xs:element name="templates">
> <xs:complexType>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:element ref="td:template"/>
> <xs:group ref="td:other"/>
> </xs:choice>
> <xs:attribute name="ns"/>
> <xs:attribute name="templateNs"/>
> <xs:attribute name="dictionary">
> <xs:simpleType>
> <xs:union memberTypes="xs:string">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="template"/>
> <xs:enumeration value="type"/>
> <xs:enumeration value="global"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:union>
> </xs:simpleType>
> </xs:attribute>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:element name="template">
> <xs:complexType>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:choice>
> <xs:element ref="td:typeRef"/>
> <xs:group ref="td:instruction"/>
> </xs:choice>
> <xs:group ref="td:other"/>
> </xs:choice>
> <xs:attributeGroup ref="td:templateNsName"/>
> <xs:attribute name="ns"/>
> <xs:attribute name="dictionary">
> <xs:simpleType>
> <xs:union memberTypes="xs:string">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="template"/>
> <xs:enumeration value="type"/>
> <xs:enumeration value="global"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:union>
> </xs:simpleType>
> </xs:attribute>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:element name="typeRef">
> <xs:complexType>
> <xs:group ref="td:other"/>
> <xs:attributeGroup ref="td:nameAttr"/>
> <xs:attribute name="ns"/>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:group name="instruction">
> <xs:choice>
> <xs:group ref="td:field"/>
> <xs:element ref="td:templateRef"/>
> </xs:choice>
> </xs:group>
> <xs:group name="fieldInstrContent">
> <xs:sequence>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:group ref="td:fieldOp"/>
> <xs:group ref="td:other"/>
> </xs:choice>
> </xs:sequence>
> </xs:group>
> <xs:attributeGroup name="fieldInstrContent">
> <xs:attributeGroup ref="td:nsName"/>
> <xs:attribute name="presence">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="mandatory"/>
> <xs:enumeration value="optional"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:attribute>
> <xs:attributeGroup ref="td:other"/>
> </xs:attributeGroup>
> <xs:group name="field">
> <xs:choice>
> <xs:group ref="td:integerField"/>
> <xs:element ref="td:decimal"/>
> <xs:group ref="td:stringField"/>
> <xs:element ref="td:byteVector"/>
> <xs:element ref="td:sequence"/>
> <xs:element ref="td:group"/>
> </xs:choice>
> </xs:group>
> <xs:complexType name="integerField">
> <xs:group ref="td:fieldInstrContent"/>
> <xs:attributeGroup ref="td:fieldInstrContent"/>
> </xs:complexType>
> <xs:group name="integerField">
> <xs:choice>
> <xs:element ref="td:int32"/>
> <xs:element ref="td:uInt32"/>
> <xs:element ref="td:int64"/>
> <xs:element ref="td:uInt64"/>
> </xs:choice>
> </xs:group>
> <xs:element name="int32" type="td:integerField"/>
> <xs:element name="uInt32" type="td:integerField"/>
> <xs:element name="int64" type="td:integerField"/>
> <xs:element name="uInt64" type="td:integerField"/>
> <xs:element name="decimal">
> <xs:complexType>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:choice>
> <xs:group ref="td:fieldOp"/>
> <xs:choice>
> <xs:element ref="td:exponent"/>
> <xs:element ref="td:mantissa"/>
> </xs:choice>
> </xs:choice>
> <xs:group ref="td:other"/>
> </xs:choice>
> <xs:attributeGroup ref="td:nsName"/>
> <xs:attribute name="presence">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="mandatory"/>
> <xs:enumeration value="optional"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:attribute>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:element name="exponent">
> <xs:complexType>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:group ref="td:fieldOp"/>
> <xs:group ref="td:other"/>
> </xs:choice>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:element name="mantissa">
> <xs:complexType>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:group ref="td:fieldOp"/>
> <xs:group ref="td:other"/>
> </xs:choice>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:group name="stringField">
> <xs:sequence>
> <xs:element name="string">
> <xs:complexType>
> <xs:sequence>
> <xs:group ref="td:byteVectorLength" minOccurs="0"/>
> <xs:group ref="td:fieldInstrContent"/>
> </xs:sequence>
> <xs:attributeGroup ref="td:fieldInstrContent"/>
> <xs:attribute name="charset">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="ascii"/>
> <xs:enumeration value="unicode"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:attribute>
> </xs:complexType>
> </xs:element>
> </xs:sequence>
> </xs:group>
> <xs:element name="byteVector">
> <xs:complexType>
> <xs:sequence>
> <xs:group ref="td:byteVectorLength" minOccurs="0"/>
> <xs:group ref="td:fieldInstrContent"/>
> </xs:sequence>
> <xs:attributeGroup ref="td:fieldInstrContent"/>
> </xs:complexType>
> </xs:element>
> <xs:group name="byteVectorLength">
> <xs:sequence>
> <xs:element name="length">
> <xs:complexType>
> <xs:attributeGroup ref="td:nsName"/>
> </xs:complexType>
> </xs:element>
> </xs:sequence>
> </xs:group>
> <xs:element name="sequence">
> <xs:complexType>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:choice>
> <xs:element ref="td:typeRef"/>
> <xs:group ref="td:length"/>
> <xs:group ref="td:instruction"/>
> </xs:choice>
> <xs:group ref="td:other"/>
> </xs:choice>
> <xs:attributeGroup ref="td:nsName"/>
> <xs:attribute name="presence">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="mandatory"/>
> <xs:enumeration value="optional"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:attribute>
> <xs:attribute name="dictionary">
> <xs:simpleType>
> <xs:union memberTypes="xs:string">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="template"/>
> <xs:enumeration value="type"/>
> <xs:enumeration value="global"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:union>
> </xs:simpleType>
> </xs:attribute>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:group name="length">
> <xs:sequence>
> <xs:element name="length">
> <xs:complexType>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:group ref="td:fieldOp"/>
> <xs:group ref="td:other"/>
> </xs:choice>
> <xs:attribute name="name" type="xs:token"/>
> <xs:attribute name="ns"/>
> <xs:attribute name="id" type="xs:token"/>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> </xs:sequence>
> </xs:group>
> <xs:element name="group">
> <xs:complexType>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:choice>
> <xs:element ref="td:typeRef"/>
> <xs:group ref="td:instruction"/>
> </xs:choice>
> <xs:group ref="td:other"/>
> </xs:choice>
> <xs:attributeGroup ref="td:nsName"/>
> <xs:attribute name="presence">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="mandatory"/>
> <xs:enumeration value="optional"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:attribute>
> <xs:attribute name="dictionary">
> <xs:simpleType>
> <xs:union memberTypes="xs:string">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="template"/>
> <xs:enumeration value="type"/>
> <xs:enumeration value="global"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:union>
> </xs:simpleType>
> </xs:attribute>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:group name="fieldOp">
> <xs:choice>
> <xs:element ref="td:constant"/>
> <xs:element ref="td:default"/>
> <xs:element ref="td:copy"/>
> <xs:element ref="td:increment"/>
> <xs:element ref="td:delta"/>
> <xs:element ref="td:tail"/>
> </xs:choice>
> </xs:group>
> <xs:element name="constant">
> <xs:complexType>
> <xs:group ref="td:other"/>
> <xs:attributeGroup ref="td:initialValueAttr"/>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:element name="default">
> <xs:complexType>
> <xs:group ref="td:other"/>
> <xs:attribute name="value"/>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:element name="copy" type="td:opContext"/>
> <xs:element name="increment" type="td:opContext"/>
> <xs:element name="delta" type="td:opContext"/>
> <xs:element name="tail" type="td:opContext"/>
> <xs:attributeGroup name="initialValueAttr">
> <xs:attribute name="value" use="required"/>
> </xs:attributeGroup>
> <xs:complexType name="opContext">
> <xs:group ref="td:other"/>
> <xs:attribute name="dictionary">
> <xs:simpleType>
> <xs:union memberTypes="xs:string">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="template"/>
> <xs:enumeration value="type"/>
> <xs:enumeration value="global"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:union>
> </xs:simpleType>
> </xs:attribute>
> <xs:attribute name="key" type="xs:token"/>
> <xs:attribute name="ns"/>
> <xs:attribute name="value"/>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> <xs:element name="templateRef">
> <xs:complexType>
> <xs:group ref="td:other"/>
> <xs:attribute name="name" type="xs:token"/>
> <xs:attribute name="templateNs"/>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:attributeGroup name="nsName">
> <xs:attributeGroup ref="td:nameAttr"/>
> <xs:attribute name="ns"/>
> <xs:attribute name="id" type="xs:token"/>
> </xs:attributeGroup>
> <xs:attributeGroup name="templateNsName">
> <xs:attributeGroup ref="td:nameAttr"/>
> <xs:attribute name="templateNs"/>
> <xs:attribute name="id" type="xs:token"/>
> </xs:attributeGroup>
> <xs:attributeGroup name="nameAttr">
> <xs:attribute name="name" type="xs:token" use="required"/>
> </xs:attributeGroup>
> <xs:group name="other">
> <xs:sequence>
> <xs:group ref="td:foreignElm" minOccurs="0" maxOccurs="unbounded"/>
> </xs:sequence>
> </xs:group>
> <xs:attributeGroup name="other">
> <xs:attributeGroup ref="td:foreignAttr"/>
> </xs:attributeGroup>
> <xs:group name="foreignElm">
> <xs:choice>
> <xs:any namespace="##other" processContents="skip"/>
> <xs:any namespace="##local" processContents="skip"/>
> </xs:choice>
> </xs:group>
> <xs:attributeGroup name="foreignAttr">
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:attributeGroup>
> </xs:schema>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
[jira] Updated: (XERCESC-1758) Incorrect "Unique Particle
Attribution rule in its components '##other' and '##any'" with FAST Schema
definition
Posted by "Boris Kolpackov (JIRA)" <xe...@xml.apache.org>.
[ https://issues.apache.org/jira/browse/XERCESC-1758?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Boris Kolpackov updated XERCESC-1758:
-------------------------------------
Affects Version/s: (was: 2.9.0)
(was: 3.0.0)
2.8.0
Fix Version/s: 2.9.0
3.0.0
> Incorrect "Unique Particle Attribution rule in its components '##other' and '##any'" with FAST Schema definition
> -----------------------------------------------------------------------------------------------------------------
>
> Key: XERCESC-1758
> URL: https://issues.apache.org/jira/browse/XERCESC-1758
> Project: Xerces-C++
> Issue Type: Bug
> Components: Validating Parser (XML Schema)
> Affects Versions: 2.8.0
> Environment: Linux 2.6.9-55.ELsmp #1 SMP x86_64 GNU/Linux
> Red Hat Enterprise Linux AS release 4 (Nahant Update 5)
> Xerces-C++ Version 2.8.0 compiled with g++ 4.2.1 64 bits
> Reporter: Fernando Jeronymo
> Fix For: 3.0.0, 2.9.0
>
> Attachments: fast.xsd, fastExample.xml
>
>
> When attempting to validate an XML file with the following schema (from http://www.fixprotocol.org/documents/3066/FAST%20Specification%201%20x%201.pdf [Appendix 2 W3C XML Schema (Non-Normative)] )
> I get the following error from Xerces-C:
> Error at file fastapi.xml, line 2, char 201
> Message: Complex type '__AnonC13' violates the Unique Particle Attribution rule in its components '##other' and '##any'
> However, other tools (XMLSpy, Xerces-J) validate the schema correctly.
> I have attached both XSD and XML files that were used to test/reproduce the issue.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
[jira] Updated: (XERCESC-1758) Incorrect "Unique Particle
Attribution rule in its components '##other' and '##any'" with FAST Schema
definition
Posted by "Fernando Jeronymo (JIRA)" <xe...@xml.apache.org>.
[ https://issues.apache.org/jira/browse/XERCESC-1758?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Fernando Jeronymo updated XERCESC-1758:
---------------------------------------
Description:
When attempting to validate an XML file with the following schema (from http://www.fixprotocol.org/documents/3066/FAST%20Specification%201%20x%201.pdf [Appendix 2 W3C XML Schema (Non-Normative)] )
I get the following error from Xerces-C:
Error at file fastapi.xml, line 2, char 201
Message: Complex type '__AnonC13' violates the Unique Particle Attribution rule in its components '##other' and '##any'
However, other tools (XMLSpy, Xerces-J) validate the schema correctly.
I have attached both XSD and XML files that were used to test/reproduce the issue.
was:
When attempting to validate an XML file with the following schema (from http://www.fixprotocol.org/documents/3066/FAST%20Specification%201%20x%201.pdf [Appendix 2 W3C XML Schema (Non-Normative)] )
With the following XML file:
<?xml version="1.0" encoding="UTF-8"?>
<templates xmlns="http://www.fixprotocol.org/ns/fast/td/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.fixprotocol.org/ns/fast/td/1.1 fast.xsd">
<template name="MDIncRefresh" id="123">
<typeRef name="MDIncRefresh"/>
<uInt32 name="field1" id="1"> <copy/> </uInt32>
<uInt32 name="field2" id="2"> </uInt32>
<uInt32 name="field3" id="3"> <default value="300000000"/> </uInt32>
<uInt32 name="field4" id="4"> <constant value="260000000"/> </uInt32>
<uInt32 name="field5" id="5"> <delta/> </uInt32>
<uInt32 name="field6" id="6"> <increment/> </uInt32>
<uInt32 name="field7" id="7"> <copy/> </uInt32>
<uInt32 name="field8" id="8"> <copy/> </uInt32>
<uInt32 name="field9" id="9"> <copy/> </uInt32>
<uInt32 name="field10" id="10"> <copy/> </uInt32>
<uInt32 name="field11" id="11"> <copy/> </uInt32>
<uInt32 name="field12" id="12"> <copy/> </uInt32>
</template>
</templates>
I get the following error from Xerces-C:
Error at file fastapi.xml, line 2, char 201
Message: Complex type '__AnonC13' violates the Unique Particle Attribution rule in its components '##other' and '##any'
However, other tools (including Xerces-J) validate the schema correctly.
Below I attach the XSD schema in question:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:td="http://www.fixprotocol.org/ns/fast/td/1.1" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.fixprotocol.org/ns/fast/td/1.1" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="templates">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref="td:template"/>
<xs:group ref="td:other"/>
</xs:choice>
<xs:attribute name="ns"/>
<xs:attribute name="templateNs"/>
<xs:attribute name="dictionary">
<xs:simpleType>
<xs:union memberTypes="xs:string">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="template"/>
<xs:enumeration value="type"/>
<xs:enumeration value="global"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
</xs:attribute>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:element name="template">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:choice>
<xs:element ref="td:typeRef"/>
<xs:group ref="td:instruction"/>
</xs:choice>
<xs:group ref="td:other"/>
</xs:choice>
<xs:attributeGroup ref="td:templateNsName"/>
<xs:attribute name="ns"/>
<xs:attribute name="dictionary">
<xs:simpleType>
<xs:union memberTypes="xs:string">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="template"/>
<xs:enumeration value="type"/>
<xs:enumeration value="global"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
</xs:attribute>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:element name="typeRef">
<xs:complexType>
<xs:group ref="td:other"/>
<xs:attributeGroup ref="td:nameAttr"/>
<xs:attribute name="ns"/>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:group name="instruction">
<xs:choice>
<xs:group ref="td:field"/>
<xs:element ref="td:templateRef"/>
</xs:choice>
</xs:group>
<xs:group name="fieldInstrContent">
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="td:fieldOp"/>
<xs:group ref="td:other"/>
</xs:choice>
</xs:sequence>
</xs:group>
<xs:attributeGroup name="fieldInstrContent">
<xs:attributeGroup ref="td:nsName"/>
<xs:attribute name="presence">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="mandatory"/>
<xs:enumeration value="optional"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attributeGroup ref="td:other"/>
</xs:attributeGroup>
<xs:group name="field">
<xs:choice>
<xs:group ref="td:integerField"/>
<xs:element ref="td:decimal"/>
<xs:group ref="td:stringField"/>
<xs:element ref="td:byteVector"/>
<xs:element ref="td:sequence"/>
<xs:element ref="td:group"/>
</xs:choice>
</xs:group>
<xs:complexType name="integerField">
<xs:group ref="td:fieldInstrContent"/>
<xs:attributeGroup ref="td:fieldInstrContent"/>
</xs:complexType>
<xs:group name="integerField">
<xs:choice>
<xs:element ref="td:int32"/>
<xs:element ref="td:uInt32"/>
<xs:element ref="td:int64"/>
<xs:element ref="td:uInt64"/>
</xs:choice>
</xs:group>
<xs:element name="int32" type="td:integerField"/>
<xs:element name="uInt32" type="td:integerField"/>
<xs:element name="int64" type="td:integerField"/>
<xs:element name="uInt64" type="td:integerField"/>
<xs:element name="decimal">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:choice>
<xs:group ref="td:fieldOp"/>
<xs:choice>
<xs:element ref="td:exponent"/>
<xs:element ref="td:mantissa"/>
</xs:choice>
</xs:choice>
<xs:group ref="td:other"/>
</xs:choice>
<xs:attributeGroup ref="td:nsName"/>
<xs:attribute name="presence">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="mandatory"/>
<xs:enumeration value="optional"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:element name="exponent">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="td:fieldOp"/>
<xs:group ref="td:other"/>
</xs:choice>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:element name="mantissa">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="td:fieldOp"/>
<xs:group ref="td:other"/>
</xs:choice>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:group name="stringField">
<xs:sequence>
<xs:element name="string">
<xs:complexType>
<xs:sequence>
<xs:group ref="td:byteVectorLength" minOccurs="0"/>
<xs:group ref="td:fieldInstrContent"/>
</xs:sequence>
<xs:attributeGroup ref="td:fieldInstrContent"/>
<xs:attribute name="charset">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="ascii"/>
<xs:enumeration value="unicode"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:group>
<xs:element name="byteVector">
<xs:complexType>
<xs:sequence>
<xs:group ref="td:byteVectorLength" minOccurs="0"/>
<xs:group ref="td:fieldInstrContent"/>
</xs:sequence>
<xs:attributeGroup ref="td:fieldInstrContent"/>
</xs:complexType>
</xs:element>
<xs:group name="byteVectorLength">
<xs:sequence>
<xs:element name="length">
<xs:complexType>
<xs:attributeGroup ref="td:nsName"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:group>
<xs:element name="sequence">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:choice>
<xs:element ref="td:typeRef"/>
<xs:group ref="td:length"/>
<xs:group ref="td:instruction"/>
</xs:choice>
<xs:group ref="td:other"/>
</xs:choice>
<xs:attributeGroup ref="td:nsName"/>
<xs:attribute name="presence">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="mandatory"/>
<xs:enumeration value="optional"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="dictionary">
<xs:simpleType>
<xs:union memberTypes="xs:string">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="template"/>
<xs:enumeration value="type"/>
<xs:enumeration value="global"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
</xs:attribute>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:group name="length">
<xs:sequence>
<xs:element name="length">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="td:fieldOp"/>
<xs:group ref="td:other"/>
</xs:choice>
<xs:attribute name="name" type="xs:token"/>
<xs:attribute name="ns"/>
<xs:attribute name="id" type="xs:token"/>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:group>
<xs:element name="group">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:choice>
<xs:element ref="td:typeRef"/>
<xs:group ref="td:instruction"/>
</xs:choice>
<xs:group ref="td:other"/>
</xs:choice>
<xs:attributeGroup ref="td:nsName"/>
<xs:attribute name="presence">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="mandatory"/>
<xs:enumeration value="optional"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="dictionary">
<xs:simpleType>
<xs:union memberTypes="xs:string">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="template"/>
<xs:enumeration value="type"/>
<xs:enumeration value="global"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
</xs:attribute>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:group name="fieldOp">
<xs:choice>
<xs:element ref="td:constant"/>
<xs:element ref="td:default"/>
<xs:element ref="td:copy"/>
<xs:element ref="td:increment"/>
<xs:element ref="td:delta"/>
<xs:element ref="td:tail"/>
</xs:choice>
</xs:group>
<xs:element name="constant">
<xs:complexType>
<xs:group ref="td:other"/>
<xs:attributeGroup ref="td:initialValueAttr"/>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:element name="default">
<xs:complexType>
<xs:group ref="td:other"/>
<xs:attribute name="value"/>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:element name="copy" type="td:opContext"/>
<xs:element name="increment" type="td:opContext"/>
<xs:element name="delta" type="td:opContext"/>
<xs:element name="tail" type="td:opContext"/>
<xs:attributeGroup name="initialValueAttr">
<xs:attribute name="value" use="required"/>
</xs:attributeGroup>
<xs:complexType name="opContext">
<xs:group ref="td:other"/>
<xs:attribute name="dictionary">
<xs:simpleType>
<xs:union memberTypes="xs:string">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="template"/>
<xs:enumeration value="type"/>
<xs:enumeration value="global"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="key" type="xs:token"/>
<xs:attribute name="ns"/>
<xs:attribute name="value"/>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
<xs:element name="templateRef">
<xs:complexType>
<xs:group ref="td:other"/>
<xs:attribute name="name" type="xs:token"/>
<xs:attribute name="templateNs"/>
<xs:attributeGroup ref="td:other"/>
</xs:complexType>
</xs:element>
<xs:attributeGroup name="nsName">
<xs:attributeGroup ref="td:nameAttr"/>
<xs:attribute name="ns"/>
<xs:attribute name="id" type="xs:token"/>
</xs:attributeGroup>
<xs:attributeGroup name="templateNsName">
<xs:attributeGroup ref="td:nameAttr"/>
<xs:attribute name="templateNs"/>
<xs:attribute name="id" type="xs:token"/>
</xs:attributeGroup>
<xs:attributeGroup name="nameAttr">
<xs:attribute name="name" type="xs:token" use="required"/>
</xs:attributeGroup>
<xs:group name="other">
<xs:sequence>
<xs:group ref="td:foreignElm" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:group>
<xs:attributeGroup name="other">
<xs:attributeGroup ref="td:foreignAttr"/>
</xs:attributeGroup>
<xs:group name="foreignElm">
<xs:choice>
<xs:any namespace="##other" processContents="skip"/>
<xs:any namespace="##local" processContents="skip"/>
</xs:choice>
</xs:group>
<xs:attributeGroup name="foreignAttr">
<xs:anyAttribute namespace="##other" processContents="skip"/>
</xs:attributeGroup>
</xs:schema>
> Incorrect "Unique Particle Attribution rule in its components '##other' and '##any'" with FAST Schema definition
> -----------------------------------------------------------------------------------------------------------------
>
> Key: XERCESC-1758
> URL: https://issues.apache.org/jira/browse/XERCESC-1758
> Project: Xerces-C++
> Issue Type: Bug
> Components: Validating Parser (Schema) (Xerces 1.5 or up only)
> Affects Versions: 2.8.0
> Environment: Linux 2.6.9-55.ELsmp #1 SMP x86_64 GNU/Linux
> Red Hat Enterprise Linux AS release 4 (Nahant Update 5)
> Xerces-C++ Version 2.8.0 compiled with g++ 4.2.1 64 bits
> Reporter: Fernando Jeronymo
> Attachments: fast.xsd, fastExample.xml
>
>
> When attempting to validate an XML file with the following schema (from http://www.fixprotocol.org/documents/3066/FAST%20Specification%201%20x%201.pdf [Appendix 2 W3C XML Schema (Non-Normative)] )
> I get the following error from Xerces-C:
> Error at file fastapi.xml, line 2, char 201
> Message: Complex type '__AnonC13' violates the Unique Particle Attribution rule in its components '##other' and '##any'
> However, other tools (XMLSpy, Xerces-J) validate the schema correctly.
> I have attached both XSD and XML files that were used to test/reproduce the issue.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
[jira] Updated: (XERCESC-1758) Incorrect "Unique Particle
Attribution rule in its components '##other' and '##any'" with FAST Schema
definition
Posted by "Fernando Jeronymo (JIRA)" <xe...@xml.apache.org>.
[ https://issues.apache.org/jira/browse/XERCESC-1758?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Fernando Jeronymo updated XERCESC-1758:
---------------------------------------
Attachment: fastExample.xml
The XML file in question
> Incorrect "Unique Particle Attribution rule in its components '##other' and '##any'" with FAST Schema definition
> -----------------------------------------------------------------------------------------------------------------
>
> Key: XERCESC-1758
> URL: https://issues.apache.org/jira/browse/XERCESC-1758
> Project: Xerces-C++
> Issue Type: Bug
> Components: Validating Parser (Schema) (Xerces 1.5 or up only)
> Affects Versions: 2.8.0
> Environment: Linux 2.6.9-55.ELsmp #1 SMP x86_64 GNU/Linux
> Red Hat Enterprise Linux AS release 4 (Nahant Update 5)
> Xerces-C++ Version 2.8.0 compiled with g++ 4.2.1 64 bits
> Reporter: Fernando Jeronymo
> Attachments: fast.xsd, fastExample.xml
>
>
> When attempting to validate an XML file with the following schema (from http://www.fixprotocol.org/documents/3066/FAST%20Specification%201%20x%201.pdf [Appendix 2 W3C XML Schema (Non-Normative)] )
> With the following XML file:
> <?xml version="1.0" encoding="UTF-8"?>
> <templates xmlns="http://www.fixprotocol.org/ns/fast/td/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.fixprotocol.org/ns/fast/td/1.1 fast.xsd">
> <template name="MDIncRefresh" id="123">
> <typeRef name="MDIncRefresh"/>
> <uInt32 name="field1" id="1"> <copy/> </uInt32>
> <uInt32 name="field2" id="2"> </uInt32>
> <uInt32 name="field3" id="3"> <default value="300000000"/> </uInt32>
> <uInt32 name="field4" id="4"> <constant value="260000000"/> </uInt32>
> <uInt32 name="field5" id="5"> <delta/> </uInt32>
> <uInt32 name="field6" id="6"> <increment/> </uInt32>
> <uInt32 name="field7" id="7"> <copy/> </uInt32>
> <uInt32 name="field8" id="8"> <copy/> </uInt32>
> <uInt32 name="field9" id="9"> <copy/> </uInt32>
> <uInt32 name="field10" id="10"> <copy/> </uInt32>
> <uInt32 name="field11" id="11"> <copy/> </uInt32>
> <uInt32 name="field12" id="12"> <copy/> </uInt32>
> </template>
> </templates>
> I get the following error from Xerces-C:
> Error at file fastapi.xml, line 2, char 201
> Message: Complex type '__AnonC13' violates the Unique Particle Attribution rule in its components '##other' and '##any'
> However, other tools (including Xerces-J) validate the schema correctly.
> Below I attach the XSD schema in question:
> <?xml version="1.0" encoding="UTF-8"?>
> <xs:schema xmlns:td="http://www.fixprotocol.org/ns/fast/td/1.1" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.fixprotocol.org/ns/fast/td/1.1" elementFormDefault="qualified" attributeFormDefault="unqualified">
> <xs:element name="templates">
> <xs:complexType>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:element ref="td:template"/>
> <xs:group ref="td:other"/>
> </xs:choice>
> <xs:attribute name="ns"/>
> <xs:attribute name="templateNs"/>
> <xs:attribute name="dictionary">
> <xs:simpleType>
> <xs:union memberTypes="xs:string">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="template"/>
> <xs:enumeration value="type"/>
> <xs:enumeration value="global"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:union>
> </xs:simpleType>
> </xs:attribute>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:element name="template">
> <xs:complexType>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:choice>
> <xs:element ref="td:typeRef"/>
> <xs:group ref="td:instruction"/>
> </xs:choice>
> <xs:group ref="td:other"/>
> </xs:choice>
> <xs:attributeGroup ref="td:templateNsName"/>
> <xs:attribute name="ns"/>
> <xs:attribute name="dictionary">
> <xs:simpleType>
> <xs:union memberTypes="xs:string">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="template"/>
> <xs:enumeration value="type"/>
> <xs:enumeration value="global"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:union>
> </xs:simpleType>
> </xs:attribute>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:element name="typeRef">
> <xs:complexType>
> <xs:group ref="td:other"/>
> <xs:attributeGroup ref="td:nameAttr"/>
> <xs:attribute name="ns"/>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:group name="instruction">
> <xs:choice>
> <xs:group ref="td:field"/>
> <xs:element ref="td:templateRef"/>
> </xs:choice>
> </xs:group>
> <xs:group name="fieldInstrContent">
> <xs:sequence>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:group ref="td:fieldOp"/>
> <xs:group ref="td:other"/>
> </xs:choice>
> </xs:sequence>
> </xs:group>
> <xs:attributeGroup name="fieldInstrContent">
> <xs:attributeGroup ref="td:nsName"/>
> <xs:attribute name="presence">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="mandatory"/>
> <xs:enumeration value="optional"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:attribute>
> <xs:attributeGroup ref="td:other"/>
> </xs:attributeGroup>
> <xs:group name="field">
> <xs:choice>
> <xs:group ref="td:integerField"/>
> <xs:element ref="td:decimal"/>
> <xs:group ref="td:stringField"/>
> <xs:element ref="td:byteVector"/>
> <xs:element ref="td:sequence"/>
> <xs:element ref="td:group"/>
> </xs:choice>
> </xs:group>
> <xs:complexType name="integerField">
> <xs:group ref="td:fieldInstrContent"/>
> <xs:attributeGroup ref="td:fieldInstrContent"/>
> </xs:complexType>
> <xs:group name="integerField">
> <xs:choice>
> <xs:element ref="td:int32"/>
> <xs:element ref="td:uInt32"/>
> <xs:element ref="td:int64"/>
> <xs:element ref="td:uInt64"/>
> </xs:choice>
> </xs:group>
> <xs:element name="int32" type="td:integerField"/>
> <xs:element name="uInt32" type="td:integerField"/>
> <xs:element name="int64" type="td:integerField"/>
> <xs:element name="uInt64" type="td:integerField"/>
> <xs:element name="decimal">
> <xs:complexType>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:choice>
> <xs:group ref="td:fieldOp"/>
> <xs:choice>
> <xs:element ref="td:exponent"/>
> <xs:element ref="td:mantissa"/>
> </xs:choice>
> </xs:choice>
> <xs:group ref="td:other"/>
> </xs:choice>
> <xs:attributeGroup ref="td:nsName"/>
> <xs:attribute name="presence">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="mandatory"/>
> <xs:enumeration value="optional"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:attribute>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:element name="exponent">
> <xs:complexType>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:group ref="td:fieldOp"/>
> <xs:group ref="td:other"/>
> </xs:choice>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:element name="mantissa">
> <xs:complexType>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:group ref="td:fieldOp"/>
> <xs:group ref="td:other"/>
> </xs:choice>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:group name="stringField">
> <xs:sequence>
> <xs:element name="string">
> <xs:complexType>
> <xs:sequence>
> <xs:group ref="td:byteVectorLength" minOccurs="0"/>
> <xs:group ref="td:fieldInstrContent"/>
> </xs:sequence>
> <xs:attributeGroup ref="td:fieldInstrContent"/>
> <xs:attribute name="charset">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="ascii"/>
> <xs:enumeration value="unicode"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:attribute>
> </xs:complexType>
> </xs:element>
> </xs:sequence>
> </xs:group>
> <xs:element name="byteVector">
> <xs:complexType>
> <xs:sequence>
> <xs:group ref="td:byteVectorLength" minOccurs="0"/>
> <xs:group ref="td:fieldInstrContent"/>
> </xs:sequence>
> <xs:attributeGroup ref="td:fieldInstrContent"/>
> </xs:complexType>
> </xs:element>
> <xs:group name="byteVectorLength">
> <xs:sequence>
> <xs:element name="length">
> <xs:complexType>
> <xs:attributeGroup ref="td:nsName"/>
> </xs:complexType>
> </xs:element>
> </xs:sequence>
> </xs:group>
> <xs:element name="sequence">
> <xs:complexType>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:choice>
> <xs:element ref="td:typeRef"/>
> <xs:group ref="td:length"/>
> <xs:group ref="td:instruction"/>
> </xs:choice>
> <xs:group ref="td:other"/>
> </xs:choice>
> <xs:attributeGroup ref="td:nsName"/>
> <xs:attribute name="presence">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="mandatory"/>
> <xs:enumeration value="optional"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:attribute>
> <xs:attribute name="dictionary">
> <xs:simpleType>
> <xs:union memberTypes="xs:string">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="template"/>
> <xs:enumeration value="type"/>
> <xs:enumeration value="global"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:union>
> </xs:simpleType>
> </xs:attribute>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:group name="length">
> <xs:sequence>
> <xs:element name="length">
> <xs:complexType>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:group ref="td:fieldOp"/>
> <xs:group ref="td:other"/>
> </xs:choice>
> <xs:attribute name="name" type="xs:token"/>
> <xs:attribute name="ns"/>
> <xs:attribute name="id" type="xs:token"/>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> </xs:sequence>
> </xs:group>
> <xs:element name="group">
> <xs:complexType>
> <xs:choice minOccurs="0" maxOccurs="unbounded">
> <xs:choice>
> <xs:element ref="td:typeRef"/>
> <xs:group ref="td:instruction"/>
> </xs:choice>
> <xs:group ref="td:other"/>
> </xs:choice>
> <xs:attributeGroup ref="td:nsName"/>
> <xs:attribute name="presence">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="mandatory"/>
> <xs:enumeration value="optional"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:attribute>
> <xs:attribute name="dictionary">
> <xs:simpleType>
> <xs:union memberTypes="xs:string">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="template"/>
> <xs:enumeration value="type"/>
> <xs:enumeration value="global"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:union>
> </xs:simpleType>
> </xs:attribute>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:group name="fieldOp">
> <xs:choice>
> <xs:element ref="td:constant"/>
> <xs:element ref="td:default"/>
> <xs:element ref="td:copy"/>
> <xs:element ref="td:increment"/>
> <xs:element ref="td:delta"/>
> <xs:element ref="td:tail"/>
> </xs:choice>
> </xs:group>
> <xs:element name="constant">
> <xs:complexType>
> <xs:group ref="td:other"/>
> <xs:attributeGroup ref="td:initialValueAttr"/>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:element name="default">
> <xs:complexType>
> <xs:group ref="td:other"/>
> <xs:attribute name="value"/>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:element name="copy" type="td:opContext"/>
> <xs:element name="increment" type="td:opContext"/>
> <xs:element name="delta" type="td:opContext"/>
> <xs:element name="tail" type="td:opContext"/>
> <xs:attributeGroup name="initialValueAttr">
> <xs:attribute name="value" use="required"/>
> </xs:attributeGroup>
> <xs:complexType name="opContext">
> <xs:group ref="td:other"/>
> <xs:attribute name="dictionary">
> <xs:simpleType>
> <xs:union memberTypes="xs:string">
> <xs:simpleType>
> <xs:restriction base="xs:token">
> <xs:enumeration value="template"/>
> <xs:enumeration value="type"/>
> <xs:enumeration value="global"/>
> </xs:restriction>
> </xs:simpleType>
> </xs:union>
> </xs:simpleType>
> </xs:attribute>
> <xs:attribute name="key" type="xs:token"/>
> <xs:attribute name="ns"/>
> <xs:attribute name="value"/>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> <xs:element name="templateRef">
> <xs:complexType>
> <xs:group ref="td:other"/>
> <xs:attribute name="name" type="xs:token"/>
> <xs:attribute name="templateNs"/>
> <xs:attributeGroup ref="td:other"/>
> </xs:complexType>
> </xs:element>
> <xs:attributeGroup name="nsName">
> <xs:attributeGroup ref="td:nameAttr"/>
> <xs:attribute name="ns"/>
> <xs:attribute name="id" type="xs:token"/>
> </xs:attributeGroup>
> <xs:attributeGroup name="templateNsName">
> <xs:attributeGroup ref="td:nameAttr"/>
> <xs:attribute name="templateNs"/>
> <xs:attribute name="id" type="xs:token"/>
> </xs:attributeGroup>
> <xs:attributeGroup name="nameAttr">
> <xs:attribute name="name" type="xs:token" use="required"/>
> </xs:attributeGroup>
> <xs:group name="other">
> <xs:sequence>
> <xs:group ref="td:foreignElm" minOccurs="0" maxOccurs="unbounded"/>
> </xs:sequence>
> </xs:group>
> <xs:attributeGroup name="other">
> <xs:attributeGroup ref="td:foreignAttr"/>
> </xs:attributeGroup>
> <xs:group name="foreignElm">
> <xs:choice>
> <xs:any namespace="##other" processContents="skip"/>
> <xs:any namespace="##local" processContents="skip"/>
> </xs:choice>
> </xs:group>
> <xs:attributeGroup name="foreignAttr">
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:attributeGroup>
> </xs:schema>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
[jira] Updated: (XERCESC-1758) Incorrect "Unique Particle
Attribution rule in its components '##other' and '##any'" with FAST Schema
definition
Posted by "Boris Kolpackov (JIRA)" <xe...@xml.apache.org>.
[ https://issues.apache.org/jira/browse/XERCESC-1758?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Boris Kolpackov updated XERCESC-1758:
-------------------------------------
Affects Version/s: (was: 2.8.0)
2.9.0
3.0.0
I was investigating the same problem today. The reason it fails is that Xerces-C++ uses the old interpretation for ##other. Before, in a schema with target namespace, it used to mean all other namespaces and the no-namespace case. The spec was changed to exclude the no-namespace case. The fragment that is causing the UPA looks like this:
<xs:group name="foreignElm">
<xs:choice>
<xs:any namespace="##other" processContents="skip"/>
<xs:any namespace="##local" processContents="skip"/>
</xs:choice>
</xs:group>
We need to chage this in two places: in the code that checks for UPA and in the code that actually validates instances. It would also be nice to figure out why the error message says ##any instead of ##local, perhaps we have a bug there that will affect diagnostics of reals UPAs.
> Incorrect "Unique Particle Attribution rule in its components '##other' and '##any'" with FAST Schema definition
> -----------------------------------------------------------------------------------------------------------------
>
> Key: XERCESC-1758
> URL: https://issues.apache.org/jira/browse/XERCESC-1758
> Project: Xerces-C++
> Issue Type: Bug
> Components: Validating Parser (XML Schema)
> Affects Versions: 3.0.0, 2.9.0
> Environment: Linux 2.6.9-55.ELsmp #1 SMP x86_64 GNU/Linux
> Red Hat Enterprise Linux AS release 4 (Nahant Update 5)
> Xerces-C++ Version 2.8.0 compiled with g++ 4.2.1 64 bits
> Reporter: Fernando Jeronymo
> Attachments: fast.xsd, fastExample.xml
>
>
> When attempting to validate an XML file with the following schema (from http://www.fixprotocol.org/documents/3066/FAST%20Specification%201%20x%201.pdf [Appendix 2 W3C XML Schema (Non-Normative)] )
> I get the following error from Xerces-C:
> Error at file fastapi.xml, line 2, char 201
> Message: Complex type '__AnonC13' violates the Unique Particle Attribution rule in its components '##other' and '##any'
> However, other tools (XMLSpy, Xerces-J) validate the schema correctly.
> I have attached both XSD and XML files that were used to test/reproduce the issue.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
[jira] Issue Comment Edited: (XERCESC-1758) Incorrect "Unique
Particle Attribution rule in its components '##other' and '##any'" with
FAST Schema definition
Posted by "Fernando Jeronymo (JIRA)" <xe...@xml.apache.org>.
[ https://issues.apache.org/jira/browse/XERCESC-1758?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12541437 ]
fjeronymo edited comment on XERCESC-1758 at 11/9/07 12:51 PM:
----------------------------------------------------------------------
Adding schema file.
was (Author: fjeronymo):
The schema file in question
> Incorrect "Unique Particle Attribution rule in its components '##other' and '##any'" with FAST Schema definition
> -----------------------------------------------------------------------------------------------------------------
>
> Key: XERCESC-1758
> URL: https://issues.apache.org/jira/browse/XERCESC-1758
> Project: Xerces-C++
> Issue Type: Bug
> Components: Validating Parser (Schema) (Xerces 1.5 or up only)
> Affects Versions: 2.8.0
> Environment: Linux 2.6.9-55.ELsmp #1 SMP x86_64 GNU/Linux
> Red Hat Enterprise Linux AS release 4 (Nahant Update 5)
> Xerces-C++ Version 2.8.0 compiled with g++ 4.2.1 64 bits
> Reporter: Fernando Jeronymo
> Attachments: fast.xsd, fastExample.xml
>
>
> When attempting to validate an XML file with the following schema (from http://www.fixprotocol.org/documents/3066/FAST%20Specification%201%20x%201.pdf [Appendix 2 W3C XML Schema (Non-Normative)] )
> I get the following error from Xerces-C:
> Error at file fastapi.xml, line 2, char 201
> Message: Complex type '__AnonC13' violates the Unique Particle Attribution rule in its components '##other' and '##any'
> However, other tools (XMLSpy, Xerces-J) validate the schema correctly.
> I have attached both XSD and XML files that were used to test/reproduce the issue.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org