当我尝试验证此XML时,出现错误:
<url>http://example.org/?a=1&b=2</url>
验证者说:“对实体”b“的引用必须以';'结尾分隔符“。引用字符串中的第二个等号(=)。
为什么会这样? URL应该以某种方式编码吗?
答案 0 :(得分:6)
&
,因为它启动实体序列(通常是对字符的命名引用,例如é
的{{1}})。实体序列以é
开头,以&
结尾,并在它们之间包含实体名称。
要插入;
,请编写此实体序列:&
。
还有几个字符需要作为实体编写:双引号&
("
)当它在XML属性中时,尖括号"
,{{ 1}}(<
,>
),因为它们在XML中具有特殊含义。
答案 1 :(得分:2)
&
是XML中的受保护字符。
您可以将其替换为实体&
<url>http://example.org/?a=1&b=2</url>