我正在使用go-libxml2进行xsd模式验证。我有一个将url作为值的XML元素。我的xsd还包含其类型为anyURI,如下所示
<xs:element name="url" type="xs:anyURI">
以下代码在包含“[]”的验证网址上引发错误
xsd.schema.Validate(xml)
以下是引发错误的示例网址
<url>
<![CDATA[
http://example.com/orda/var[div]=super
]]>
</url>
错误:
'http://example.com/orda/var[div]=super is not a valid value of the atomic type 'xs:anyURI'
常规网址可以正常工作。任何想法如何解决这个问题
最佳答案
参见RFC3986(重点是我的):
尝试分别用%5b
和%5d
替换它们。