<!-- DTD for index (a list of files and directories) -->
<!-- ENTITY DECLARATIONS -->
<!-- Lang attribute value -->
<!ENTITY % Lang "(en|de|es|fr|nl)">
<!-- Entry type -->
<!ENTITY % entry.type "(dirname|filename)">
<!-- ELEMENT DECLARATION -->
<!-- Root database element -->
<!ELEMENT index (title+,entry+)>
<!ELEMENT title (#PCDATA)>
<!ATTLIST title
xml:lang NMTOKEN #IMPLIED
>
<!-- Entry details -->
<!ELEMENT entry (name*, %entry.type;, synonym*, abbrev*, comments*, authors, date)>
<!ATTLIST entry
id CDATA #IMPLIED
>
<!-- Name describing the entry -->
<!ELEMENT name (#PCDATA)>
<!ATTLIST name
xml:lang NMTOKEN #IMPLIED
>
<!-- name of the directory or the filename -->
<!-- directory name -->
<!ELEMENT dirname (#PCDATA)>
<!-- file name -->
<!ELEMENT filename (#PCDATA)>
<!-- Synomyms of the name.
Each synonym can be localized by using the right lang attribut -->
<!ELEMENT synonym (#PCDATA)>
<!ATTLIST synonym
xml:lang %Lang; "en"
>
<!-- Abbreviation of the name.
The same abbreviation can be used in many languages. -->
<!ELEMENT abbrev (#PCDATA)>
<!-- Comments about the entry -->
<!ELEMENT comments (#PCDATA)>
<!ATTLIST comments
xml:lang %Lang; "en"
>
<!-- Comment describing people who's worked on this entry -->
<!ELEMENT authors (#PCDATA)>
<!-- Date of the last entry uptade -->
<!ELEMENT date (#PCDATA)>