U dobro formiranom XML dokumentu vrednost atributa može da bude
proizvoljna niska karaktera. DTD dozvoljava da se postave dodatna
ograničenja na vrednosti atributa. šta više, ta ograničenja su jača
od onih koja se mogu postaviti na sadržaje elemenata. U XML-u postoji
deset tipova atributa. To su
- CDATA (character data)
<!ELEMENT IMG EMPTY>
<!ATTLIST IMG ALT CDATA #IMPLIED>
- NMTOKEN (name token)
Vrednost atributa je legalno XML ime, s tim da se prvi karakter imena
ne ograničava na slovo i podvlaku.
<!ELEMENT META EMPTY>
<!ATTLIST META NAME NMTOKEN #IMPLIED>
- NMTOKENS (name tokens)
Vrednost atributa je lista XML imena razdvojenih belinama.
- Nabrajanje
Ovo je jedini XML atribut koji nije XML ključna reč.
Navode se sve dozvoljene vrednosti atributa razdvojene vertikalnom crtom.
Svaka dozvoljena vrednost mora da bude XML ime.
<!ELEMENT UL (LI)+>
<!ATTLIST UL TYPE (disc|square|circle) #IMPLIED>
- ID (identifier)
Vrednost atributa ovog tipa mora da bude XML ime koje je jedinstveno
u okviru dokumenta. Element može da ima samo jedan atribut ovog tipa.
<!ATTLIST student broj_indeksa ID #REQUIRED>
<!ATTLIST predmet šifra ID #REQUIRED>
- IDREF (identifier reference)
Vrednost ovog atributa referiše atribut tipa ID nekog elementa. Prema
tome i on mora da bude XML ime. Korišćenje ovog atributa omogućava
uspostavljanje mnogo-mnogo veza među elementima.
<!ATTLIST sluša_predmet predmet IDREF #REQUIRED>
<!ATTLIST slušalac_predmeta student IDREF #REQUIRED>
- IDREFS (identifier references)
Vrednost ovog atributa je lista XML imena razdvojenih belinama, od
kojih je svako ime ID nekog elementa iz istog dokumenta. Na primer,
U okviru jedne deklaracije atributa može se deklarisati više
atributa jednog elementa. Na primer,
<!ATTLIST student broj_indeksa ID #REQUIRED
sluša_predmete IDREFS #REQUIRED>
<!ATTLIST predmet šifra ID #REQUIRED
slušaoci_predmeta IDREFS #REQUIRED>
- ENTITY
Vrednost atributa ovog tipa je ime nekog neparsiranog entiteta
koji deklarisan u istom DTD-u.
- ENTITIES
Vrednost atributa ovog tipa je lista imena
neparsiranih entiteta koji su deklarisani u istom DTD-u. Imena se
u listi razdvajaju belinama.
- NOTATION
Vrednost atributa ovog tipa je ime notacije koja je deklarisana
u istom DTD-u.