ISO-TC211 / ISO19111

Revision of ISO19111 - Spatial referencing by coordinates.
2 stars 0 forks source link

AxisUnit class and time quantities #26

Closed marqh closed 7 years ago

marqh commented 7 years ago

The aim of this ticket is to propose a comment to the 19111 editing committee raising this issue for discussion.

In 19111 Figure 13 (p44) the AxisUnit is defined as a union of axisUnitID, temporalCount, temporalMeasure, temporlString. This provides the facility to strongly type the different temporal entities, as integer, float and string respectively. Does this suggest that separate keywords should be defined in 19162? If a single keyword (TIMEQUANTITY) with options is preferred, should this be reflected in 19111 by changing this union?

19111 E.4.1
TIMECRS["Gregorian calendar",
    TDATUM["Gregorian calendar",
        TIMEORIGIN[1875-05-20],CALENDAR[prolepticGregorian]],
    CS[temporal,1],AXIS["time",future],
        TIMEQUANTITY[string,dateTime]
    ]

Example coordinate values
[1979-12-29T00:00:00.0Z, 1979-12-30T00:00:00.0Z]

OR

19111 E.4.1
TIMECRS["Gregorian calendar",
    TDATUM["Gregorian calendar",
        TIMEORIGIN[1875-05-20],CALENDAR[prolepticGregorian]],
    CS[temporal,1],AXIS["time",future],
        TIMESTRING[dateTime]
    ]

Example coordinate values
[1979-12-29T00:00:00.0Z, 1979-12-30T00:00:00.0Z]

19111 E.4.2
TIMECRS["Calendar hours from 1979-12-29",
    TDATUM["1979-12-29",
        TIMEORIGIN[1979-12-29T00:00:00.0Z],CALENDAR[prolepticGregorian]],
    CS[temporal,1],AXIS["time",future],
        TIMEQUANTITY[count,"hour"]
    ]

Example coordinate values
[48, 96, 144]

19111 E.4.2
TIMECRS["Calendar hours from 1979-12-29",
    TDATUM["1979-12-29",
        TIMEORIGIN[1979-12-29T00:00:00.0Z],CALENDAR[prolepticGregorian]],
    CS[temporal,1],AXIS["time",future],
        TIMECOUNT["hour"]
    ]

Example coordinate values
[48, 96, 144]

19111 E.4.3
TIMECRS["Proleptic Gregorian year",
    TDATUM["Proleptic Gregorian year",
        TIMEORIGIN[0000],CALENDAR[prolepticGregorian]],
    CS[temporal,1],AXIS["time (a)",future],
        TIMEQUANTITY[measure,"year"]
    ]

Example coordinate values
[2000.0, 2005.0, 2010.0, 2015.0]

19111 E.4.3
TIMECRS["Proleptic Gregorian year",
    TDATUM["Proleptic Gregorian year",
        TIMEORIGIN[0000],CALENDAR[prolepticGregorian]],
    CS[temporal,1],AXIS["time (a)",future],
        TIMEMEASURE["year"]
    ]

Example coordinate values
[2000.0, 2005.0, 2010.0, 2015.0]

I think I have a slight preference for TIMECOUNT["day"] over TIMEQUANTITY[count,"day"] as it seems to me to provide a little more scope to document the implication of data type on the coordinate values and it seems to map more neatly to the UML in 19111 (see Figure 13 on p44, AxisUnit)

marqh commented 7 years ago

the updates detailed in #24 impact this propsal

If the proposals in #24 are adopted, then the terms TIMECOUNT TIMEMEASURE and TIMESTRING do not map to terms in 19111

This would strongly favour the TIMEQUANTITY approach, with the pseudoUnit defined

This interpretation would mean that the query raised in this ticket is addressed and no change to 19111 is required

jetgeo commented 7 years ago

Closed, after discussion with @RogerLott. Ref #24