进阶day13-XML的约束文件-DTD

This commit is contained in:
2026-04-11 13:40:51 +08:00
parent 4e2f6f6f5d
commit 0b31c10927
3 changed files with 59 additions and 6 deletions

6
javaSE-day13/books.dtd Normal file
View File

@@ -0,0 +1,6 @@
<!ELEMENT books (book+)>
<!ELEMENT book (name,price,author)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT price (#PCDATA)>
<!ELEMENT author (#PCDATA)>
<!ATTLIST book bid CDATA "j">

View File

@@ -6,21 +6,47 @@ XML的基本语法:
3.XML有且仅有一个根标签
4.标签体:可以是子标签也可以是文本
5.开始标签中可以设置属性的
____________________________________________________________________
XML可以自定义标签,这样的话它的标签名可以设置很多不同的,这样导致我们在解析的时候不便于解析
XML引入了约束文件,限制XML的编写一定按照模板去编写.
XML的约束文件有2种
dtd约束
schema约束
-->
<!--dtd约束文件的内部引入-->
<!--<!DOCTYPE books [
<!ELEMENT books (book+)>
<!ELEMENT book (name,price,author)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT price (#PCDATA)>
<!ELEMENT author (#PCDATA)>
<!ATTLIST book bid CDATA "j">
]>-->
<!--外部dtd约束文件引入-->
<!DOCTYPE books SYSTEM "books.dtd">
<books>
<book>
<name bid="j10">java快速入门1</name>
<book bid="j10">
<name>java快速入门1</name>
<price>99</price>
<author>张三</author>
</book>
<book>
<name bid="j15">java快速入门2</name>
<book bid="j10">
<name>java快速入门1</name>
<price>99</price>
<author>张三</author>
</book>
<book>
<name>java快速入门3</name>
<book bid="j10">
<name>java快速入门1</name>
<price>99</price>
<author>张三</author>
</book>
<book bid="j10">
<name>java快速入门1</name>
<price>99</price>
<author>张三</author>
</book>
</books>

21
javaSE-day13/note.txt Normal file
View File

@@ -0,0 +1,21 @@
<?xml version="1.0"?>
<!DOCTYPE note [
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]>
<note>
<to>George</to>
<from>John</from>
<heading>Reminder</heading>
<body>Don't forget the meeting!</body>
</note>
!DOCTYPE note (第二行)定义此文档是 note 类型的文档。
!ELEMENT note (第三行)定义 note 元素有四个元素:"to、from、heading,、body"
!ELEMENT to (第四行)定义 to 元素为 "#PCDATA" 类型
!ELEMENT from (第五行)定义 frome 元素为 "#PCDATA" 类型
!ELEMENT heading (第六行)定义 heading 元素为 "#PCDATA" 类型
!ELEMENT body (第七行)定义 body 元素为 "#PCDATA" 类型