XML Schema Numeric Datatypes

Decimal data types are used for numeric values

Decimal Data Type

The decimal data type is used to specify a numeric value.

The following is an example of a decimal declaration in a schema:

<xs:element name="price" type="xs:decimal"/>

An element in your document might look like this:

<price>999.50</price>

Or it might look like this:

<price>+999.5450</price>

Or it might look like this:

<price>-999.5230</price>

Or it might look like this:

<price>0</price>

Or it might look like this:

<price>14</price>

Integer Data Type

The integer data type is used to specify a numeric value without a fractional component.

The following is an example of an integer declaration in a schema:

<xs:element name="price" type="xs:integer"/>

An element in your document might look like this:

<price>999</price>

Or it might look like this:

<price>+999</price>

Or it might look like this:

<price>-999</price>

Or it might look like this:

<price>0</price>

Numeric Data Types

Note that all of the data types below derive from the Decimal data type (except for decimal itself)!

Name Description
byte A signed 8-bit integer
decimal A decimal value
int A signed 32-bit integer
integer An integer value
long A signed 64-bit integer
negativeInteger An integer containing only negative values (..,-2,-1)
nonNegativeInteger An integer containing only non-negative values (0,1,2,..)
nonPositiveInteger An integer containing only non-positive values (..,-2,-1,0)
positiveInteger An integer containing only positive values (1,2,..)
short A signed 16-bit integer
unsignedLong An unsigned 64-bit integer
unsignedInt An unsigned 32-bit integer
unsignedShort An unsigned 16-bit integer
unsignedByte An unsigned 8-bit integer

Restrictions on Numeric Data Types

Restrictions that can be used with Numeric data types:

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