Olaf Schneider: (XML SCHEMA) IDREFS mit key/keyref

Beitrag lesen

Hallo,

ich suche eine Möglichkeit, per XML Schema ein Attribut wie folgt zu validieren. Dieses soll genau dann valid sein, wenn es eine (whitespaceseparierte) Liste von Referenzen auf existierende IDs enthält:

  
<root titel="Beispiel 1" status="ich bin valid">  
    <zutat id="a">Apfel</zutat>  
    <zutat id="b">Birne</zitat>  
    <rezept zutaten="a b">Obstsalat</rezept>  
</root>  

  
<root titel="Beispiel 2" status="ich bin nicht valid, da ich c nicht kenne">  
    <zutat id="a">Aprikose</zutat>  
    <zutat id="b">Banane</zitat>  
    <rezept zutaten="a c">Oops-Salat</rezept>  
</root>  

Einfach ist es, mit Hilfe von xsd:key und xsd:keyref zu validieren, ob der Wert des zutaten-Attributs eine existierende Id ist.

Ich schaffe es allerdings nicht, ein Schema zu formulieren, welches validiert, ob der Wert des zutaten-Attributs eine _Liste_ existierender Id-s ist.

Auf ID und IDREFS möchte ich verzichten.

Jegliche Hilfestellung, Links, Beispiele oder Ideen sind willkommen.

Gruß
Olaf