字符实体
在我们相识字符实体之前,先相识一下什么是 XML 实体。
W3 同盟 对实体的定义:文档实体作为实体树的根元素和 XML 处置惩罚顺序的出发点。
这意味着实体就是 XML 中的占位符。它们能够声明在文档序文或许DTD中。实体有差别的范例,本章后面会议论字符实体。
HTML 和 XML 都有一些标记被保存运用,它们不能在 XML 代码中用作内容。比方,< 和 > 标记被用作 XML 标签的开首和末端。要显现这些特别字符,就要运用字符实体。
有些特别的字符或标记还不能直接运用键盘输入。能够运用字符实体来显现这些标记或特别字符。
字符实体范例
有三种范例的字符实体:
预定义的字符实体。
编码字符实体。
定名字符实体。
预定义的字符实体
引入它们是为了防止运用某些有歧义的标记。比方,当我们把小于(<)或大于(>)标记当尖括号(<>)运用时就会发生歧义。字符实体从根本上来讲就是用来界定 XML 标签的。下面是一个来自 XML 范例的预定义字符实体列表。它们能够用来示意某些字符而不带歧义。
和号: &
单引号: '
大于: >
小于: <
双引号: "
数字字符实体
数字援用被用来示意字符实体。数字援用能够是十进制或十六进制花样。由于有数以千记的数字援用,致使很难记着它们。数字援用经由过程运用字符在 Unicode 字符集合的编码数值来示意。
十进制数字援用基础语法:
&# decimal number ;
十六进制数字援用基础语法:
&#x Hexadecimal number ;
下面的表格列出了一些预定义字符实体和它们对应的数值:
实体称号 | 字符 | 十进制援用 | 十六进制援用 |
---|---|---|---|
quot | " | " | " |
amp | & | & | & |
apos | ' | ' | ' |
lt | < | < | |
gt | > | > | > |
定名字符实体
正如上面所说的,数值字符很难记着,最受迎接的字符实体范例是定名字符实体。由于每一个实体都用一个称号标识。
比方:
'Aacute' 示意带重音符的大写 A 字符。 'ugrave' 示意带沉音符的小写 u。
CDATA 片断
术语 CDATA 就是字符数据。CDATA 被定义为不由剖析器剖析的文本块,但它被公认为标记。
标记中预定义的实体比方 <,> 和 & 须要手动输入而且一般难以浏览。这类情况下就能够运用 CDATA 片断。经由过程运用 CDATA 片断,我们能够通知剖析器文档的特定部份不包括标记,应该被当作一般文本看待。
语法
下面是 CDATA 片断的语法:
<![CDATA[ characters with markup ]]>
上面的语法由三个部份构成:
CDATA 最先部份 - CDATA 以9个字符的分隔符<![CDATA[开首。
CDATA 完毕部份 - CDATA 以 ]]> 分隔符末端。
CData 部份 - 上面这两个标记之间的字符被解释为字符而不是标记。这个部份能够包括标记字符(<,> 和 &),然则它们会被 XML 处置惩罚顺序疏忽。
示例
下面的标记代码展现了 CDATA。个中写在 CDATA 片断中的字符都会被剖析器疏忽。
<script> <![CDATA[ <message> Welcome to TutorialsPoint </message> ]] > </script>
在上述的语法中,<message> 和 </message> 之间的一切内容都会被当作字符数据而不是标记。
CDATA 划定规矩
XML CDATA 须要遵照以下划定规矩:
XML 文档任何位置的 CDATA 都不能包括 "]]>" 字符。
CDATA 片断不能够嵌套。
以上就是深切明白XML中的字符实体与字符数据的细致内容,更多请关注ki4网别的相干文章!