Skip to content

XSD Numeric

How to use XML Schema (XSD) numeric data types like xs:decimal, xs:integer, and other built-in numeric types (byte, int, long, etc.) with their restrictions and usage examples in XML documents.

Decimal data types are used to represent numbers in XML documents.

Decimal Data Type

The decimal data type (<xs:decimal>) is used to represent numeric values. It supports decimal numbers up to 18 digits.

Let's see an example:

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

and an element in your XML document look like this:

<price>99.99</price>
<price>+99.1320</price>
<price>-99.1230</price>
<price>0</price>
<price>123</price>

Integer Data Type

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

Let's see an example:

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

and an element in your XML document look like this:

<price>99</price>
<price>+999</price>
<price>-999</price>
<price>0</price>

Numeric Data Types

Following is the list of commonly used numeric data types:

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

See XSD Restrictions chapter to learn more.

Navigation