[
Lists Home |
Date Index |
Thread Index
]
I have been trying to work with a set of published schemas that use
substitution groups and found that the schemas themselves were not valid. So
I started looking at other published schemas that use them and found that
these were also not accepted by one or more XML processors (I tried Xerces,
MSXML and .NET) or used some very complex work-arounds.
Are substitution groups practical when the head of the group is in a
different schema document from the members of the group? The scenario is
this:
File A defines a complex data type AType and an element A of that type.
File B defines a complex type BType that is an extension of AType and an
element B of that type. Element B is in the substitution group for element
A.
It as an error if File B does not <include> file A since the XML Processor
can't find the head of the substitution group.
File A must <include> file B otherwise an instance that uses element B will
be invalid.
However, if I have the circular <include> (file A <include>s file B and file
B <include>s file A) as some published examples do, MSXML is unhappy because
it sees multiple definitions.
Am I being really stupid here? I'll probably realise as soon as I post this.
Regards
Paul Spencer
|