1337: XSD: Mehrere Elemente mit gleichem Attribut

Beitrag lesen

Hi zusammen,

gegeben ist folgende XML-Struktur:

<foo>
    <bar value="1">
    <bar value="1">
</foo>

Das Attribut des Knotens <bar> darf beispielsweise "1" oder "2" sein. Taucht der Knoten aber mehrfach auf, müssen alle <bar>-Knoten die gleiche "value" haben. Weiß jemand, wie ich das in einer XSD definieren kann?

Ich habe versucht, dass mit "xsd:unique" zu lösen:

<xsd:unique name="foobar">
    <xsd:selector xpath=".//bar" />
    <xsd:field xpath="@value" />
</xsd:unique>

Das doofe ist, dass das XML nur valide wäre, wenn alle <foo>-Knoten unterschiedliche (=eindeutige) "value" haben. Ich bräuchte im Prinzip genau das Gegenteil. Aber laut Spezifikation scheint's kein "equal" zu geben...

Wäre toll, wenn mir jemand bei meinem Problem helfen könnte :-)

Gruß
1337