XML属性值中的星号

时间:2013-01-04 11:09:19

标签: xml validation xhtml

我有一个XHTML文件,这行:

<tr id="some-string-with-a-*">

我收到验证错误:

  

tr的属性id的值语法无效

我将其更改为&#42;,我仍然得到同样的错误 有什么建议吗?

1 个答案:

答案 0 :(得分:1)

您不能使用星号:

  

ID和NAME令牌必须以字母([A-Za-z])开头,可能是   后跟任意数量的字母,数字([0-9]),连字符(“ - ”),   下划线(“_”),冒号(“:”)和句点(“。”)。

请参阅XHTML specification

的片段标识符部分
  

请注意XML 1.0第2.3节中合法值的集合,   生产5远大于允许在ID中使用的生产   HTML 4中定义的NAME和NAME类型。定义片段标识符时   向后兼容,只匹配模式的字符串   应使用[A-Za-z] [A-Za-z0-9:_.-] *。见[HTML4]的第6.2节   了解更多信息。

请注意,如果您不想支持向后兼容性,则根据XML允许使用其他字符,但星号不在该列表中:

http://www.w3.org/TR/REC-xml/#NT-Name