首页 > 解决方案 > 在 XSD 中验证日期或日期时间的日期范围?

问题描述

我有一个接受日期值或日期时间值的元素。现在元素的 xsd 看起来像这样:

<xs:simpleType name="sTidpunkt">
    <xs:union memberTypes="xs:date xs:dateTime"/>
</xs:simpleType>

如何扩展它以验证日期或日期时间值的日期部分是否在特定范围内?例如,它必须晚于 1980-06-01 并且早于 1990-06-01。

谢谢!

标签: datedatetimexsddate-range

解决方案


XSD 简单类型的参考信息在这里:https ://www.w3.org/TR/xmlschema-2/#dateTime

基于该规范,我建议以下内容:

  1. 声明两个新的全局简单类型定义:(例如myDatemyDateTime
  2. 向那些简单的类型定义添加方面,以您需要的任何方式限制值。
  3. 更改您的 memberTypes 属性以引用新的简单类型。

推荐阅读