Listing 1 Résumé Fragment with Internal DTD Subset

<?xml version="1.0"?>
<!DOCTYPE resume [
<!ENTITY nbsp " ">
<!ENTITY header SYSTEM "header.xml">
<!ELEMENT resume
(name, contactInfo, experience, education)>
<!ATTLIST resume version CDATA #REQUIRED
lastUpdated CDATA #IMPLIED field (IT | training
| academia) #IMPLIED>
<!ELEMENT name (firstName, ((middleName |
middleInitial)? | (nickName)?)*, lastName)>
<!ELEMENT firstName (#PCDATA)>
<!ELEMENT middleName (#PCDATA)>
<!ELEMENT middleInitial (#PCDATA)>
<!ELEMENT nickName (#PCDATA)>
<!ELEMENT lastName (#PCDATA)>
<!ELEMENT contactInfo (#PCDATA)>
<!ELEMENT education (#PCDATA)>
<!ELEMENT experience
(position, company, location?, task+, note*)>
<!ELEMENT position (#PCDATA)>
<!ELEMENT company (#PCDATA)>
<!ELEMENT location ((street, suite)?, city,
(state, zip)?)>
<!ELEMENT street (#PCDATA)>
<!ELEMENT suite (#PCDATA)>
<!ELEMENT city (#PCDATA)>
<!ELEMENT state (#PCDATA)>
<!ELEMENT zip (#PCDATA)>
<!ELEMENT task (paragraph+)>
<!ELEMENT note (paragraph+)>
<!ELEMENT paragraph (#PCDATA | cite | emphasis | br)*>
<!ELEMENT cite (#PCDATA)>
<!ELEMENT emphasis (#PCDATA)>
<!ELEMENT br EMPTY>
]>
<resume version="1.0" lastUpdated="September 2001"
field="training">
<name>
<firstName>Jane</firstName>
<lastName>Doe</lastName>
</name>
<contactInfo>(212) 123-4567</contactInfo>
<experience>
<position>Editor</position>
<company>Fictitious Financial News</company>
<location>
<city>New York</city>
</location>
<task>
<paragraph>Served as consultant for editing,
electronic production, and desktop publishing
of one financial newsletter, called
<cite>Securities
Today</cite>, and the organization, design,
and launch of two others.</paragraph>
<paragraph>All three became <emphasis>highly
successful</emphasis> publications.</paragraph>
</task>
<note>
<paragraph>This was a part-time job.</paragraph>
</note>
</experience>
<education/>
</resume>