For a calendar date in ISO 8601 extended format in the form YYYY-MM-DD (e.g. "2026-08-22"), with or without time, this template extracts the year, month, day and time, and calls {{Date}} with the year, month and day found to display the date in localised format, with the time, if specified, appended. It provides the convenience of passing on a date (or even a date and a time) from one template to another as a single parameter, even though {{Date}} eventually needs the date components separately.
This template overcomes some flaws of the automatic conversion by {{#time: }} for non-full dates (e.g. "77-09" for September 77 AD, which would throw an error with {{#time: }}).
Usage
Template parameters
| Parameter | Description | Default | Status |
|---|
1 | Any proleptic Gregorian calendar or Gregorian calendar date between 1 January 1 AD and 31 December 9999 AD. Dates BC are not yet supported. Also incomplete dates are allowed: just the year or the year and the month. A year has to be written in full, without leading zeros. Optionally it is followed by a dash and a 2-digit month number; optionally this is followed by a dash and a 2-digit day number; optionally this is followed by the time. | empty | required |
2 | language code (only needs to be provided if the language shall be fixed and independent from the user's preferences) | language code of the user language | optional |
f | format ("Y" for year-only output ["{{ISOdate|2008-08-06|f=Y}}" will result in the output "6 August 2008"). Similar to {{ISOyear}}. | empty | optional |
form | allows to specify grammatical case for the month, for languages that use them. Possible cases:
| empty | optional |
The template is intended to be used in the following namespaces:
all namespaces
The template is intended to be used by the following user groups:
all users
Example
{{ISOdate|2009-08-18}}
renders as:
See also
Localization
This template is not intended to be localized.
Example of where the template provides convenience
- Template:Creator passes on the date of birth and death to e.g. Template:Creator/de and then to Template:Creator/layout. This is done through only two parameters birthdate and deathdate. The last-mentioned template calls this template ISODate to extract the 6 date components, and the time components, if any.
Test cases
- {{ISOdate|2010-08-18 08:15:30Z}}: 18 August 2010, 08:15:30
- {{ISOdate|2010-08-18 08:15:30}}: 18 August 2010, 08:15:30
- {{ISOdate|2010-08-18 08:15}}: 18 August 2010, 08:15
- {{ISOdate|2010-08-18}}: 18 August 2010
- {{ISOdate|2010-08}}: August 2010
- {{ISOdate|2010}}: 2010
- {{ISOdate|1970-08-18 08:15:30}}: 18 August 1970, 08:15:30
- {{ISOdate|1969-08-18 08:15:30}}: 18 August 1969, 08:15:30
- {{ISOdate|1800-08-18 08:15:30}}: 18 August 1800, 08:15:30
- {{ISOdate|999-08-18 08:15:30}}: 18 August 999 08:15:30
- {{ISOdate|119-08-18 08:15:30}}: 18 August 119 08:15:30
- {{ISOdate|99-08-18 08:15:30}}: 18 August 0099 08:15:30
- {{ISOdate|19-08-18 08:15:30}}: 18 August 0019 08:15:30
- {{ISOdate|9-08-18 08:15:30}}: 18 August 0009 08:15:30
- {{ISOdate|1-08-18 08:15:30}}: 18 August 0001 08:15:30
|
- {{ISOdate|1970-08-18}}: 18 August 1970
- {{ISOdate|1969-08-18}}: 18 August 1969
- {{ISOdate|1800-08-18}}: 18 August 1800
- {{ISOdate|999-08-18}}: 18 August 999
- {{ISOdate|119-08-18}}: 18 August 119
- {{ISOdate|99-08-18}}: 18 August 0099
- {{ISOdate|19-08-18}}: 18 August 0019
- {{ISOdate|9-08-18}}: 18 August 0009
- {{ISOdate|1-08-18}}: 18 August 0001
- {{ISOdate|1970-08}}: August 1970
- {{ISOdate|1969-08}}: August 1969
- {{ISOdate|1800-08}}: August 1800
- {{ISOdate|999-08}}: August 999
- {{ISOdate|119-08}}: August 119
- {{ISOdate|99-08}}: August 0099
|
- {{ISOdate|19-08}}: August 0019
- {{ISOdate|9-08}}: August 0009
- {{ISOdate|1-08}}: August 0001
- {{ISOdate|1970}}: 1970
- {{ISOdate|1969}}: 1969
- {{ISOdate|1800}}: 1800
- {{ISOdate|999}}: 999
- {{ISOdate|119}}: 119
- {{ISOdate|99}}: 0099
- {{ISOdate|19}}: 0019
- {{ISOdate|9}}: 0009
- {{ISOdate|1}}: 0001
- {{ISOdate|0}}: 0000
- {{ISOdate|1567-02-29}}: 1 March 1567
- {{ISOdate|2000-02-29}}: 29 February 2000
|
- {{ISOdate|f=Y|2010-08-18 08:15:30Z}}: 18 August 2010, 08:15:30
- {{ISOdate|f=Y|2010-08-18 08:15:30}}: 18 August 2010, 08:15:30
- {{ISOdate|f=Y|2010-08-18 08:15}}: 18 August 2010, 08:15
- {{ISOdate|f=Y|2010-08-18}}: 18 August 2010
- {{ISOdate|f=Y|2010-08}}: August 2010
- {{ISOdate|f=Y|2010}}: 2010
- {{ISOdate|f=Y|1970-08-18 08:15:30}}: 18 August 1970, 08:15:30
- {{ISOdate|f=Y|1969-08-18 08:15:30}}: 18 August 1969, 08:15:30
- {{ISOdate|f=Y|1800-08-18 08:15:30}}: 18 August 1800, 08:15:30
- {{ISOdate|f=Y|999-08-18 08:15:30}}: 18 August 999 08:15:30
- {{ISOdate|f=Y|119-08-18 08:15:30}}: 18 August 119 08:15:30
- {{ISOdate|f=Y|99-08-18 08:15:30}}: 18 August 0099 08:15:30
- {{ISOdate|f=Y|19-08-18 08:15:30}}: 18 August 0019 08:15:30
- {{ISOdate|f=Y|9-08-18 08:15:30}}: 18 August 0009 08:15:30
- {{ISOdate|f=Y|1-08-18 08:15:30}}: 18 August 0001 08:15:30
|
- {{ISOdate|f=Y|1970-08-18}}: 18 August 1970
- {{ISOdate|f=Y|1969-08-18}}: 18 August 1969
- {{ISOdate|f=Y|1800-08-18}}: 18 August 1800
- {{ISOdate|f=Y|999-08-18}}: 18 August 999
- {{ISOdate|f=Y|119-08-18}}: 18 August 119
- {{ISOdate|f=Y|99-08-18}}: 18 August 0099
- {{ISOdate|f=Y|19-08-18}}: 18 August 0019
- {{ISOdate|f=Y|9-08-18}}: 18 August 0009
- {{ISOdate|f=Y|1-08-18}}: 18 August 0001
- {{ISOdate|f=Y|1970-08}}: August 1970
- {{ISOdate|f=Y|1969-08}}: August 1969
- {{ISOdate|f=Y|1800-08}}: August 1800
- {{ISOdate|f=Y|999-08}}: August 999
- {{ISOdate|f=Y|119-08}}: August 119
- {{ISOdate|f=Y|99-08}}: August 0099
|
- {{ISOdate|f=Y|19-08}}: August 0019
- {{ISOdate|f=Y|9-08}}: August 0009
- {{ISOdate|f=Y|1-08}}: August 0001
- {{ISOdate|f=Y|1970}}: 1970
- {{ISOdate|f=Y|1969}}: 1969
- {{ISOdate|f=Y|1800}}: 1800
- {{ISOdate|f=Y|999}}: 999
- {{ISOdate|f=Y|119}}: 119
- {{ISOdate|f=Y|99}}: 0099
- {{ISOdate|f=Y|19}}: 0019
- {{ISOdate|f=Y|9}}: 0009
- {{ISOdate|f=Y|1}}: 0001
- {{ISOdate|f=Y|0}}: 0000
- {{ISOdate|f=Y|1567-02-29}}: 1 March 1567
- {{ISOdate|f=Y|2000-02-29}}: 29 February 2000
|