标签:rac gif 接收 完整 data 程序 com 标记 解析
1.DTD:
(Document Type Definition文档类型定义)是一套为了进行程序间的数据交换而建立的关于标记符的语法规则,可定义合法的XML文档构建模块。它使用一系列合法的元素来定义文档的结构。既可被成行地声明于XML文档中,也可作为一个外部引用
2.内部的DOCTYPE声明:如果DTD被包含在XML源文件中,它应当通过下面的语法包装在一个DOCTYPE声明中
<!DOCTYPE 根元素 [元素声明]>
//带有DTD的XML文档实例 <?xml version="1.0"?> <!DOCTYPE note [ //定义此文档是note类型的文档 <!ELEMENT note (to,from,heading,body)> //定义note元素有四个元素to from heading body <!ELEMENT to (#PCDATA)> //定义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>
3.外部文档声明:DTD位于XML源文件的外部,那么它应通过下面的语法被封装在一个DOCTYPE定义中
<!DOCTYPE 根元素 SYSTEM "文件名">
//这个XML文档和上面的XML文档相同,但拥有一个外部的DTD <?xml version="1.0"?> <!DOCTYPE note SYSTEM "note.dtd"> <note> <to>George</to> <from>John</from> <heading>Reminder</heading> <body>Don‘t forget the meeting!</body> </note> //这是包含DTD的 "note.dtd" 文件: <!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)>
4.DTD的作用:
4.1通过DTD,你的每一个XML文件均可携带一个有关其自身格式的描述
4.2通过DTD,独立的团体可一致地使用某个标准的DTD来交换数据
4.3应用程序也可使用某个标准的DTD来验证从外部接收到的数据
5.DTD-XML构建模块
所有的XML文档(以及HTML文档)均由以下简单的构建模块构成:
元素:HTML的"body"和"table",xml的"note"和"message"。空的HTML元素有"hr"、"br"和"img"
属性:提供有关元素的额外信息,属性总是以名/值的形式成对出现。如:<img src="computer.gif" />
实体:用来定义普通文本的变量。如:" " "<" ">" "&" """ "'"
PCDATA:被解析的字符数据(parsed character data),这些文本将被解析器检查实体以及标记。
CDATA:字符数据(parsed character data),不会被解析器解析的文本
6.DTD-元素
在DTD中,xml元素通过元素声明来进行声明,语法格式如下:
<!ELEMENT 元素名称 类别>
//或者
<!ELEMENT 元素名称 (内容)>
//空元素
<!ELEMENT 元素名称 EMPTY>
//如:
<!ELEMENT br EMPTY>
//xml例子:
<br />
//只有PCDATA的元素
<!ELEMENT 元素名称 (PCDATA)>
//例子
<!ELEMENT from (PCDATA)>
//带有任何内容的元素,通过类别关键词ANY声明的元素,可包含任何可解析数据的组合
<!ELEMENT 元素名称 ANY>
//例子
<!ELEMENT note ANY>
//带有子元素(序列)的元素
<!ELEMENT 元素名称 (子元素1,子元素2,子元素3,...)>
//例子
<!ELEMENT note (to,from,heading,body)>
//注意:当子元素按照由逗号分隔开的序列进行声明时,这些子元素必须按照相同的顺序出现在文档中。
//在一个完整的声明中,子元素也必须被声明,子元素也可以拥有子元素
//声明只出现一次的元素(出现一次而且必须出现一次)
<!ELEMENT 元素名称 (子元素)>
//声明最少出现一次的元素
<!ELEMENT 元素名称 (子元素+)>
//声明出现零次或多次的元素
<!ELEMENT 元素名称 (子元素*)>
//声明出现零次或一次的元素
<!ELEMENT 元素名称 (子元素?)>
//声明"|"的内容
<!ELEMENT note (to,from,heading,(body|message))>
//混合型声明:"note" 元素可包含出现零次或多次的PCDATA、"to"、"from"、"header" 或者 "message"
<!ELEMENT note (#PCDATA|to|from|header|message)*>
7.DTD-属性:
<!ATTLIST 元素 属性 属性类型 默认值>
//DTD实例:
<!ATTLIST payment type CDATA "check">
//xml实例:
<payment typ="check" />
属性类型的选项:

8.
标签:rac gif 接收 完整 data 程序 com 标记 解析
原文地址:https://www.cnblogs.com/kuai-man/p/10970129.html