以文本方式查看主题

-  W3CHINA.ORG讨论区 - 语义网·描述逻辑·本体·RDF·OWL  (http://bbs.xml.org.cn/index.asp)
--  『 DOM/SAX/XPath 』  (http://bbs.xml.org.cn/list.asp?boardid=11)
----  [求助]貌似xerces-c的一个bug,高手请进  (http://bbs.xml.org.cn/dispbbs.asp?boardid=11&rootid=&id=32897)


--  作者:silenceburn
--  发布时间:5/23/2006 12:11:00 PM

--  [求助]貌似xerces-c的一个bug,高手请进
我使用的是xerces-c_2_7_0-windows_2000-msvc_60
今天偶然发现一个问题:
我用createElement时,创建的元素的label名字串中不能含有"#"字符.

比如如下语句:
DOMElement* testele = doc->createElement(XMLString::transcode("adf#dasd"));
就会出错.

但是我查了XML规范,#字符并不是保留字符,应该是可以出现在元素命名中的啊.

求高手解答.


--  作者:silenceburn
--  发布时间:5/24/2006 9:58:00 AM

--  
晕,问题解决了.
#的确不可以使用在label中.

XML规范中规定:
XML命名字符:任何unicode字母字符;任何unicode数字字符;_;-;:;.
注意是unicode字母字符!
对于英语来说,就是只能用a-z,A-Z,0-9了.

我用XMLSPY试了,果然含有#,%,&等符号字符时,XMLSPY也会报错.


--  作者:silenceburn
--  发布时间:5/24/2006 9:59:00 AM

--  
错怪了XERCES了,检讨一下自己不认真的态度.
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
93.262ms