Appendix D

eXtensible Markup Language (XML) Document Type Definition
for Dublin Core Simple

 

The following is a Document Type Definition (DTD) for use in Cross-Domain Retrieval using the XML Record Syntax.  This   DTD does not address qualified Dublin Core elements.

This DTD was developed for use in the Consortium for the Computer Interchange of Museum Information (CIMI) project, the Dublin Core Testbed.

<?xml version="1.0" ?>
<!DOCTYPE dublin-core-simple [
<!-- Dublin Core Version 1.1 -->
<!-- Based on CIMI Guide to Best Practice 1999-08-12 -->
<!ELEMENT record-list (dc-record*)>
<!ELEMENT dc-record (title | creator | subject | description | publisher | contributor
 | date | type | format | identifier | source | language | relation | coverage | rights)*>
<!ELEMENT title (#PCDATA) >
<!ELEMENT creator (#PCDATA) >
<!ELEMENT subject (#PCDATA) >
<!ELEMENT description (#PCDATA) >
<!ELEMENT publisher (#PCDATA) >
<!ELEMENT contributor (#PCDATA) >
<!ELEMENT date (#PCDATA) >
<!ELEMENT type (#PCDATA) >
<!ELEMENT format (#PCDATA) >
<!ELEMENT identifier (#PCDATA) >
<!ELEMENT source (#PCDATA) >
<!ELEMENT language (#PCDATA) >
<!ELEMENT relation (#PCDATA) >
<!ELEMENT coverage (#PCDATA) >
<!ELEMENT rights (#PCDATA) >
]

As further explanation of how the DTD works, it specifies that there is a single tag, <record-list>, which is used to delimit the block of DC XML (<record-list>, once, at the start and </record-list> once, at the end). This tag contains 0 or more occurrences of the tag, <dc-record>, which defines a metadata block, or single description. Within this tag (from <dc-record> to </dc-record>), there are 0 or more occurrences of each of the 15 Dublin Core element tags.

This results in something like the following:

<record-list>
<dc-record>
<creator>some author</creator>
<creator>some author</creator>
<title>some title</title>
...
</dc-record>

<dc-record>
<creator>some other author</creator>
<title>some other title</title>
...
</dc-record>
</record-list>