Neueste Web-Entwicklung Tutorials
 

DTD - Attribute


In einer DTD, Attribute werden mit einer ATTLIST Erklärung erklärt.


deklarieren Attribute

Eine Attributdeklaration hat die folgende Syntax:

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

DTD example:

<!ATTLIST payment type CDATA "check">

XML example:

<payment type="check" />

Das attribute-type kann einer der folgenden sein:

Art Beschreibung
CDATA Der Wert ist Zeichendaten
( en1 | en2 |..) Der Wert muss man von einer Aufzählungsliste sein
ID Der Wert ist eine eindeutige Kennung
IDREF Der Wert ist die ID eines anderen Elements
IDREFS Der Wert ist eine Liste von anderen ids
NMTOKEN Der Wert ist ein gültiger XML-Name
NMTOKENS Der Wert ist eine Liste von gültigen XML-Namen
ENTITY Der Wert ist ein Unternehmen,
ENTITIES Der Wert ist eine Liste von Entitäten
NOTATION Der Wert ist ein Name einer Notation
xml: Der Wert ist ein vordefiniertes XML-Wert

Das attribute-value kann einer der folgenden sein:

Wert Erläuterung
value Der Standardwert des Attributs
#REQUIRED Das Attribut ist erforderlich
#IMPLIED Das Attribut ist optional
#FIXED value Der Attributwert ist fest

Ein Standard-Attributwert

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

Valid XML:
<square width="100" />

In dem obigen Beispiel das "square" ist Element definiert ein leeres Element mit einer zu sein "width" Attribut des Typs CDATA. Wenn keine Breite angegeben ist, hat es einen Standardwert von 0.


#ERFORDERLICH

Syntax

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

Beispiel

DTD:
<!ATTLIST person number CDATA #REQUIRED>

Valid XML:
<person number="5677" />

Invalid XML:
<person />

Verwenden Sie das #REQUIRED Schlüsselwort, wenn Sie nicht eine Option für einen Standardwert haben, aber immer noch wollen, um das Attribut zu zwingen, anwesend zu sein.


#IMPLIED

Syntax

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

Beispiel

DTD:
<!ATTLIST contact fax CDATA #IMPLIED>

Valid XML:
<contact fax="555-667788" />

Valid XML:
<contact />

Verwenden Sie das #IMPLIED Schlüsselwort, wenn Sie nicht den Autor zwingen wollen, um ein Attribut enthalten, und Sie haben nicht eine Option für einen Standardwert.


#FIXED

Syntax

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

Beispiel

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

Valid XML:
<sender company="Microsoft" />

Invalid XML:
<sender company="w3ii" />

Verwenden Sie das #FIXED Schlüsselwort, wenn Sie ein Attribut wollen den Autor einen festen Wert zu haben, ohne dass es zu ändern. Wenn ein Autor einen anderen Wert enthält, wird der XML-Parser einen Fehler zurück.


Aufzählungsattributwerte

Syntax

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

Beispiel

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

XML example:
<payment type="check" />
or
<payment type="cash" />

Verwenden Sie Aufzählungsattributwerte, wenn Sie der Attributwert wollen eine von einem festen Satz von zulässigen Werte zu sein.