XML验证:验证URI类型

2024-10-03 06:19:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用python的lxml根据模式验证xml。我有一个包含元素的架构:

<xs:element name="link-url" type="xs:anyURL"/>

例如,我测试以下(部分)xml:

^{pr2}$

我希望这个测试失败,因为link-url不是以http://开头的。我尝试将anyURI切换到{},但这导致了一个异常-它不是一个有效的标记。在

用lxml可以吗?模式验证有可能吗?在


Tags: namehttpurl元素架构type模式link
1条回答
网友
1楼 · 发布于 2024-10-03 06:19:30

(我很确定xs:anyURL是无效的。XML Schema standard调用它anyURI。既然link-url是一个属性,那么您不应该使用xs:attribute而不是{}在

您可以通过在uri上创建一个新的simpleTypebased来限制uri,并在pattern上添加一个restriction。例如

^{1}$

相关问题 更多 >