Xml 将数字用作和属性名会产生解析错误
为什么我不能使用数字作为属性名 以下XML在解析属性名称时产生Xml 将数字用作和属性名会产生解析错误,xml,Xml,为什么我不能使用数字作为属性名 以下XML在解析属性名称时产生错误错误 <?xml version="1.0" encoding="utf-8"?> <root version="8"> <My 0="myVal"/> </root> 至于我为什么要服从www委员会,但以下是规则: 至于我为什么要服从www委员会,但以下是规则: 根据名称,必须从NameStartChar开始,并且(几乎)任何其他字符都必须是NameCha
错误
错误
<?xml version="1.0" encoding="utf-8"?>
<root version="8">
<My 0="myVal"/>
</root>
至于我为什么要服从www委员会,但以下是规则:
至于我为什么要服从www委员会,但以下是规则:
根据名称,必须从NameStartChar开始,并且(几乎)任何其他字符都必须是NameChars此机制用于防止名称以欧洲(ASCII)数字或基本组合字符开头
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]
鼓励文档作者使用自然语言中有意义的词或词的组合,并避免在名称中使用符号或空格字符。请注意,冒号、连字符、句号(句号)、低线(下划线)和中间点是明确允许的。根据名称,必须从NameStartChar开始,并且(几乎)任何其他字符都必须是NameChar此机制用于防止名称以欧洲(ASCII)数字或基本组合字符开头
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]
鼓励文档作者使用自然语言中有意义的词或词的组合,并避免在名称中使用符号或空格字符。请注意,冒号、减号连字符、句号(句号)、低线(下划线)和中间点是明确允许的
为什么我不能使用数字作为属性名
回答“为什么”问题有三种方式:
(a) 因为说明书上这么说
(b) 历史分析:规范为什么这么说?决定是什么时候作出的,是什么讨论导致了这项决定,提出了哪些赞成和反对的论点,为什么工作组的个别成员投票赞成或反对?遗憾的是,这样的分析几乎不可能。即使你是工作组的一名成员,做出决定并出席相关会议,也很难知道它为什么做出决定。几年后,仅仅从文献记录中做这件事通常是不可能的
(c) 事后论证:决策是否对用户有利?例如,可以根据属性名应该映射到Java中的方法名来证明该决定的合理性,即使这与历史无关
实际上,XML中的许多决策都可以追溯到SGML历史:XML被定义为SGML的子集,SGML有许多规则,这些规则在SGML上下文中是必需的,但在XML上下文中是不必要的
为什么我不能使用数字作为属性名
回答“为什么”问题有三种方式:
(a) 因为说明书上这么说
(b) 历史分析:规范为什么这么说?决定是什么时候作出的,是什么讨论导致了这项决定,提出了哪些赞成和反对的论点,为什么工作组的个别成员投票赞成或反对?遗憾的是,这样的分析几乎不可能。即使你是工作组的一名成员,做出决定并出席相关会议,也很难知道它为什么做出决定。几年后,仅仅从文献记录中做这件事通常是不可能的
(c) 事后论证:决策是否对用户有利?例如,可以根据属性名应该映射到Java中的方法名来证明该决定的合理性,即使这与历史无关
实际上,XML中的许多决策都可以追溯到SGML历史:XML被定义为SGML的子集,SGML有许多规则,这些规则在SGML上下文中是必需的,但在XML上下文中是不必要的