在此页中,Microsoft说XML保留字符(及其实体)是以下字符:
> >
< <
& &
% %
但是在另一个页面中,我发现'
也是一个保留字符(其实体是'
)。
有人可以指出我一些官方参考,其中列出了所有且仅列出了 XML 保留字符?
根据XML规范,当用作字符内容而不是标记时,唯一必须转义的字符是&
(如&
,&
或&
)和<
(如<
,<
或<
),加上>
当它是序列]]>
的一部分时。 此外,单引号属性值中的单引号(通常为 '
)和双引号属性值中的双引号(通常为 "
),并且用于序列化文档的字符编码中不可表示的任何字符都必须作为合适的字符引用进行转义。
您不必在单引号属性中转义双引号,反之亦然,但如果这样做不会造成任何伤害。
当然,如果您愿意,您可以转义角色内容中的所有>
、"
和'
(以及任何其他字符),而无需更改含义。
XML没有任何"保留字符"的概念。
它具有预定义的实体,这些实体表示XML文档中可能(取决于上下文)具有特殊含义的大多数字符("
,<
,>
,&
'
)。
它没有空格字符或=
的命名实体,因为它们具有特殊含义的位置是您无法拥有数据的位置。