datestandardsnamingdate-rangeiso8601

Is there any kind of standard for representing date ranges?


ISO 8601 represents a date as YYYY-MM-DD.

It doesn't seem to offer any recommendation on how to represent a date range, for example:

2013-01-01 => 2013-06-31

Does ISO 8601, or another standard, give a sensible recommendation for representing date ranges?

Background: this is to be used as the output of the toString() method of a DateRange object, output which could then be parsed with a parse() method.


Solution

  • ISO 8601 does have a standard for representing date ranges. To represent the start and end date using this format you would write:

    2013-01-01/2013-06-31

    Note how the forward slash is used as the interval designator to separate the start and end dates.

    See the ISO 8601 Wikipedia page for more information about time intervals.