Elementer og attributter som alternative løsninger.



Første eksempel

Grundtekst
Nu sagde Hans Jensen altså sådan her:



Der er indført et element:
Nu sagde <person>Hans Jensen</person> altså sådan her:

Der er sat en attribut på elementet:
Nu sagde <person køn="mand">Hans Jensen</person> altså sådan her:

Alternativ løsning med en ny slags element:
Nu sagde <mand>Hans Jensen</mand> altså sådan her:

Sådan ser der ud i DTD:

løsning 1
<!ELEMENT person>
<!ATTLIST person køn (mand | kvinde) >

løsning 2
<!ELEMENT mand>
<!ELEMENT kvinde>

I dette eksempel er det ikke så let at vælge mellem løsningerne.

Andet eksempel

- brev - forhør - dom er de forskellige slags tekstdele, som indgår i en større tekstmasse.

løsning 1: attributter
<!ELEMENT tekstdel (brevskriver | adressat | forhører | forhørt | dato | dømt_person |straf | #PCDATA) >
<!ATTLIST tekstdel teksttype (brev | forhør | dom) >

løsning 2: forskellige slags elementer
<!ELEMENT brev (dato | brevskriver | adressat | #PCDATA)>
<!ELEMENT forhør (dato | forhører | forhørt | #PCDATA)>
<!ELEMENT dom (dato | dømt_person | straf | #PCDATA)>

Her er løsning 2 den bedste, fordi de forskellige kategorier har forskelligt indhold.