Rouven: DTD vs. XML: Invalid attribute value...

Beitrag lesen

Hallo,

ich beschäftige seit ein paar Tagen mit XML und bin gerade dabei eine DTD zu erstellen. Gerade bin ich dabei ein Tag zu deklarieren, das mir den Vergleich von zwei Elementen ("elem") erlaubt. Als Attribut soll dieses Tag den Vergleichsoperator mitbekommen. Deklariert habe ich in der DTD folgendes:
<!ENTITY entity_comparison    "(less|greater|greater_or_equal|less_or_equal|equal|not_equal|isnull)">
In der Hoffnung, es hieße, dass ein entity_comparison aus einem dieser String-Werte bestehen muss.

Dazu gehört nun das condition-element:
<!ELEMENT condition    (elem, (elem)?)>
<!ATTLIST condition
 comparison (entity_comparison) #REQUIRED>

Mein DTD-Validator ist soweit zufrieden (was natürlich nichts heißt, vielleicht steht da ja was gültiges, was aber inhaltlich keinen Sinn macht). Nun kommt in meinem XML-File folgendes:
<condition comparison="greater">
   <elem>C_DATE</elem>
   <elem>24.12.2003</elem>
</condition>
Jetzt sagt mir der Validator, dass ich comparison nicht gemäß DTD befüllt habe.

Frage 1: Ist die DTD falsch?
Frage 2: if (!Frage1) was ist am XML falsch?

Danke!

MfG
Rouven

--

-------------------
ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(