XML Schema 数值数据类型(Numeric Data Types)

十进制数据类型用于数值。


十进制数据类型

十进制数据类型用于规定一个数值。

下面是一个关于某个 scheme 中十进制数声明的例子。

  1. <xs:element name="prize" type="xs:decimal"/>

文档中的元素看上去应该类似这样:

  1. <prize>999.50</prize>

或者类似这样:

  1. <prize>+999.5450</prize>

或者类似这样:

  1. <prize>-999.5230</prize>

或者类似这样:

  1. <prize>0</prize>

或者类似这样:

  1. <prize>14</prize>

注释:您可规定的十进制数字的最大位数是 18 位。


整数数据类型

整数数据类型用于规定无小数成分的数值。

下面是一个关于某个 scheme 中整数声明的例子。

  1. <xs:element name="prize" type="xs:integer"/>

文档中的元素看上去应该类似这样:

  1. <prize>999</prize>

或者类似这样:

  1. <prize>+999</prize>

或者类似这样:

  1. <prize>-999</prize>

或者类似这样:

  1. <prize>0</prize>

数值数据类型

请注意,下面所有的数据类型均源自于十进制数据类型(除 decimal 本身以外)!

名字秒数
byte有正负的 8 位整数
decimal十进制数
int有正负的 32 位整数
integer整数值
long有正负的 64 位整数
negativeInteger仅包含负值的整数 ( .., -2, -1.)
nonNegativeInteger仅包含非负值的整数 (0, 1, 2, ..)
nonPositiveInteger仅包含非正值的整数 (.., -2, -1, 0)
positiveInteger仅包含正值的整数 (1, 2, ..)
short有正负的 16 位整数
unsignedLong无正负的 64 位整数
unsignedInt无正负的 32 位整数
unsignedShort无正负的 16 位整数
unsignedByte无正负的 8 位整数

对数值数据类型的限定(Restriction)

可与数值数据类型一同使用的限定:

  • enumeration
  • fractionDigits
  • maxExclusive
  • maxInclusive
  • minExclusive
  • minInclusive
  • pattern
  • totalDigits
  • whiteSpace