Don Pedro: Übersicht der XSD-Schlüsselwörter

Hallo,

kennt jemand hier irgendwo im Netz eine vernünftige Übersicht über die Schlüsselwörter zu XSD?

Ich wollte mich mal ein wenig einlesen und habe in den Normen des w3c zu XSD gelesen (http://www.w3.org/TR/xmlschema-0/ und ff.)

Diese Dokumente finde ich leider richtiggehend grottenschlecht, was u.a. daran liegt, dass es nirgendwo eine Erläuterung gibt, die zu den Schlüsselwörtern erklärt wann und wo dieses benutzt werden können/müssen/dürfen.

So gibt es z. B. ein xsd:complexContent, das aber nur manchmal hinter einem xsd:complexType auftaucht. Nirgendwo finde ich aber eine Erklärung, wann xsd:complexContent zu benutzen ist und wann nicht. Und so zieht sich das durch das halbe Dokument. Nerv!

Eigentlich wollte ich für den Anfang erstmal nur ein paar benutzerdefinierte Datentypen aus den vorhandenen ableiten. Ich habe also versucht in diesem Wust ein paar Informationen zu finden, wie das aufzubauen ist. Da steht man dann da und sucht nach etwas von dem man weiß, dass es irgendwo in dem Dokument versteckt sein muss, findet's aber nicht.

Beispiel: Ein Datentyp mit folgendem Aufbau soll definiert werden:

<array6>
  <elem nr="1">v1</elem>
  <elem nr="2">v2</elem>
  ...
  <elem nr="6">v6</elem>
</array6>

Hierbei soll zulässig sein, nicht benötigte elems wegzulassen und die angegebenen Elemente sollen eine beliebige Reihenfolge haben dürfen, da sie ja durch das Attribut nr hinreichend unterscheidbar sind.

Sinnvollerweise würde man erstmal den Datentyp elem definieren und dann array aus den elems v1...v6 zusammensetzen. Also möchte ich definieren, dass <array6> ein complexType ist, der aus 0...6 elem-Kindern besteht, die sich dadurch auszeichnen, dass jeder Wert des Attributes nr in der gesamten Liste der Arrayelemente maximal einmal vorkommen darf. Aber wie sag ich das meinem Schema...???

Gruß

Don

  1. Hi Don!

    Ich empfehle dir (für die komplette xml/xsd/xsl Familie) die Tutorials von zvon.org ("Hat mich auch sehr gehelft...")

    Grüsse,
    Richard