【问题标题】:How to impose minute restrictions on xsd:dateTime?如何对 xsd:dateTime 施加分钟限制?
【发布时间】:2016-05-24 17:24:42
【问题描述】:

我读到我们可以对 xsd:datetime 字段使用 minInclusive 和 maxInclusive 限制。但是如何确保我的 dateTime 字段不会出现在未来 5 分钟之后? 我知道如何在 java 中处理它。但我希望在架构级别进行验证。 请帮我。

【问题讨论】:

    标签: xsd xsd-validation xsd.exe xsd2code xsd-1.1


    【解决方案1】:

    可以使用 XSD 1.1 完成。示例:

    <xs:element name="myDateTime">
        <xs:simpleType>
            <xs:restriction base="xs:dateTime">
                <xs:assertion test="$value lt (current-dateTime() + xs:dayTimeDuration('PT5M'))"/>
            </xs:restriction>
        </xs:simpleType>
    </xs:element>
    

    解释:

    current-dateTime() + xs:dayTimeDuration('PT5M') 与当前日期相加 5 分钟。

    lt 代表低于,因为字符&lt; 不能用于该部分。

    $value 保存 XSD 1.1 断言中的值。

    另请参阅:xs:dayTimeDuration at XPath 2.0 specs

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-11-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-13
      • 2021-03-02
      相关资源
      最近更新 更多