Esquema XML para elementos com o mesmo nome mas sub-estrutura diferente dependendo do contexto
Eu tento definir um esquema para documentos XML que recebo.
Os documentos parecem:
<root>
<items>
<group name="G-1">
<item name="I-1"/>
<item name="I-2"/>
<item name="I-3"/>
<item name="I-4"/>
</group>
</items>
<data>
<group name="G-1" place="here">
<customer name="C-1">
<item name="I-1" count="3"/>
<item name="I-2" count="4"/>
</customer>
<customer name="C-2">
<item name="I-3" count="7"/>
</customer>
</group>
</data>
</root>
Eu tentei XmlSpy e xsd.exe do .NET 2.0. Ambas as definições de esquema criadas que permitem abaixo<group>
qualquer número de<item>
e<customer>
elementos. Mas o que eu estou procurando deve restringir<group>
abaixo<items>
para<item>
elementos e<group>
abaixo<data>
para<customer>
elementos.
Isso é algo que o esquema xml não é capaz de todo?