Freigeben über


ATTLIST (Attributliste)

Mit der ATTLIST-Anweisung kann jedes einzelne Attribut aufgelistet und deklariert werden, das zu einem Element gehören kann. Zuerst wird der Name der Elemente angegeben, auf die die Attributliste angewendet werden soll. Anschließend wird jedes Attribut nach Name aufgelistet und angegeben, ob dieses Attribut erforderlich ist. Außerdem wird angegeben, welche Zeichendaten als Wert enthalten sein dürfen.

Syntax

<!ATTLIST  elementName  attributeName  dataType  default >

Parameter

  • elementName
    Der Name des Elements, auf das die Attributliste angewendet wird.
  • attributeName
    Der Name eines Attributs. Dieser Parameter kann so oft wie erforderlich wiederholt werden, um alle bei Verwendung mit elementName verfügbaren Attribute aufzulisten.
  • dataType
    Der Datentyp des im attributeName-Parameter genannten Attributs. Der Datentyp muss einem der folgenden Typen entsprechen:

    • CDATA – Das Attribut enthält nur Zeichendaten.

    • ID – Der Wert des Attributs muss eindeutig sein. Er kann nicht in anderen Elementen oder Attributen wiederholt werden, die in diesem Dokument verwendet werden.

    • IDREF – Das Attribut verweist auf den Wert eines anderen Attributs im Dokument, das vom Typ ID ist.

    • ENTITY – Der Attributwert muss dem Namen einer externen und nicht verarbeiteten ENTITY entsprechen, die außerdem in derselben DTD deklariert ist.

    • ENTITIES – Der Attributwert enthält mehrere Namen von externen und nicht analysierten Entitäten, die in der DTD deklariert sind.

    • NMTOKEN – Der Attributwert muss ein Namenstoken sein. In Namenstoken sind Zeichendatenwerte zulässig, für diese gibt es jedoch mehr Einschränkungen als für CDATA. Ein Namenstoken kann Buchstaben, Zahlen, Interpunktionszeichen (z. B. Punkte, Bindestriche, Unterstriche und Doppelpunkte) enthalten. In einem Namenstokenwert kann jedoch kein Leerraumzeichen enthalten sein.

    • NMTOKENS – Der Attributwert enthält mehrere Namenstoken. Weitere Informationen erhalten Sie in der Beschreibung zu "NMTOKEN" und "Enumerated".

    • Enumerated – Die Attributwerte sind auf die Werte innerhalb einer Enumerationsliste beschränkt. Es erfolgt nur für die Werte eine gültige Analyse, die mit den aufgelisteten Werten übereinstimmen. Alle enumerierten Datentypen werden in Klammern eingeschlossen. Dabei werden die einzelnen Werte durch einen vertikalen Balken ("|") getrennt.

  • default
    Der Standardwert für das Attribut, das in attributeName genannt wird. In der folgenden Tabelle sind die möglichen Standardwerte beschrieben.

    Standards Beschreibung

    #REQUIRED

    Das Attribut muss im XML-Dokument angezeigt werden, oder es wird ein Parserfehler erzeugt. Um einen Parserfehler in einigen Fällen zu vermeiden, können Sie optional das Feld defaultValue verwenden, das direkt auf dieses Schlüsselwort folgt.

    #IMPLIED

    Das Attribut kann im XML-Dokument stehen. Wenn es ausgelassen wird, wird kein Parserfehler erzeugt. Optional können Sie in einigen Fällen auch das Feld defaultValue hinter diesem Schlüsselwort verwenden.

    #FIXED

    Der Attributwert ist in der DTD festgelegt und kann im XML-Dokument nicht geändert oder überschrieben werden. Wenn dieses Schlüsselwort verwendet wird, muss das Feld defaultValue, das direkt auf dieses Schlüsselwort folgt, auch verwendet werden, um den festgelegten Attributwert zu deklarieren.

    defaultValue

    Ein Standardwert oder ein festgelegter Wert. Der Parser fügt diesen Wert in das XML-Dokument ein, wenn dieses Attribut fehlt oder im XML-Dokument nicht verwendet wird. Alle Werte müssen in Anführungszeichen (einfache oder doppelte Anführungszeichen) eingeschlossen werden.

ms256140.note(de-de,VS.100).gifHinweis:
Für jede in der DTD vorgenommene ATTLIST-Deklaration muss nur ein Vorkommen von elementName verwendet werden.Die Parameter attributeName, dataType und default definieren die einzelnen Attribute in der Liste und können so oft wie erforderlich wiederholt werden, um alle Attribute aufzulisten und zu definieren, die für die Verwendung mit elementName verfügbar sind.

Beispiel

In diesem Beispiel wird Folgendes für das <book>-Element deklariert:

  • Ein optionales publisher-Attribut, in dem nur Zeichendaten enthalten sein können.

  • Ein festes reseller-Attribut, dessen Wert auf "MyStore". festgelegt ist

  • Ein erforderliches ISBN-Attribut, in dem ein eindeutiger Identifizierungswert für jedes <book>-Element im XML-Dokument enthalten sein muss.

  • Ein erforderliches InPrint-Attribut, in dem entweder der Wert "yes" oder "no" enthalten sein muss. Als Standard wird der Wert "yes" erzwungen, wenn der Wert nicht explizit im XML-Dokument festgelegt wurde.

Siehe auch

Konzepte

ELEMENT
ENTITY
NOTATION