Hi All,
I am having a perplexing problem using Xerces 3..0 to parse an XML with a
reference to its XML schema. Basically, the schema defines an abstract complex
type and several derived types (using extension or restriction). I built the
Xerces library by myself (in different platforms), and I ran the same problem
in different platforms (for example, windows 32 bit and windows 64 bit). What I
noticed is that the order of elements (in this case derived complex types) is
different in windows 32 bit from windows 64 bit! Is this a known issue or I did
something wrong?
I am attaching my schema here.
Thanks much in advance!
Gordon
=================
Here is my code snippet:
SchemaValidator& sv = (SchemaValidator&)m_parser->getValidator();
RefHashTableOfEnumerator<Grammar> grammars = sv.getGrammars();
{
Grammar& curGrammar = grammars.nextElement();
{
SchemaGrammar& schemaGrammar =
(SchemaGrammar&)curGrammar;
RefHashTableOf<ComplexTypeInfo>* complexTypeRegistry =
schemaGrammar->getComplexTypeRegistry();
{
RefHashTableOfEnumerator<ComplexTypeInfo>
enumComplexTypes(complexTypeRegistry);
{
***Different order of
complexType is noticed here*****
***The bucketlist in the
hashtable complexTypeRegistry seems to store the elements in different
order***** }
}
}
} if(complexTypeRegistry)
while(enumComplexTypes.hasMoreElements())
constComplexTypeInfo& ct = enumComplexTypes.nextElement();
while(grammars.hasMoreElements()) if(curGrammar.getGrammarType()
== Grammar::SchemaGrammarType)