Re: [xml-dev] Policy people, philosophers, ethics people, peoplewith great wisdom ... What do you recommend?
Hi Folks,
We have an interesting situation: one development team followed the XML Schema specification strictly, the other team recognized a flaw in the specification and instead followed its intent. Who's right? Where should we go? I am interested to hear your thoughts on this issue.
Let's summarize:
1. Xerces reports an error with the below schema.
2. Saxon reports that the below schema is fine.
3. Xerces strictly follows the algorithm specified in the XML Schema specification.
4. Saxon does not strictly follow the algorithm because the Saxon team recognized that the algorithm is flawed.
5. We have an interoperability problem: when validating the exact same schema, system 1 using Xerces gets a different result than system 2 using Saxon.
So, where do we go from here? As I see it, there are three choices:
(a) The Xerces team modifies their code to be consistent with Saxon.
(b) The Saxon team modifies their code to be consistent with Xerces.
(c) Both the Xerces team and the Saxon team do nothing and the world remains in the current state of non-interoperability.
Thoughts?
/Roger
----------------------------------------------------------------------------------
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="A" type="xs:double" />
<xs:element name="B" substitutionGroup="A" type="xs:double" />
<xs:complexType name="base">
<xs:sequence>
<xs:element ref="A" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="derived">
<xs:complexContent>
<xs:restriction base="base">
<xs:sequence>
<xs:element ref="B" minOccurs="0" />
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:schema>