描述自描述XML文档的XML Schema

时间:2010-05-02 07:23:49

标签: xsd

是否可以编写描述XML文档的XML Schema,该XML Schema列出一组元素,然后需要同一XML文档上的其他元素,以将这些值用作属性和/或子-elements?

示例:定义位置列表,然后强制位置属性和/或位置元素为这些值。

<root>
  <locations>
    <location>Home</location>
    <location>Office</location>
    <location>School</location>
  </locations>
  <addresses>
    <address location="Home">...</address>
    <address location="Office">...</address>
  </addresses>
</root>

<root>
  <locations>
    <location>Home</location>
    <location>Office</location>
    <location>School</location>
  </locations>
  <addresses>
    <address>
      <location>Home</location>
      ...
    </address>
    <address>
      <location>Office</location>
      ...
    </address>
  </addresses>
</root>

我很难找到正确的方法来搜索这些信息。我怀疑它不可能或我只是不知道正确的搜索条件。

1 个答案:

答案 0 :(得分:1)

当前版本1.0中的XML Schema对此无法帮助您。您无法对节点及其值之间的任何依赖关系进行建模(“如果节点X的值为ABC,那么XML文档中的其他位置必须有”ABC“节点”),我担心。

还有其他XML验证机制,例如SchematronRelax NG,有时可以做XML Schema无法做到的事情。您可能希望查看这些内容并查看是否可以使用此类工具实现目标。