- All Known Subinterfaces:
AffineCS
,CartesianCS
,CompoundCRS
,ConcatenatedOperation
,ConicProjection
,Conversion
,CoordinateOperation
,CoordinateReferenceSystem
,CoordinateSystem
,CoordinateSystemAxis
,CylindricalCS
,CylindricalProjection
,Datum
,DatumEnsemble<D>
,DerivedCRS
,DynamicReferenceFrame
,Ellipsoid
,EllipsoidalCS
,EngineeringCRS
,EngineeringDatum
,GeneralDerivedCRS
,GeneralParameterDescriptor
,GeocentricCRS
,GeodeticCRS
,GeodeticDatum
,GeographicCRS
,ImageCRS
,ImageDatum
,LinearCS
,OperationMethod
,ParameterDescriptor<T>
,ParameterDescriptorGroup
,ParametricCRS
,ParametricCS
,ParametricDatum
,PassThroughOperation
,PlanarProjection
,PointMotionOperation
,PolarCS
,PrimeMeridian
,ProjectedCRS
,Projection
,ReferenceSystem
,SingleCRS
,SingleOperation
,SphericalCS
,TemporalCRS
,TemporalDatum
,TimeCS
,Transformation
,UserDefinedCS
,VerticalCRS
,VerticalCS
,VerticalDatum
@Classifier(ABSTRACT)
@UML(identifier="IdentifiedObject",
specification=ISO_19111)
public interface IdentifiedObject
Identification and remarks information for a reference system or CRS-related object.
Identified objects contain the following properties:
- A name (e.g.
North American Datum of 1983
). - Alternative names or aliases (e.g.
NAD83
abbreviation). - Identifiers allocated by authorities
(e.g. a register of geodetic codes and parameters might give the NAD83 datum a unique code of
6269
). - Remarks about this object, including data source information.
IdentifiedObject
sub-types are:
- Geodetic Reference Frame (e.g. World Geodetic System 1984),
- Operation Method (e.g. Mercator (variant A)),
- Coordinate Reference System (e.g. WGS 84 / World Mercator).
CRSAuthorityFactory
is used to create an object,
the authority and authority code values shall be set to the authority name of the factory object,
and the authority code supplied by the client, respectively.
The other values may or may not be set.
If the authority is EPSG, the implementer may consider using the corresponding metadata values in the EPSG tables.- Since:
- 2.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
Key for the"alias"
property to be given to theObjectFactory.createFoo(Map, ...)
methods.static final String
Key for the"domains"
property to be given to theObjectFactory.createFoo(Map, ...)
methods.static final String
Key for the"identifiers"
property to be given to theObjectFactory.createFoo(Map, ...)
methods.static final String
Key for the"name"
property to be given to theObjectFactory.createFoo(Map, ...)
methods.static final String
Key for the"remarks"
property to be given to theObjectFactory.createFoo(Map, ...)
methods. -
Method Summary
Modifier and TypeMethodDescriptiondefault Collection
<GenericName> getAlias()
Returns alternative names by which this object is identified.default Collection
<ObjectDomain> Returns the usage of this CRS-related object.default Set
<ReferenceIdentifier> Returns an identifier which references elsewhere the object's defining information.getName()
Returns the primary name by which this object is identified.default InternationalString
Returns comments on or information about this object, including data source information.default String
toWKT()
Formats a Well-Known Text (WKT) for this object.
-
Field Details
-
NAME_KEY
-
ALIAS_KEY
Key for the"alias"
property to be given to theObjectFactory.createFoo(Map, ...)
methods. This is used for setting the value to be returned bygetAlias()
.- See Also:
-
IDENTIFIERS_KEY
Key for the"identifiers"
property to be given to theObjectFactory.createFoo(Map, ...)
methods. This is used for setting the value to be returned bygetIdentifiers()
.- See Also:
-
DOMAINS_KEY
Key for the"domains"
property to be given to theObjectFactory.createFoo(Map, ...)
methods. This is used for setting the value to be returned bygetDomains()
.- Since:
- 3.1
- See Also:
-
REMARKS_KEY
Key for the"remarks"
property to be given to theObjectFactory.createFoo(Map, ...)
methods. This is used for setting the value to be returned bygetRemarks()
.- See Also:
-
-
Method Details
-
getName
@UML(identifier="name", obligation=MANDATORY, specification=ISO_19111) ReferenceIdentifier getName()Returns the primary name by which this object is identified.Upcoming API change — generalization
As of ISO 19115:2014,ReferenceIdentifier
has been merged with itsIdentifier
parent interface. Consequently this method return type will be changed toIdentifier
in GeoAPI 4.0.- Returns:
- the primary name.
-
getAlias
@UML(identifier="alias", obligation=OPTIONAL, specification=ISO_19111) default Collection<GenericName> getAlias()Returns alternative names by which this object is identified.- Returns:
- alternative names and abbreviations, or an empty collection if there is none.
-
getIdentifiers
@UML(identifier="identifier", obligation=OPTIONAL, specification=ISO_19111) default Set<ReferenceIdentifier> getIdentifiers()Returns an identifier which references elsewhere the object's defining information. Alternatively, an identifier by which this object can be referenced.Upcoming API change — generalization
As of ISO 19115:2014,ReferenceIdentifier
has been merged with itsIdentifier
parent interface. Consequently the element type will be changed toIdentifier
in GeoAPI 4.0.- Returns:
- this object identifiers, or an empty collection if there is none.
-
getDomains
@UML(identifier="ObjectUsage.domain", obligation=OPTIONAL, specification=ISO_19111) default Collection<ObjectDomain> getDomains()Returns the usage of this CRS-related object. The domain includes a scope (description of the primary purpose of this object) together with a domain of validity (spatial and temporal extent in which the object can be used). Those properties are paired together for facilitating descriptions of usage such as "Purpose 1 in area A, purpose 2 in area B".- Returns:
- scopes and domains of validity of this object.
- Since:
- 3.1
- A need to specify a scope can also occur in other subtypes.
For example a Minkowski
org.opengis.referencing.cs.CoordinateSystem
may want to specify "For objects moving at relativistic speed" scope. - The
ObjectUsage
type name is at odd with the semantics of subclassing as an “is type of” hierarchy. Qualifying a CRS as “a type of object usage” is restrictive. Instead, CRS contains a description of object usage. Omitting theObjectUsage
subtype avoids this semantic oddity.
Departure from OGC/ISO standard by generalization
ISO 19111 defines this property in anObjectUsage
subtype so that only theorg.opengis.referencing.datum.Datum
,org.opengis.referencing.crs.CoordinateReferenceSystem
andorg.opengis.referencing.operation.CoordinateOperation
subtypes inherit this property. GeoAPI relaxes this restriction for two reasons: -
getRemarks
@UML(identifier="remarks", obligation=OPTIONAL, specification=ISO_19111) default InternationalString getRemarks()Returns comments on or information about this object, including data source information.Upcoming API change — integration
The return type will becomeOptional<InternationalString>
in GeoAPI 4 for consistency with other optional properties in the referencing packages.- Returns:
- the remarks, or
null
if none.
-
toWKT
Formats a Well-Known Text (WKT) for this object. Well-Known Texts (WKT) may come in two formats:- The current standard, WKT 2, is defined by ISO 19162.
- The legacy format, WKT 1, was defined by OGC 01-009.
- Returns:
- the Well-Known Text (WKT) for this object.
- Throws:
UnsupportedOperationException
- if this object cannot be formatted as WKT.- See Also:
Extension to OGC/ISO standard
This method is not part of the OGC specification. It has been added in order to provide the converse of theCRSFactory.createFromWKT(String)
method, which is defined in OGC 01-009.
-