分类: XML |
(1)分别设计作者、书籍、出版社信息的DTD语句;
(2)使用外部实体的方式设计系统的DTD文档;
(3)根据设计好的DTD文档,编写XML文档;
(4)生成完整的XML文档。
- 程序code4_18_1.dtd,与作者相对应的DTD片段。
- <?xml version="1.0" encoding="gb2312"
?>
<!ELEMENT authors (author*)>
<!ELEMENT author (a_name,sex,email*)>
<!ATTLIST author id ID #REQUIRED>
<!ATTLIST author ISBN IDREFS #REQUIRED>
<!ELEMENT a_name (#PCDATA)>
<!ELEMENT sex (#PCDATA)>
<!ELEMENT email (#PCDATA)> - 程序code4_18_2.dtd,与书籍相对应的DTD片段。
- <?xml version="1.0" encoding="gb2312"
?>
<!ELEMENT books (book*)>
<!ELEMENT book (b_name,price)>
<!ATTLIST book ISBN ID #REQUIRED>
<!ELEMENT b_name (#PCDATA)>
<!ELEMENT price (#PCDATA)> - 程序code4_18_3.dtd,与出版社相对应的DTD片段。
- <?xml version="1.0" encoding="gb2312"
?>
<!ELEMENT publishers (publisher*)>
<!ELEMENT publisher (p_name,address)>
<!ATTLIST publisher ISBN IDREFS #REQUIRED>
<!ELEMENT p_name (#PCDATA)>
<!ELEMENT address (#PCDATA)> - 程序code4_18.dtd,将作者、书籍、出版社相对应的DTD片段,以便XML主文档的引用。
- <?xml version="1.0" encoding="gb2312"
?>
<!ELEMENT volume (authors|books|publishers)*>
<!ENTITY % author SYSTEM "code4_18_1.dtd">
%author;
<!ENTITY % book SYSTEM "code4_18_2.dtd">
%book;
<!ENTITY % publisher SYSTEM "code4_18_3.dtd">
%publisher; - 程序code4_18_1.XML,作者信息XML文档片段。
- <?xml version="1.0" encoding="gb2312"
?>
<authors>
<author id="a0001" ISBN="ISBN7-04-014768-8">
<a_name>丁跃潮</a_name>
<sex>男</sex>
<email> ding@jmu.edu.cn</email>
</author>
<author id="a0002" ISBN="ISBN7-113-05892-2">
<a_name>龚涛</a_name>
<sex>男</sex>
</author>
</authors> - 程序code4_18_2.XML,书籍信息XML文档片段。
- <?xml version="1.0" encoding="gb2312"
?>
<books>
<book ISBN="ISBN7-04-014768-8">
<b_name>计算机导论</b_name>
<price>19.7</price>
</book>
<book ISBN="ISBN7-113-05892-2">
<b_name>PowerBuilder入门教程</b_name>
<price>48.0</price>
</book>
</books> - 程序code4_18_3.XML,出版社信息XML文档片段。
- <?xml version="1.0" encoding="gb2312"
?>
<publishers>
<publisher ISBN="ISBN7-04-014768-8">
<p_name>高等教育出版社</p_name>
<address>北京市东城区沙滩后街55号</address>
</publisher>
<publisher ISBN="ISBN7-113-05892-2">
<p_name>中国铁道出版社</p_name>
<address>北京市宣武区右安门西街8号</address>
</publisher>
</publishers> - 主文档程序code4_18.XML。运用了外部一般实体,将作者、书籍、出版社信息的XML文档片段与主文档联系起来,并将主文档与系统DTD文件关联在一起,以组成一个结构完整的XML文档。
<?xml version="1.0" encoding="gb2312"
?>
<!DOCTYPE volume SYSTEM "code4_18.dtd"[
<!ENTITY authors SYSTEM "code4_18_1.xml">
<!ENTITY books SYSTEM "code4_18_2.xml">
<!ENTITY publishers SYSTEM "code4_18_3.xml">
]>
<volume>
&authors;
&books;
&publishers;
</volume>
前一篇:在XSDL中使用的名称空间
后一篇:An XSD Example