DTD - Eigenschappen
- Vorige pagina DTD Elementen
- Volgende pagina DTD Elementen vergelijken met eigenschappen
in DTD worden eigenschappen gedeclareerd via de ATTLIST verklaring.
verklaren eigenschap
eigenschapsverklaring gebruikt de volgende syntaxis:
<!ATTLIST elementnaam eigenschapsnaam eigenschapstype standaardwaarde>
DTD voorbeeld:
<!ATTLIST payment type CDATA "check">
XML voorbeeld:
<payment type="check" />
hieronder iseigenschapstypeopties:
type | beschrijving |
---|---|
CDATA | waarde is character data |
(en1|en2|..) | deze waarde is een waarde in een lijst van enumeraties |
ID | waarde is een unieke id |
IDREF | waarde is de id van een ander element |
IDREFS | waarde is een lijst van andere ids |
NMTOKEN | waarde is een geldige XML naam |
NMTOKENS | Waarde is een lijst van geldige XML-namen |
ENTITY | Waarde is een entiteit |
ENTITIES | Waarde is een lijst van entiteiten |
NOTATION | Deze waarde is de naam van het symbool |
xml: | Waarde is een voorgedefinieerde XML-waarde |
De standaardwaardeparameter kan de volgende waarden gebruiken:
Waarde | Verklaring |
---|---|
Waarde | Standaardwaarde van de eigenschap |
#REQUIRED | Eigenschapswaarde is vereist |
#IMPLIED | Eigenschap is niet vereist |
#FIXED waarde | Eigenschapswaarde is vast |
Stel een standaard eigenschapswaarde in
DTD:
<!ELEMENT square EMPTY> <!ATTLIST square width CDATA "0">
Geldige XML:
<square width="100" />
In het bovenstaande voorbeeld is "square" gedefinieerd als een lege element met de CDATA-type eigenschap "width". Als de breedte niet is ingesteld, is de standaardwaarde 0.
#IMPLIED
Syntaxis
<!ATTLIST element_name attribute_name attribute_type #IMPLIED>
Voorbeeld
DTD:
<!ATTLIST contact fax CDATA #IMPLIED>
Geldige XML:
<contact fax="555-667788" />
Geldige XML:
<contact />
Als u de auteur niet wilt dwingen om de eigenschap op te nemen en u heeft geen optie voor een standaardwaarde, gebruik dan het sleutelwoord #IMPLIED.
#REQUIRED
Syntaxis
<!ATTLIST element_name attribute_name attribute_type #REQUIRED>
Voorbeeld
DTD:
<!ATTLIST person number CDATA #REQUIRED>
Geldige XML:
<person number="5677" />
Ongeldige XML:
<person />
Als u geen optie voor een standaardwaarde heeft, maar toch de auteur wilt dwingen om de eigenschap in te dienen, gebruik dan het sleutelwoord #REQUIRED.
#FIXED
Syntaxis
<!ATTLIST element_name attribute_name attribute_type #FIXED "value">
Voorbeeld
DTD:
<!ATTLIST sender company CDATA #FIXED "Microsoft">
Geldige XML:
<sender company="Microsoft" />
Ongeldige XML:
<sender company="W3School" />
Als u wilt dat de eigenschap een vaste waarde heeft en dat de auteur deze waarde niet mag wijzigen, gebruik dan het sleutelwoord #FIXED. Als de auteur een andere waarde gebruikt, zal de XML-parser een fout retourneren.
Lijst van eigenschappenwaarden
Syntaxis:
<!ATTLIST element_name attribute_name (en1|en2|..) default_value>
DTD voorbeeld:
<!ATTLIST payment type (check|cash) "cash">
XML voorbeeld:
<payment type="check" />
of
<payment type="cash" />
Gebruik een opsomming van eigenschappenwaarden als de waarde van de eigenschap een van een vastgestelde lijst van legitieme waarden moet zijn.
- Vorige pagina DTD Elementen
- Volgende pagina DTD Elementen vergelijken met eigenschappen