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?

questionAnswers(2)

yourAnswerToTheQuestion