DTD - Eigenschaft


In der DTD werden Attribute durch ATTLIST-Deklarationen deklariert.


Eigenschaft deklarieren

Attributdeklarationen verwenden die folgende Syntax:

<!ATTLIST element-name attribute-name attribute-type attribute-value>

DTD-Beispiel:

<!ATTLIST payment type CDATA "check">

XML-Beispiel:

<payment type="check" />

Die folgenden sindEigenschaftstypOptionen für:

Type Beschreibung
CDATA Der Wert ist Zeichendaten
(en1|en2|..) Dieser Wert ist einer der Werte in einer Aufzählungsliste
ID Der Wert ist eine eindeutige ID
IDREF Der Wert ist eine ID eines anderen Elements
IDREFS Der Wert ist eine Liste anderer IDs
NMTOKEN Der Wert ist ein gültiger XML-Name
NMTOKENS Eine Liste zulässiger XML-Namen.
ENTITY Der Wert ist eine Entität
ENTITIES Der Wert ist eine Liste von Entitäten
NOTATION Dieser Wert ist der Name eines Symbols
xml: Der Wert ist ein vordefinierter XML-Wert

StandardEigenschaftswertDie folgenden Werte können verwendet werden:

Wert Erklärung
Wert Der Standardwert des Attributs
#REQUIRED Der Attributwert ist erforderlich
#IMPLIED Das Attribut ist nicht erforderlich
#FIXED value Der Attributwert ist festgelegt


Standard-Attributwert

DTD:
<!ELEMENT square EMPTY>
<!ATTLIST square width CDATA "0">

Gültiges XML:
<square width="100" />

Im obigen Beispiel wird "square" als ein leeres Element mit einem "width"-Attribut vom Typ CDATA definiert. Wenn width nicht gesetzt ist, ist sein Standardwert 0.


#REQUIRED

Syntax

<!ATTLIST element-name attribute-name attribute-type #REQUIRED>

Beispiel

DTD:
<!ATTLIST person number CDATA #REQUIRED>

Gültiges XML:
<person number="5677" />

Ungültiges XML:
<person />

Wenn Sie keine Standardwertoption haben, aber dennoch Autoren dazu zwingen möchten, das Attribut anzugeben, verwenden Sie das Schlüsselwort #REQUIRED.


#IMPLIED

Syntax

<!ATTLIST element-name attribute-name attribute-type #IMPLIED>

Beispiel

DTD:
<!ATTLIST contact fax CDATA #IMPLIED>

Gültiges XML:
<contact fax="555-667788" />

Gültiges XML:
<contact />

Wenn Sie Autoren nicht dazu zwingen möchten, das Attribut anzugeben, und Sie keine Standardwertoption haben, verwenden Sie das Schlüsselwort #IMPLIED.


#FIXED

Syntax

<!ATTLIST element-name attribute-name attribute-type #FIXED "value">

Beispiel

DTD:
<!ATTLIST sender company CDATA #FIXED "Microsoft">

Gültiges XML:
<sender company="Microsoft" />

Ungültiges XML:
<sender company="W3Schools" />

Wenn Sie möchten, dass ein Attribut einen festen Wert hat und Autoren ihn nicht ändern können, verwenden Sie das Schlüsselwort #FIXED. Wenn der Autor einen anderen Wert verwendet, gibt der XML-Parser einen Fehler zurück.


Attributwerte auflisten

Syntax

<!ATTLIST element-name attribute-name (en1|en2|..) default-value>

Beispiel

DTD:
<!ATTLIST payment type (check|cash) "cash">

XML-Beispiel:
<payment type="check" />
oder
<payment type="cash" />

Wenn der Attributwert einer von mehreren festen, zulässigen Werten sein soll, verwenden Sie aufgezählte Attributwerte.

Weitere Erweiterungen