XML定义了一组预定义的字符实体引用(character entity references),用于转义特定的字符,以确保文档的正确解析和避免语法错误。以下是常见的字符实体引用及其对应的字符:
预定义的字符实体引用
-
<- 表示小于号
< - 用途:避免与XML标签的开始标记混淆。
- 表示小于号
-
>- 表示大于号
> - 用途:避免与XML标签的结束标记混淆。
- 表示大于号
-
&- 表示与符号
& - 用途:避免与其他字符实体引用的开头混淆。
- 表示与符号
-
"- 表示双引号
" - 用途:在属性值中使用双引号时避免语法错误。
- 表示双引号
-
'- 表示单引号
' - 用途:在属性值中使用单引号时避免语法错误。
- 表示单引号
其他常用字符实体引用
除了上述预定义的字符实体引用外,XML还支持通过数字或命名字符实体来表示更多的Unicode字符。以下是一些常用的额外字符实体引用:
-
 或 - 表示不间断空格(no-break space)
- 用途:防止文本中的空格被浏览器或其他处理程序合并或忽略。
-
©- 表示版权符号 ©
- 用途:显示版权信息。
-
®- 表示注册商标符号 ®
- 用途:显示注册商标信息。
-
™- 表示商标符号 ™
- 用途:显示商标信息。
-
—- 表示破折号 —
- 用途:用于文本格式化,特别是在标点符号中。
-
–- 表示短破折号 –
- 用途:用于文本格式化,特别是在标点符号中。
-
…- 表示省略号 …
- 用途:用于表示文本中的省略部分。
-
«和»- 分别表示左双角引号 « 和右双角引号 »
- 用途:用于特殊引号样式。
-
‘和’- 分别表示左单引号 ‘ 和右单引号 ’
- 用途:用于特殊引号样式。
-
“和”- 分别表示左双引号 “ 和右双引号 ”
- 用途:用于特殊引号样式。
使用命名字符实体引用
需要注意的是,并不是所有的XML处理器都支持所有命名字符实体引用。为了确保兼容性,最好使用数字字符实体引用(如 “ 或 “)或者只依赖于XML预定义的五个字符实体引用(<, >, &, ", ')。
总结
虽然XML只预定义了五个字符实体引用(<, >, &, ", '),但你可以通过数字字符实体引用或命名字符实体引用表示更多的Unicode字符。在编写XML文档时,使用这些字符实体引用可以确保文档的正确性和可读性,同时避免解析器遇到问题。如果你希望确保最大程度的兼容性,建议尽量使用预定义的字符实体引用或直接使用Unicode字符。
