7

此页面中,Microsoft 表示 XML 保留字符(及其实体)如下:

>    >
<    &lt;
&    &amp;
%    &#37;

但是在另一个页面中,我发现它也是'一个保留字符(它的实体是&apos;)。

有人可以告诉我一些官方参考资料,其中列出了所有且仅列出了 XML 保留字符吗?

4

2 回答 2

11

根据XML 规范,当用作字符内容而不是标记时,唯一必须&转义的字符是(as &amp;, &#38;or &#x26;) 和<(as &lt;, &#60;or &#x3C;),以及>当它是序列的一部分时]]>。此外,&apos;在单引号属性值中必须转义单引号(通常为&quot;),在双引号属性值中必须转义双引号(通常为转义为合适的字符引用。

您不必在单引号属性转义双引号,反之亦然,但这样做不会造成任何伤害。

当然,如果您愿意,您可以转义字符内容中的每个>,"'(以及任何其他字符),而不会改变含义。

于 2014-02-13T15:28:40.383 回答
5

XML 没有任何“保留字符”的概念。

它具有预定义的实体,这些实体表示大多数可能(取决于上下文)在 XML 文档中具有特殊含义的字符(", <, >, & ')。

它没有为空格字符命名实体,或者=因为它们具有特殊含义的地方是您无法拥有数据的地方。

于 2014-02-13T15:27:18.013 回答