XML 中CDATA段 #PCDATA CDATA类型

来源:互联网 发布:mac中英文切换 编辑:程序博客网 时间:2024/05/22 19:25
XML 中CDATA段 #PCDATA  CDATA类型  由于CDATA段和#PCDATA,CDATA都在文字上具有相似性,为了方便大家理解,小小总结一下。1.XML中的CDATA段,它类似PHP中的heredoc这个概念在XML文档中所有的文本都会被解析器解析,只有在标记CDATA中所有的标记,实体引用都会被解析器忽略,而被XML处理程序当作字符数据看待其语法为  <![CDATA [  需要被解析器忽略的内容]]>示例
<?xml version="1.0" encoding="utf-8" ?><people><![CDATA[<!--!和[之间不要有空白--><teacher><name>Androidyue</name><sex>Boy</sex><age>22</age><add>&address;</add></techer>]]></people>

使用CDATA段时要注意一下几点CDATA字母要大些,不能嵌套,CDATA段的文本内容不能出现"]]>"字符串,"<![CDATA["中"!"和"["不能有空白,结尾"]]>"不能有空白或者换行
2.#PCDATA在元素类型声明中,将元素的类型声明为#PCDATA表示该元素的内容是可解析的字符数据,不能在该元素下包含子类,如<!ELEMENT name (#PCDATA)> 注意这里的name和"("之间必须要有一个以上空格<br/>
3.#CDATA类型CDATA是最普通的属性类型,表明属性可以是任何文本字符串,但不包括小于号"<"和双引号">",如要使用这两个符号可以使用实体引用"&lt;"和"&quot;",其语法如下<!ATTLIST 元素名 属性名 CDATA  属性类型>  如<!ATTLIST student  name CDATA #REQUIRED>总结:CDATA段可以理解成一个字符区,其内部内容XML解析器当成字符串 ,#PCDATA 是用来声明元素的类型,CDATA则是表示属性类型<br/>