使用XS:日期我希望日期格式为YYYYMMDD

Pra*_*ITI 6 xml w3c xsd

使用XSD我想只在我的xml字段中接受格式YYYYMMDD的日期..那么我该怎么做呢

我在一个例子中看到这个会工作吗?

Tom*_*icz 10

XML模式定义 dateTime为ISO8601,但有一些例外,您应该坚持这一点,否则您将遇到严重的互操作性问题.如果要使用不同的格式发送/接收日期,请使用simpleType正则表达式限制并在应用程序代码中解析/格式化日期:

<xs:simpleType name="CustomDate">
    <xs:restriction base="xs:string">
        <xs:pattern value="\d{8}"/>
    </xs:restriction>
</xs:simpleType>
Run Code Online (Sandbox Code Playgroud)

如果你真的想要使用内置类型(高度不可取),那么你的XML框架/库可能会有一些支持.例如,在Java/JAXB中,您可以将自定义转换器/格式化程序应用于任何类型,因此在客户端/服务器代码中,您仍然使用Date对象(不是8位数String),但使用自定义例程对其进行编组/解组.