学会声明schema时间数据(XML入门20)

       使用schema文件作为XML文档定义最大的有点就是其对数据类型的支持,比起DTD文档更有优势。今天我们看看时间数据的声明方法。

        最简单时间数据类型的元素标记定义是日期类型(date)。

例如:

<xs:element name="start" type=“xs:date”/>

        日期类型(date)就是通用格式的数据,含有年月日。上面的声明,如果在XML文档中如下:

<start>2020-03-11</start>

        表示日期的格式:YYYY-MM-DD其中:Y表示年,M表示月,D表示日。

         日期类型还支持世界实践,用在日期后加减表示时区相差的时间。例如:

<start>2020-03-11+6:00</start>

        也可以在日期后附上“Z”表示世界调整时间(UTC-time)。例如:

<start>2020-03-11Z</start>

        时间类型(time)声明方法与日期类型相似。例如:

<xs:element name="start" type=“xs:time”/>

       时间类型(time)就是通用格式的数据,含有时分秒。上面的时间声明,如果在XML文档中如下:

<start>12:30:06</start>

        表示时间的格式:hh:mm:ss其中:h表示小时,m表示分钟,s表示秒。文档中还何以代小数。例如:

<start>12:30:06.5</start>

         与日期类型一样可以使用国家时区。或加减时区变更时间。例如:

<start>12:30:06Z</start>

<start>12:30:06+6:00</start>

<start>12:30:06-6:00</start>

        还有一种日期时间一起的数据类型datetime定义方法与前面的相同。例如:

<xs:element name="start" type=“xs:datetime”/>

       日期时间类型(datetime)就是通用格式的数据,含有日期和时间。上面的时间声明,如果在XML文档中如下:

    <start>2020-03-11T12:30:06</start>

        这里T表示时间开始。其他用法同前,可以使用国际时间以及国际日期时间调整。

       持续类型(duration)就是通用格式的数据,“PnYnMnDTnHnMnS”。上面的时间声明,如果在XML文档中如下:

<period>P5y</period>

      这里表示五年周期。要能读懂必须明白通用格式中字母的意义:

      P表示周期数;nY表示年数;nM表示月数;nD表示日数;T表示时间开始;nH表示小时数;nM表示分钟数;nS表示秒数。

       有了上面的说明,下面的例子就看明白了。

<period>P5y2M10D</period>

      这个例子表示一个 5 年2 个月及 10 天的周期。

       再举一个复杂的:

<period>P5y2M10DT15H</period>

      这个例子表示一个 5 年2 个月10 天及 15 小时的周期。

  <period>P5T15H</period>

       表示一个 15 小时的周期。

        也可表示负数的周期。例如:

<period>-P10D</period>

         表示负十天周期。

          这里持续类型,P不能缺省,没有P就不能被解析。

        北荒客

        2020.03.11

你可能感兴趣的:(学会声明schema时间数据(XML入门20))