ISO-31-1
ISO 31-1
This is a page for the study of ISO 31-1 which is the part of the international standard ISO 31 format for durations and intervals as discussed on microformats-new also outlined on datetime-design-pattern.
- Wouldn't ISO-80000 be a better reference standard, given that ISO-31 has been obsoleted? TobyInk 00:33, 7 Aug 2008 (PDT)
- This proposal will eventually adopt ISO-80000-3, or the International System of Quantities (ISQ) standard. Martin McEvoy 14:48, 7 Aug 2008 (GMT)
Sample markup
Proposed as a replacement or optimization of hAudio Duration expressed in ISO-31-1/ISQ format
<span class="duration"> <span class="h">1</span>: <span class="min">3</span>: <span class="s">42</span> </span>
Issues
- Raised By Glenn Jones on microformats new
Having different datatypes for a property of the same name is very problematic. Personally I would not like us to use ISO-8601 for hCalendar duration and ISO-31-1 for duration in hAudio. Some parsers do try to convert formats into datatypes this could become hellish if we use the same property names for different data formats.
- Solution 1 — Change
duration
tointerval
. Martin McEvoy 14:48, 7 Aug 2008 (GMT)- The problem with the name "interval" is that ISO-8601 (which microformats make use of!) defines a duration and an interval very differently. A duration is a length of time with no fixed starting or ending points — for example, "5 minutes". An interval is the span between two fixed times; a duration with fixed start and end points — for example, "five minutes starting now". I think we should avoid introducing a clash in terminology with ISO-8601.
- Agreed Martin McEvoy 12:11, 8 Aug 2008 (GMT)
- Solution 2 — Keep the name, and allow all properties which take a duration as their value (across all microformats!) to use this pattern. It can become a standard microformats design pattern. TobyInk 12:35, 7 Aug 2008 (PDT)
- Solution 1 — Change
Implementations
- The next released version of Cognition will experimentally support four alternative syntaxes (syntaces?) for durations. They will be supported any place where a duration is expected. (e.g. hCalendar events, hAudio). As each syntax is quite different, you do not need to tell Cognition which syntax you will be using — this is detected automatically.
- ISO 8601: e.g.
<span class="duration">PT1H2M3.4S</span>
- ISO 31-1 classes: As above. (Additional non-ISO-31-1 classes supported: 'y' = year, 'm' = month, 'w' = week.)
- SI:
<span class="duration">52 s</span>
. (Seconds are the only supported unit.) - hmeasure draft, with null "item" and with "type" set to "duration" or null. (Seconds are the only supported unit.)
- When multiple hmeasures are found within the duration, the first valid duration hmeasure (i.e. a valid hmeasure which meets the above criteria) is used.
- ISO 8601: e.g.