<!ELEMENT DOCUMENT (CUSTOMER)*> <!ELEMENT CUSTOMER (NAME,DATE,ORDERS)> <!ELEMENT NAME (LAST_NAME,FIRST_NAME)> <!ELEMENT LAST_NAME (#PCDATA)> <!ELEMENT FIRST_NAME (#PCDATA)> <!ELEMENT DATE (#PCDATA)> <!ELEMENT ORDERS (ITEM)*> <!ELEMENT ITEM (PRODUCT,NUMBER,PRICE)> <!ELEMENT PRODUCT (#PCDATA)> <!ELEMENT NUMBER (#PCDATA)> <!ELEMENT PRICE (#PCDATA)>
<?xml version="1.0"?>
<!DOCTYPE BOOK [
<!ELEMENT BOOK (P*)>
<!ELEMENT P (#PCDATA)>
]>
<BOOK>
<P>chapter 1 - Intro</P>
<P>chapter 2 - Conclusion</P>
<P>Index</P>
</BOOK>
<!DOCTYPE rootname [DTD]><!DOCTYPE rootname SYSTEM URL><!DOCTYPE rootname SYSTEM URL [DTD]><!DOCTYPE rootname PUBLIC identifier URL><!DOCTYPE rootname PUBLIC identifier URL [DTD]><!ELEMENT name content_model><!ELEMENT direction (left, right, top?)><!ELEMENT CHAPTER (INTRODUCTION, (P | QUOTE | NOTE)*, DIV*)><!ELEMENT HR EMPTY><!ELEMENT p (#PCDATA | I)* ><!ELEMENT %title; %content; ><!ELEMENT DOCUMENT ANY><!ELEMENT DOCUMENT ANY><!ELEMENT direction (left, right, top?)><!ELEMENT First_Name (#PCDATA)><!ELEMENT BOOK (CHAPTER)+><!ELEMENT List (Object)*><!ELEMENT Table (plate)?><!ELEMENT SUM (op1, op2)><!ELEMENT POINT (COORDINATES | POLAR)><!ELEMENT CHAPTER (INTRODUCTION, (P | QUOTE | NOTE)*, DIV*)><!ELEMENT Name (Last_Name, First_Name)
<Name>
<Last_Name>Punin</Last_Name>
<First_Name>John</First_Name>
</Name>
<!ELEMENT ITEM (PRODUCT, NUMBER, (PRICE | CHARGEACCT | SAMPLE))>
<ITEM>
<PRODUCT>Tomatoes</PRODUCT>
<NUMBER>8</NUMBER>
<PRICE>$1.25</PRICE>
</ITEM>
<ITEM>
<PRODUCT>Oranges</PRODUCT>
<NUMBER>24</NUMBER>
<SAMPLE>$4.98</SAMPLE>
</ITEM>
<!ELEMENT PRODUCT (#PCDATA | PRODUCT_ID)*> <PRODUCT>Tomatoes</PRODUCT> <PRODUCT> <PRODUCT_ID>124829548702121</PRODUCT_ID> </PRODUCT>
<!ELEMENT p (#PCDATA | b)*> <!ELEMENT b (#PCDATA)> <p>This is <b>bold</b> text</p>
<!ELEMENT CREDIT_WARNING EMPTY> <CREDIT_WARNING></CREDIT_WARNING> or <CREDIT_WARNING/>
DTD Comments:
<!-- DOCUMENT is the root element --> <!ELEMENT DOCUMENT (CUSTOMER)*>
<?xml version="1.0"?>
<!DOCTYPE BOOK [
<!ELEMENT p (#PCDATA)>
<!ELEMENT BOOK (OPENER,SUBTITLE?,INTRODUCTION?,(SECTION | PART)+)>
<!ELEMENT OPENER (TITLE_TEXT)*>
<!ELEMENT TITLE_TEXT (#PCDATA)>
<!ELEMENT SUBTITLE (#PCDATA)>
<!ELEMENT INTRODUCTION (HEADER, p+)+>
<!ELEMENT PART (HEADER, CHAPTER+)>
<!ELEMENT SECTION (HEADER, p+)>
<!ELEMENT HEADER (#PCDATA)>
<!ELEMENT CHAPTER (CHAPTER_NUMBER, CHAPTER_TEXT)>
<!ELEMENT CHAPTER_NUMBER (#PCDATA)>
<!ELEMENT CHAPTER_TEXT (p)+>
]>
<BOOK>
<OPENER>
<TITLE_TEXT>All About Me</TITLE_TEXT>
</OPENER>
<PART>
<HEADER>Welcome To My Book</HEADER>
<CHAPTER>
<CHAPTER_NUMBER>CHAPTER 1</CHAPTER_NUMBER>
<CHAPTER_TEXT>
<p>Glad you want to hear about me.</p>
<p>There's so much to say!</p>
<p>Where should we start?</p>
<p>How about more about me?</p>
</CHAPTER_TEXT>
</CHAPTER>
</PART>
</BOOK>
<?xml version="1.0" standalone="no"?> <!DOCTYPE BOOK SYSTEM "book.dtd"> <BOOK> ...... </BOOK>
<?xml version="1.0" standalone="no"?> <!DOCTYPE BOOK SYSTEM "http://www.library.org/book.dtd"> <BOOK> ...... </BOOK>
<!DOCTYPE name PUBLIC "FPI" "URL"><!DOCTYPE BOOK PUBLIC "-//Joseph Smith//General Book Version 5.3//EN" "http://www.library.org/book.dtd">
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Virtual Library</title>
</head>
<body>
<p>Moved to <a href="http://vlib.org/">vlib.org</a>.</p>
</body>
</html>
<CUSTOMER LAST_NAME="Smith" FIRST_NAME="Sam" DATE="February 6, 2001" PURCHASE="Tomatoes" PRICE="$1.25" NUMBER="8" />
<!ATTLIST element_name
attribute_name type default_value
attribute_name type default_value
.
.
.
attribute_name type default_value>
<!ELEMENT greeting (#PCDATA)> <!ATTLIST greeting language CDATA "English"> <greeting language="Spanish"> Hola! </greeting>
<!ELEMENT Rectangle EMPTY>
<!ATTLIST Rectangle
length CDATA "0px"
width CDATA "0px">
<Rectangle width="80px" length="40px"/>
#REQUIRED
<!ELEMENT img EMPTY>
<!ATTLIST img
alt CDATA #REQUIRED
src CDATA #REQUIRED>
<img src="xmlj.jpg" alt="XMLJ Image"/>
#IMPLIED
<!ELEMENT img EMPTY>
<!ATTLIST img
alt CDATA #REQUIRED
src CDATA #REQUIRED
width CDATA #IMPLIED
height CDATA #IMPLIED>
<img src="xmlj.jpg" alt="XMLJ Image" width="300"/>
#FIXED VALUE
<!ELEMENT ADDRESS (#PCDATA)>
<!ATTLIST ADDRESS
country CDATA #FIXED "USA">
<ADDRESS country="USA">123 15th St. Troy NY 12180</ADDRESS>
<!ELEMENT TITLE (#PCDATA)>
<!ATTLIST TITLE
ALIGN (LEFT | CENTER | RIGHT) "LEFT">
<TITLE>Programming XML in Java</TITLE>
<TITLE ALIGN="CENTER">Programming XML in Java</TITLE>
<!ELEMENT student_name (#PCDATA)>
<!ATTLIST student_name student_no NMTOKEN #REQUIRED>
<student_name student_no="9216735">Jo Smith</student_name>
<!ELEMENT student_name (#PCDATA)>
<!ATTLIST student_name student_id ID #REQUIRED>
<student_name student_id="S9216735">Jo Smith</student_name>
<?xml version="1.0" standalone="yes"?>
<!DOCTYPE lab_group [
<!ELEMENT lab_group (student_name)*>
<!ELEMENT student_name (#PCDATA)>
<!ATTLIST student_name student_id ID #REQUIRED
tutor IDREF #IMPLIED>
]>
<lab_group>
<student_name student_id="S8904885">Alex Foo</student_name>
<student_name student_id="S9011133">Sarah Bar</student_name>
<student_name student_id="S9216735"
tutor="S8904885">Jo Smith</student_name>
</lab_group>
<!ENTITY name definition><!ELEMENT DATE (#PCDATA)> <!ENTITY TODAY "February 7, 2001"> <DATE>&TODAY;</DATE>Example 2:
<!ENTITY NAME "John Punin"> <!ENTITY CNAME "&NAME; Palacios">
<!ENTITY name SYSTEM URI><!ENTITY name PUBLIC FPI URI><!ELEMENT DATE (#PCDATA)> <!ENTITY TODAY SYSTEM "date.xml"> <DATE>&TODAY;</DATE>
<!ELEMENT EMAIL (#PCDATA)> <!ENTITY at_new "@"> <EMAIL>puninj&at_new;cs.rpi.edu</EMAIL>
<!ENTITY % name definition><!ENTITY % name SYSTEM URI>
<!ENTITY % name PUBLIC FPI URI>Example:
<!ELEMENT CUSTOMER (NAME, DATE, ORDERS)> <!ELEMENT BUYER (NAME, DATE, ORDERS)> <!ELEMENT DISCOUNTER (NAME, DATE, ORDERS)> <!ENTITY % record "(NAME, DATE, ORDERS)"> <!ELEMENT CUSTOMER %record;> <!ELEMENT BUYER %record;> <!ELEMENT DISCOUNTER %record;>