# Interface ReferenceSystem

All Superinterfaces:
  `IdentifiedObject`

All Known Subinterfaces:
  `CompoundCRS, CoordinateReferenceSystem, DerivedCRS, EngineeringCRS, GeneralDerivedCRS, GeocentricCRS, GeodeticCRS, GeographicCRS, ImageCRS, ProjectedCRS, SingleCRS, TemporalCRS, VerticalCRS`

All Known Implementing Classes:
  `AbstractCRS, AbstractReferenceSystem, DefaultCompoundCRS, DefaultDerivedCRS, DefaultEngineeringCRS, DefaultGeocentricCRS, DefaultGeographicCRS, DefaultParametricCRS, DefaultProjectedCRS, DefaultTemporalCRS, DefaultVerticalCRS, GeohashReferenceSystem, MilitaryGridReferenceSystem, ReferencingByIdentifiers`

@UML(identifier="RS_ReferenceSystem", specification=ISO_19115) public interface ReferenceSystem extends IdentifiedObject
Description of a spatial and temporal reference system used by a dataset.

Since:
  1.0
See Also:
  - `CoordinateReferenceSystem`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `DOMAIN_OF_VALIDITY_KEY`
  Key for the `"domainOfValidity"` property to be given to the object factory `createFoo(…)` methods.
  `static final String`
  `SCOPE_KEY`
  Key for the `"scope"` property to be given to the object factory `createFoo(…)` methods.

  ### Fields inherited from interface IdentifiedObject

  `ALIAS_KEY, IDENTIFIERS_KEY, NAME_KEY, REMARKS_KEY`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Extent`
  `getDomainOfValidity()`
  Area or region or timeframe in which this (coordinate) reference system is valid.
  `InternationalString`
  `getScope()`
  Description of domain of usage, or limitations of usage, for which this Reference System object is valid.

  ### Methods inherited from interface IdentifiedObject

  `getAlias, getIdentifiers, getName, getRemarks, toWKT`

- ## Field Details

  - ### DOMAIN_OF_VALIDITY_KEY

    static final String DOMAIN_OF_VALIDITY_KEY
    Key for the `"domainOfValidity"` property to be given to the object factory `createFoo(…)` methods. This is used for setting the value to be returned by `getDomainOfValidity()`.
    Since:
      2.1
    See Also:
      - `getDomainOfValidity()`
      - Constant Field Values

  - ### SCOPE_KEY

    static final String SCOPE_KEY
    Key for the `"scope"` property to be given to the object factory `createFoo(…)` methods. This is used for setting the value to be returned by `getScope()`.
    See Also:
      - `getScope()`
      - Constant Field Values

- ## Method Details

  - ### getDomainOfValidity

    @UML(identifier="domainOfValidity", obligation=OPTIONAL, specification=ISO_19111) Extent getDomainOfValidity()
    Area or region or timeframe in which this (coordinate) reference system is valid.
    Returns:
      The reference system valid domain, or `null` if not available.
    Since:
      2.1

  - ### getScope

    @UML(identifier="SC_CRS.scope", obligation=OPTIONAL, specification=ISO_19111) InternationalString getScope()
    Description of domain of usage, or limitations of usage, for which this Reference System object is valid.
    Returns:
      The domain of usage, or `null` if none.