微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 – 在XML元素名称

XML元素名称中使用连字符可以吗?

例如

<rank-type>Rank</rank-type>
正如Vinko和黑客所说,答案是

是的,名称中允许使用破折号,无论是元素名称还是属性名称.然而,破折号不能是名字中的第一个字符.

W3C standard定义名称如下(第2.3节)

NameStartChar ::= ":" | [A-Z] | "_" | [a-z] | [#xC0-#xD6] | [#xD8-#xF6] | [#xF8-#x2FF] | [#x370-#x37D] | [#x37F-#x1FFF] | [#x200C-#x200D] | [#x2070-#x218F] | [#x2C00-#x2FEF] | [#x3001-#xD7FF] | [#xF900-#xFDCF] | [#xFDF0-#xFFFD] | [#x10000-#xEFFFF]
NameChar  ::=   NameStartChar | "-" | "." | [0-9] | #xB7 | [#x0300-#x036F] | [#x203F-#x2040]
Name  ::= NameStartChar (NameChar)*

忽略各种扩展ASCII字符和双字节字符(以语法定义中的#号开头),名称需要以大写或小写字母(A-Z),冒号(:)或下划线开头.这个起始字符后面的字符,如果有的话,即如果名字不是单个字符,可以是任何有效的起始字符和/或任何数字(0-9),着名的破折号( – )和点(.)

正如其他答复中所指出的那样,尽可能地避免某些字符,即使它们是合法的,以免我们冒险遇到与各种解析器和互操作层的一些实现具体的困难.

W3C本身隐含地证明了使用破折号,因为它们在XSL中被广泛使用.

原文地址:https://www.jb51.cc/xml/292860.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。