我需要为这种XML语言编写XML Schema:
<wfInfo>
<worflow name="wf1">
<action name="act1" role="seller"/>
<action name="act2" role="buyer"/>
...
</workflow>
<workflow name="wf2">
...
</workflow>
<process workflow="wf1">
<actionStatus action="act2" takenInCharge="true"/>
</process>
<process ...> ... </process>
...
</wfInfo>
我设法编写了几乎所有模式的部分,包括大多数key和keyref元素。 无论如何,有一个约束我似乎无法写。我想让元素actionStatus的属性“action”指向正确的操作,而不是文档中的任何操作。我的意思是,在这种情况下,在验证过程中,应该验证动作“act2”存在于工作流“wf1”中,而不是在任何工作流程中。是否可以使用W3C XML Schema语言?
谢谢,任何答案都将非常感谢
答案 0 :(得分:1)
您可以使用key / keyref - 但这可能会非常混乱。
除了W3C XML Schema之外,更好的方法可能是使用其他技术。例如,Schematron可以与模式结合使用,并且易于添加和理解。或者,在代码中实现这种依赖很容易。