Introduction to Databases with Stanford University : DTD Exercises
Jump to navigation
Jump to search
- Introduction to Databases by Standford University http://db-class.org
- Additional materials: http://openclassroom.stanford.edu/MainFolder/CoursePage.php?course=IntroToDatabases
- Use xmllint (XML_Validation) to validate the result.
1. Create a DTD for XML data at http://s3.amazonaws.com/dbclass-resources/docs/courses-noID.xml (Alternate link:Courses-noID.xml)
<!ELEMENT Course_Catalog (Department*)> <!ELEMENT Department (Title, Chair, Course+)> <!ATTLIST Department Code CDATA #REQUIRED> <!ELEMENT Chair (Professor)> <!ELEMENT Course (Title, Description*, Instructors, Prerequisites*)> <!ATTLIST Course Number CDATA #REQUIRED Enrollment CDATA #IMPLIED> <!ELEMENT Instructors (Lecturer|Professor)+> <!ELEMENT Prerequisites (Prereq*)> <!ELEMENT Lecturer (First_Name,Middle_Initial*,Last_Name)+> <!ELEMENT Professor (First_Name,Middle_Initial*,Last_Name)+> <!ELEMENT Title (#PCDATA)> <!ELEMENT Description (#PCDATA)> <!ELEMENT First_Name (#PCDATA)> <!ELEMENT Last_Name (#PCDATA)> <!ELEMENT Middle_Initial (#PCDATA)> <!ELEMENT Prereq (#PCDATA)>
2. Create a DTD for XML data at http://s3.amazonaws.com/dbclass-resources/docs/courses-ID.xml (Alternate link: Courses-ID.xml)
<!ELEMENT Course_Catalog (Department*)>
<!ELEMENT Department (Title, Course+,(Professor|Lecturer)*)>
<!ATTLIST Department Code CDATA #REQUIRED
Chair IDREF #IMPLIED>
<!ELEMENT Course (Title, Description*)>
<!ATTLIST Course Number ID #REQUIRED Prerequisites CDATA #IMPLIED
Instructors IDREFS #REQUIRED
Enrollment CDATA #IMPLIED>
<!ELEMENT Courseref EMPTY>
<!ATTLIST Courseref Number IDREF #REQUIRED>
<!ELEMENT Lecturer (First_Name,Middle_Initial*,Last_Name)>
<!ELEMENT Professor (First_Name,Middle_Initial*,Last_Name)>
<!ATTLIST Lecturer InstrID ID #REQUIRED>
<!ATTLIST Professor InstrID ID #REQUIRED>
<!ELEMENT Title (#PCDATA)>
<!ELEMENT Description (#PCDATA|Courseref)*>
<!ELEMENT First_Name (#PCDATA)>
<!ELEMENT Last_Name (#PCDATA)>
<!ELEMENT Middle_Initial (#PCDATA)>
3. Create a DTD for XML data at http://s3.amazonaws.com/dbclass-resources/docs/countries.xml (Alternate link: Countries.xml)
<!ELEMENT countries (country*)>
<!ATTLIST country name CDATA #REQUIRED
population CDATA #REQUIRED
area CDATA #REQUIRED>
<!ELEMENT country ((language|city)*)>
<!ELEMENT city (name,population)>
<!ELEMENT language (#PCDATA)>
<!ATTLIST language percentage CDATA #REQUIRED>
<!ELEMENT name (#PCDATA)>
<!ELEMENT population (#PCDATA)>