Difference between revisions of "Introduction to Databases with Stanford University : DTD Exercises"

From Ittichai Chammavanijakul's Wiki
Jump to navigation Jump to search
Line 1: Line 1:
The XML data is at http://s3.amazonaws.com/dbclass-resources/docs/courses-noID.xml
+
1. Create a DTD for XML data at http://s3.amazonaws.com/dbclass-resources/docs/courses-noID.xml
  
 
<pre>
 
<pre>
Line 20: Line 20:
 
<!ELEMENT Middle_Initial (#PCDATA)>  
 
<!ELEMENT Middle_Initial (#PCDATA)>  
 
<!ELEMENT Prereq (#PCDATA)>
 
<!ELEMENT Prereq (#PCDATA)>
 +
</pre>
 +
 +
2. Create a DTD for XML data at http://s3.amazonaws.com/dbclass-resources/docs/courses-ID.xml
 +
 +
<pre>
 +
<!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)>
 +
</pre>
 +
 +
3. Create a DTD for XML data at http://s3.amazonaws.com/dbclass-resources/docs/countries.xml
 +
 +
<pre>
 +
<!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)>
 
</pre>
 
</pre>

Revision as of 17:14, 16 November 2011

1. Create a DTD for XML data at http://s3.amazonaws.com/dbclass-resources/docs/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

<!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

<!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)>