【问题标题】:xsd - validating values from external dictionary filexsd - 验证来自外部字典文件的值
【发布时间】:2009-09-25 04:38:55
【问题描述】:

我想为以下文档定义一个架构:

...
<car>
  <make>ford</make>
  <model>mondeo</model>
</car>
...

问题是我想从外部数据字典中限制可能的值(所以 ford/mondeo 或 audi/a4 将是 make/model 的有效值,但 audi/mondeo 不会)。如果需要添加新车型,只需更改外部数据文件,但 xsd 架构将保持不变。

这可能吗?我查看了 key/keyref 约束,我发现我可以在单个文档中使用它们,但这不是我想要的。我不想对每个文档实例重复完整的数据字典,我更愿意让数据文件构成架构的一部分。

【问题讨论】:

    标签: validation xsd


    【解决方案1】:

    这在 XML Schema 1.0 中是不可能的。

    XML Schema 1.1 将添加一些支持来表达这种约束(尽管 AFAIK 不在外部文件中)——但这还不是 W3C 的建议。

    现在可以使用 Schematron 来实现这一点,最终嵌入到 XML Schema 中。

    但是,在这个领域已经有一些工作取得了可用的成果。查看 OASIS 代码列表

    http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=codelist

    更多细节可以在这里找到:

    http://www.genericode.org/

    这用于 OASIS 通用商业语言 (UBL) http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=ubl

    最好的问候, 乔治

    【讨论】:

      猜你喜欢
      • 2016-07-09
      • 2022-12-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-10
      • 2020-01-26
      • 2021-12-16
      相关资源
      最近更新 更多