xml元素类型PCDATA和CDATA的区别(DTD中)
来源:互联网 发布:相似矩阵 编辑:程序博客网 时间:2024/05/22 19:50
w3school的定义:
PCDATA
PCDATA 的意思是被解析的字符数据(parsed character data)。
可把字符数据想象为 XML 元素的开始标签与结束标签之间的文本。
PCDATA 是会被解析器解析的文本。这些文本将被解析器检查实体以及标记。
文本中的标签会被当作标记来处理,而实体会被展开。
不过,被解析的字符数据不应当包含任何 &、< 或者 > 字符;需要使用 &、< 以及 > 实体来分别替换它们。
CDATA
CDATA 的意思是字符数据(character data)。
CDATA 是不会被解析器解析的文本。在这些文本中的标签不会被当作标记来对待,其中的实体也不会被展开。
PCDATA是将会被解析的文本,而CDATA是不会被解析的文本。
所以
(1)DTD中元素的类型常定义为PCDATA,因为元素内可能还包含子元素等内容,需要xml解析器对>,<,&,',"几个特殊字符进行解析。另外PCDATA中的实体会被展开,所以PCDATA常作为xml结构的一部分(子元素)。如果想在PCDATA中包含>,<,&,',"这些特殊字符就要使用实体(实体和实体引用的解析在最后)。
(2)属性的类型常定义为CDATA(不能为PCDATA),表示这部分内容不需要xml解析,实体也不会被展开(个人觉得说成实体引用不会被展开更好?)。因此xml中需要添加一段代码时可以将其类型指定为CDATA,这就相当于告诉xml解析器这一段内容不是给你看的(是给javascript引擎看的!)。
- 实体
XML 结构构造。
文件、数据库记录或包含数据的其他项。 实体的主要用途是存放内容 — 而不是存放结构、规则或语法。 每个实体通过唯一名称标识,包含其自己的内容,从文档中的单个字符到文档之外的大文件。 XML 实体的功能与宏定义类似。 实体可以通过实体引用进行引用,将实体的内容插入树中的相应位置。
实体声明出现在 DTD 中。
- 实体引用
XML 结构构造。
充当内容作者的占位符,XML 分析器将实际内容放在每个引用站点。 要加入实体引用,先插入“and”符 (&),然后输入实体名称,后接分号 (;),如下所示:&YourEntityName;。 然后,在处理该行时,实体将替换为实体的内容。其用法与宏基本相同。 实体展开
实体展开是指由实体应用获得实体的过程,如展开后为一个空格。
0 0
- xml元素类型PCDATA和CDATA的区别(DTD中)
- XML中PCDATA与CDATA的区别
- XML中PCDATA与CDATA的区别
- XML 中CDATA段 #PCDATA CDATA类型
- XML 中CDATA段 #PCDATA CDATA类型
- PCDATA和CDATA的区别
- pcdata和cdata的区别
- #PCDATA和CDATA的区别
- 区分XML中CDATA和#PCDATA
- PCDATA和CDATA区别
- XML中PCDATA与CDATA
- PCDATA和CDATA的区别究竟是什么呢?
- CDATA 与 PCDATA区别
- PCDATA和CDATA
- CDATA和PCDATA
- xml中dtd中ELEMENT元素的类型种类
- XML中Schema和DTD的区别
- xml中cdata节和注释的区别
- “时间复杂度”的理解
- 归并排序
- 求逆元
- c++ 生成文件MD5
- Socket原理与编程基础
- xml元素类型PCDATA和CDATA的区别(DTD中)
- 字符串算法(KMP+MANACHER+EX_KMP)总结
- 决策树(七)--Boost及源码分析
- 字符串(替换空格-剑指offer!!!)
- 25 个超棒的 HTML5 & JavaScript 游戏引擎开发库
- 数据结构实验之二叉树的建立与遍历
- 数据结构 反转单向链表和双向链表
- 爬台阶
- 堆排序算法