For values containing date and time, the date and time data types are used.
Date Data Type:
To specify a date, the date data type is used. It is specified in the “YYYY-MM-DD” format and where all components are required. Here,
- YYYY: Used to indicate the year.
- MM: Used to indicate the month.
- DD: Used to indicate the day.
Example: Date declaration in a schema:
<xs:element name="birthday" type="xs:date"></xs:element> |
An element in a document:
<birthday>1995-11-16</birthday> |
Time Zones:
To specify a time zone:
Enter a date in UTC time by adding a “Z” behind the date:
Example:
<birthday>1995-11-16Z</birthday> |
OR
Specify an offset from the UTC time by adding a positive or negative time behind the date:
Example 1:
<birthday>1995-11-16-09:00</birthday> |
Example 2:
<birthday>1995-11-16+09:00</birthday> |
Time Data Type:
To specify a time, the time data type is used. It is specified in the “hh:mm:ss” format and where all the components are required. Here,
- hh: Used to indicate the hour.
- mm: Used to indicate the minute.
- ss: Used to indicate the second.
Example: Time declaration in a schema:
<xs:element name="birthtime" type="xs:time"></xs:element> |
An element in a document:
<birthtime>21:00:00</birthtime> |
Or:
<birthtime>21:30:01.7</birthtime> |
Time Zones:
To specify a time zone:
Enter a time in UTC time by adding a “Z” behind the time:
Example:
<birthtime>21:30:10Z</birthtime> |
OR
Specify an offset from the UTC time by adding a positive or negative time behind the time:
Example 1:
<birthtime>21:30:10-03:00</birthtime> |
Example 2:
<birthtime>21:30:10+03:00</birthtime> |
DateTime Data Type:
To specify a date and a time, the dateTime data type is used. It is specified in the “YYYY-MM-DDThh:mm:ss” format and where all the components are required. Here,
- YYYY: Used to indicate the year.
- MM: Used to indicate the month.
- DD: Used to indicate the day.
- T: Used to indicate the start of the required time section.
- hh: Used to indicate the hour.
- mm: Used to indicate the minute.
- ss: Used to indicate the second.
Example: DateTime declaration in a schema:
<xs:element name="start" type="xs:dateTime"></xs:element> |
An element in a document:
<start>2020-08-08T08:00:00</start> |
Or:
<start>2020-08-08T08:30:11.5</start> |
Time Zones:
To specify a time zone:
Enter a dateTime in UTC time by adding a “Z” behind the time:
Example:
<start>2020-08-08T08:30:11Z</start> |
OR
Specify an offset from the UTC time by adding a positive or negative time behind the time:
Example 1:
<start>2020-08-08T08:30:11-03:00</start> |
Example 2:
<start>2020-08-08T08:30:11+03:00</start> |
Duration Data Type:
To specify a time interval, the duration data type is used. It is specified in the “PnYnMnDTnHnMnS” format. Here,
- P: Used to indicate the period. It is a required component.
- nY: Used to indicate the number of years.
- nM: Used to indicate the number of months.
- nD: Used to indicate the number of days.
- T: Used to indicate the start of a time section. It is a required component when we are specifying hours, minutes, or seconds.
- nH: Used to indicate the number of hours.
- nM: Used to indicate the number of minutes.
- nS: Used to indicate the number of seconds.
Example: Duration declaration in a schema:
<xs:element name="period" type="xs:duration"></xs:element> |
An element in a document:
<period>P2Y</period> |
Explanation:
In the above example, we are indicating a period of two years.
Or:
<period>P2Y3M4D</period> |
Explanation:
In the above example, we are indicating a period of two years, three months, and four days.
Or:
<period>P2Y3M4DT5H</period> |
Explanation:
In the above example, we are indicating a period of two years, three months, four days and five hours.
Or:
<period>PT5H</period> |
Explanation:
In the above example, we are indicating a period of five hours.
Negative Duration:
We can enter a minus sign before P to indicate a negative duration.
Example:
<period>-P4D</period> |
Explanation:
In the above example, we are indicating a period of minus four days.
Date and Time Data Types:
Name | Uses |
date | Used to define a date value. |
dateTime | Used to define a date and time value. |
duration | Used to define a time interval. |
gDay | Used to define a part of a date – the day (DD). |
gMonth | Used to define a part of a date – the month (MM). |
gMonthDay | Used to define a part of a date – the month and day (MM-DD). |
gYear | Used to define a part of a date – the year (YYYY). |
gYearMonth | Used to define a part of a date – the year and month (YYYY-MM). |
time | Used to define a time value. |
Restrictions on Date Data Types:
Restrictions used with Date data types:
- enumeration
- maxExclusive
- maxInclusive
- minExclusive
- minInclusive
- pattern
- whiteSpace