根据其他元素属性对属性值进行 XSD 验证
我有一个 XML 文件:
<tasks>
<task name="task-12">
<step>Open folder</step>
<step nextTask="task-14">Delete contents.</step>
</task>
<task name="task-13">
<step nextTask="task-16">Create new folder folder</step>
</task>
<task name="task-14">
<step>Move files into folder.</step>
</task>
</tasks>
如何在 XSD 中指定 step/@nextTask
值仅在与 task/@name
的值匹配时才有效。
即在上面的例子中,task-13的步骤会被认为是无效的?
I have an XML file:
<tasks>
<task name="task-12">
<step>Open folder</step>
<step nextTask="task-14">Delete contents.</step>
</task>
<task name="task-13">
<step nextTask="task-16">Create new folder folder</step>
</task>
<task name="task-14">
<step>Move files into folder.</step>
</task>
</tasks>
How would I go about specifying in an XSD that the step/@nextTask
value is only valid if it matches a value of a task/@name
.
i.e. In the above example, the step of task-13 would be considered invalid?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
最简单的方法:将任务
name
属性声明为xsd:ID
类型,将步骤nextTask
属性声明为xsd 类型: IDREF
。Easiest way: declare the task
name
attribute to be of typexsd:ID
and the stepnextTask
attribute to be of typexsd:IDREF
.