我正在使用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(强调我的):
由Internet协议文字地址版本6 [RFC3513]或更高版本标识的主机通过将IP文字括在方括号(“ [”和“]”)中来区分。这是URI语法中 唯一允许使用方括号字符的地方 。
尝试分别用%5b和替换它们%5d。
%5b
%5d