2009-06-15 70 views
9

在這樣的數據:是 XML中的有效字符嗎?

<row Id="37501" PostId="135577" Text="...uses though.&#x10;"/> 

我得到一個錯誤使用Python SAX解析器:

xml.sax._exceptions.SAXParseException: 
comments.xml:29776:332: reference to invalid character number 

我修剪的例子; 332點到「& #x10;」。

解析器在拒絕這個字符時是否正確?

回答

12

正如其他人所說,你的意思可能是&#10;。之所以&#x10;(0×10 = 10小時= 16)是無效的是,它明確了XML 1.0標準的除外:(http://www.w3.org/TR/xml/#NT-Char

Char ::= #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF] 
+1

如果你的庫支持,XML 1.1具有更廣泛的法律性質 - HTTP ://www.w3.org/TR/xml11/#charsets – 2009-06-16 00:13:35

5

&#10;是換行字符,這似乎是意圖。

&#x10;將與&#16;(10十六進制爲十六進制數)相同,並且會引用DLE(數據鏈接轉義)字符。

DLE是一個transmission control character用於控制正在傳輸的數據的解釋。