2010-05-12 34 views
1
<XmlInfo /> 

我遇到了使用Perl流行的SOAP :: Lite模塊的問題,它不接受以「xml」(以字母爲單位)開頭的XML實體名稱。該模塊的作者回複稱,XML規範中不允許使用以「xml」開頭的實體名稱,但我無法在W3C的文檔中找到1.0和1.1規範,我也無法找到它關於XML實體命名的文章或準則文檔。實際上,一些指南文檔使用以xml開頭的名稱作爲示例,許多人正在使用它,正如我通過Google代碼搜索所看到的。爲什麼我不能用'xml'啓動XML實體名稱?

那麼在XML中的實體命名中是否有任何限制(除了W3C文檔中定義的字符之外)?有沒有限制說你不能命名以「xml」開頭的實體?

回答

4

此鏈接:http://www.exforsys.com/tutorials/xml/xml-elements-attributes-entities.html提供了答案:

  1. XML名稱必須與一個開頭:字母,下劃線,冒號,有效的名稱 字符,包括前面加上數字,連字符或句號。
  2. 除了作爲名稱空間分隔符外,不應使用冒號字符
  3. XML命名約定不限於ASCII字符,可以使用 表意字符。
  4. 它可能不是以字符串「XML」,」 XML」,或者這些 任何字符匹配開始

4號是你在找什麼。

+0

謝謝!但是這是從哪裏來的?!我沒有在XML規範中看到這個:( – flamey 2010-05-12 09:51:00

+1

nm,我在這裏找到它http://www.w3.org/TR/2008/REC-xml-20081126/#sec-common-syn – flamey 2010-05-12 09:55:35

1

我發現HTML & XML,權威指南它的一個一提,在「15.3.3實體聲明」:

唯一的限制是,名稱可能 與所述序列不開始「xml」 (大寫或小寫)。

相關問題