cd34: XMLSchema Frage

Hallo,

ich habe hier ein XML Schema und ich lasse mir mit einem externen Programm meine xml (mit verknüpften xml schema) prüfen. Das Programm meldet mir nun einen Fehler für die xml Datei, angeblich wuerde ein Attribut fehlen. Die Attributegruppe im xml schema sieht so aus:

<attributeGroup name="numericItem">
<attributeGroup ref="so:mainNumericItems"/>
<attribute name="precision" type="so:precisionType" use="optional"/>
<attribute name="decimals" type="so:decimalsType" use="optional"/>
</attributeGroup>

Das externe Programm meldet mir nun, dass ich bei einem element vergessen habe entweder ein attribute precision oder ein attribute decimals zu setzen. So wie ich das Schema aber lese ist es doch nicht noetig, das Elemente mit der Attributegruppe numericItem eines der beiden Attribute enthalten muss, da ja jeweils use auf optional steht, oder habe ich da etwas falsch verstanden?

Wuerde mich freuen, wenn mich einer aufklären koennte, obich oder die Programmierer des anderen Programms auf dem Schlauch stehen.

  1. Wuerde mich freuen, wenn mich einer aufklären koennte, obich oder die Programmierer des anderen Programms auf dem Schlauch stehen.

    Nur mal so als Tipp: YMLSpy in der Evaluierungsversion installieren, dann erklären sich viele Fragen zur Validität quasi wie von selbst.

    1. Das geht leider nicht, da dies eine Verbund von XML schema ist, die nicht über schema location angegeben werden und jegliches schema zu importieren erscheint mir ziemlich unwegbar. Ich habe eine kommerzielle Version von Oxygen, bzw. koennte ich auch mit libxml2 validieren, es geht mir aber insbesondere nur darum, ob diese Stelle von der externen Software falsch interpretiert wird. Ich will ja nur lediglich wissen, ob mir jemand sagen kann, ob bei dieser schemavorlage wirklich eines der beiden attribute angewendet werden muss oder ob ich beide attribute weglassen kann. Es ist also mehr eine Verständnisfrage fuer mich.