类型中需要时区="xs:dateTime"

Require time zone in type="xs:dateTime"

是否有可能以某种方式在 XML 架构中的 dateTime 中要求时区?

要要求 xs:dateTime 具有时区,请将 xs:pattern 方面添加到 xs:restriction:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:simpleType name="dateTimeWithRequiredTimeZone">
    <xs:restriction base="xs:dateTime">
      <xs:pattern value="\d{4}-\d\d-\d\dT\d\d:\d\d:\d\dZ"/>
      <xs:pattern value="\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d\+\d\d:\d\d"/>
    </xs:restriction>
  </xs:simpleType>
</xs:schema>

编辑: 正如 Michael Kay 有益地指出的那样,上述模式 过度指定了要求 。就像 xs:dateTime 检查已经限制了每个日期和时间限制的数字一样,它也会限制它们 数字。因此,该模式只能关注时区 xs:dateTime:

的增加长度
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:simpleType name="dateTimeWithRequiredTimeZone">
    <xs:restriction base="xs:dateTime">
      <xs:pattern value=".{20}.*"/>
    </xs:restriction>
  </xs:simpleType>
</xs:schema>

同样根据迈克尔:XSD 1.1 有 explicitTimeZone="required|prohibited|optional"