Metadata required to reference coordinates.
A coordinate reference system (CRS) is mandatory.
If the CRS is dynamic, then a coordinate epoch is also mandatory.
Whether the CRS is dynamic is determined through the CRS's reference frame definition.
- Since:
- 3.1
-
Method Summary
Modifier and TypeMethodDescriptionDate at which coordinate tuples referenced to a dynamic CRS are valid.The coordinate reference system (CRS) in which the coordinate tuples are given.
-
Method Details
-
getCoordinateReferenceSystem
@UML(identifier="crs", obligation=MANDATORY, specification=ISO_19111) CoordinateReferenceSystem getCoordinateReferenceSystem()The coordinate reference system (CRS) in which the coordinate tuples are given.- Returns:
- the coordinate reference system (CRS) of coordinate tuples.
Convenience extension to OGC/ISO standard
The ISO specification defines two conditional attributes: an identifier (crsID
) or an association to a CRS object (crs
), with the requirement that at least one of them shall be supplied. GeoAPI retains only the latter for client applications ease of use, therefor making this attribute mandatory. Implementers shall resolve identifiers, for example usingorg.opengis.referencing.crs.CRSAuthorityFactory
. -
getCoordinateEpoch
@UML(identifier="coordinateEpoch", obligation=CONDITIONAL, specification=ISO_19111) default Optional<Temporal> getCoordinateEpoch()Date at which coordinate tuples referenced to a dynamic CRS are valid. It should be an object from thejava.time
package such asInstant
. This attribute is required if the CRS is dynamic.Temporal object type
The type of the returned object depends on the epoch accuracy and the calendar in use. For coordinates on Earth, the temporal type should beYear
if the epoch is merely a year,YearMonth
orLocalDate
if a better precision is available, up toOffsetDateTime
orInstant
for maximal precision. For coordinates on another planet, the time measurement may use a non-Gregorian calendar. In the latter case, the type of the returned temporal object is currently implementation dependent.- Returns:
- epoch at which coordinate tuples are valid.
- See Also:
Departure from OGC/ISO standard for closer integration with the Java environment
The ISO specification uses a decimal year in the Gregorian calendar. For example, 2017-03-25 in the Gregorian calendar is epoch 2017.23. GeoAPI delegates to the Java time package instead.
-