2024-10-03 06:19:30 发布
网友
我使用python的lxml根据模式验证xml。我有一个包含元素的架构:
<xs:element name="link-url" type="xs:anyURL"/>
例如,我测试以下(部分)xml:
我希望这个测试失败,因为link-url不是以http://开头的。我尝试将anyURI切换到{},但这导致了一个异常-它不是一个有效的标记。在
link-url
http://
anyURI
用lxml可以吗?模式验证有可能吗?在
(我很确定xs:anyURL是无效的。XML Schema standard调用它anyURI。既然link-url是一个属性,那么您不应该使用xs:attribute而不是{}在
xs:anyURL
xs:attribute
您可以通过在uri上创建一个新的simpleTypebased来限制uri,并在pattern上添加一个restriction。例如
simpleType
base
pattern
restriction
(我很确定}在
xs:anyURL
是无效的。XML Schema standard调用它anyURI
。既然link-url
是一个属性,那么您不应该使用xs:attribute
而不是{您可以通过在uri上创建一个新的
^{1}$simpleType
base
d来限制uri,并在pattern
上添加一个restriction
。例如相关问题 更多 >
编程相关推荐