# Uses of Annotation Interface
org.apache.sis.util.OptionalCandidate

Packages that use OptionalCandidate
Package
Description
org.apache.sis.feature
Defines the structure and content of views of real-world phenomenon.
org.apache.sis.feature.builder
Helper classes for creating `FeatureType` instances.
org.apache.sis.io.wkt
Well Known Text (WKT) parsing and formatting.
org.apache.sis.measure
Units of measurements, values related to measurement (like angles and ranges) and their formatters.
org.apache.sis.metadata.iso.extent
Information about spatial, vertical, and temporal extent.
org.apache.sis.parameter
Descriptions and values of parameters used by a coordinate operation or a process.
org.apache.sis.referencing
Base classes for reference systems used for general positioning.
org.apache.sis.referencing.datum
Relationship of a `CoordinateSystem` (an abstract mathematical entity) to the earth or other system.
org.apache.sis.referencing.factory
Creates Coordinate Reference System (CRS) objects from given properties or authority codes.
org.apache.sis.referencing.factory.sql
Factories for geodetic objects defined in a SQL database, typically the EPSG dataset.
org.apache.sis.referencing.operation.transform
Conversions or transformations of multi-dimensional coordinate tuples.
org.apache.sis.util.iso
Implementations of GeoAPI types from the `org.opengis.util` package.

- ## Uses of OptionalCandidate in org.apache.sis.feature

  Methods in org.apache.sis.feature with annotations of type OptionalCandidate
  Modifier and Type
  Method
  Description
  `static DefaultFeatureType`
  Features.`findCommonParent(Iterable<? extends DefaultFeatureType> types)`
  Finds a feature type common to all given types, or returns `null` if none is found.
  `static GenericName`
  Features.`getValueTypeName(AbstractIdentifiedType property)`
  Returns the name of the type of values that the given property can take.

- ## Uses of OptionalCandidate in org.apache.sis.feature.builder

  Methods in org.apache.sis.feature.builder with annotations of type OptionalCandidate
  Modifier and Type
  Method
  Description
  `PropertyTypeBuilder`
  FeatureTypeBuilder.`getProperty(String name)`
  Returns the builder for the property of the given name.

- ## Uses of OptionalCandidate in org.apache.sis.io.wkt

  Methods in org.apache.sis.io.wkt with annotations of type OptionalCandidate
  Modifier and Type
  Method
  Description
  `Warnings`
  WKTFormat.`getWarnings()`
  If warnings occurred during the last WKT parsing or formatting, returns the warnings.
  `String`
  Transliterator.`toShortAxisName(CoordinateSystem cs, AxisDirection direction, String name)`
  Returns the axis name to format in WKT, or `null` if none.

- ## Uses of OptionalCandidate in org.apache.sis.measure

  Methods in org.apache.sis.measure with annotations of type OptionalCandidate
  Modifier and Type
  Method
  Description
  `static Number[]`
  Units.`coefficients(UnitConverter converter)`
  Returns the coefficients of the given converter expressed as a polynomial equation.
  `static Integer`
  Units.`getEpsgCode(Unit<?> unit, boolean inAxis)`
  Returns the EPSG code of the given units, or `null` if unknown.
  `static Unit<?>`
  Units.`valueOfEPSG(int code)`
  Returns a hard-coded unit from an EPSG code.

- ## Uses of OptionalCandidate in org.apache.sis.metadata.iso.extent

  Methods in org.apache.sis.metadata.iso.extent with annotations of type OptionalCandidate
  Modifier and Type
  Method
  Description
  `static String`
  Extents.`getDescription(Extent extent, Locale locale)`
  Returns the description of the given extent, or `null` if none.
  `static GeographicBoundingBox`
  Extents.`getGeographicBoundingBox(Extent extent)`
  Returns a single geographic bounding box from the specified extent.
  `static GeographicBoundingBox`
  Extents.`getGeographicBoundingBox(Metadata metadata)`
  Returns a single geographic bounding box from the specified metadata.
  `static Range<Date>`
  Extents.`getTimeRange(Extent extent)`
  Returns the union of all time ranges found in the given extent, or `null` if none.
  `static MeasurementRange<Double>`
  Extents.`getVerticalRange(Extent extent)`
  Returns the union of a subset of vertical ranges found in the given extent, or `null` if none.

- ## Uses of OptionalCandidate in org.apache.sis.parameter

  Methods in org.apache.sis.parameter with annotations of type OptionalCandidate
  Modifier and Type
  Method
  Description
  `ParameterDescriptorGroup`
  Parameterized.`getParameterDescriptors()`
  Returns the parameter descriptors for this parameterized object, or `null` if unknown.
  `ParameterValueGroup`
  Parameterized.`getParameterValues()`
  Returns the parameter values for this parameterized object, or `null` if unknown.

- ## Uses of OptionalCandidate in org.apache.sis.referencing

  Methods in org.apache.sis.referencing with annotations of type OptionalCandidate
  Modifier and Type
  Method
  Description
  `static CommonCRS.Temporal`
  CommonCRS.Temporal.`forEpoch(Instant epoch)`
  Returns the enumeration value for the given epoch, or `null` if none.
  `static CoordinateReferenceSystem`
  CRS.`getComponentAt(CoordinateReferenceSystem crs, int lower, int upper)`
  Returns the coordinate reference system in the given range of dimension indices.
  `static Envelope`
  CRS.`getDomainOfValidity(CoordinateReferenceSystem crs)`
  Returns the domain of validity of the specified coordinate reference system, or `null` if unknown.
  `static GeographicBoundingBox`
  CRS.`getGeographicBoundingBox(CoordinateReferenceSystem crs)`
  Returns the valid geographic area for the given coordinate reference system, or `null` if unknown.
  `static GeographicBoundingBox`
  CRS.`getGeographicBoundingBox(CoordinateOperation operation)`
  Returns the valid geographic area for the given coordinate operation, or `null` if unknown.
  `static SingleCRS`
  CRS.`getHorizontalComponent(CoordinateReferenceSystem crs)`
  Returns the first horizontal coordinate reference system found in the given CRS, or `null` if there is none.
  `static Identifier`
  IdentifiedObjects.`getIdentifier(IdentifiedObject object, Citation authority)`
  Returns an identifier for the given object according the given authority.
  `static double`
  CRS.`getLinearAccuracy(CoordinateOperation operation)`
  Returns a positional accuracy estimation in metres for the given operation, or `NaN` if unknown.
  `static String`
  IdentifiedObjects.`getName(IdentifiedObject object, Citation authority)`
  Returns an object name according the given authority.
  `static String`
  IdentifiedObjects.`getSimpleNameOrIdentifier(IdentifiedObject object)`
  Returns the first name, alias or identifier which is a valid Unicode identifier.
  `static TemporalCRS`
  CRS.`getTemporalComponent(CoordinateReferenceSystem crs)`
  Returns the first temporal coordinate reference system found in the given CRS, or `null` if there is none.
  `static VerticalCRS`
  CRS.`getVerticalComponent(CoordinateReferenceSystem crs, boolean allowCreateEllipsoidal)`
  Returns the first vertical coordinate reference system found in the given CRS, or `null` if there is none.
  `static Integer`
  IdentifiedObjects.`lookupEPSG(IdentifiedObject object)`
  Looks up an EPSG code, such as `4326`, of the specified object.
  `static String`
  IdentifiedObjects.`lookupURN(IdentifiedObject object, Citation authority)`
  Looks up a URN, such as `"urn:ogc:def:crs:EPSG:9.1:4326"`, of the specified object.
  `static CoordinateReferenceSystem`
  CRS.`suggestCommonTarget(GeographicBoundingBox regionOfInterest, CoordinateReferenceSystem... sourceCRS)`
  Suggests a coordinate reference system which could be a common target for coordinate operations having the given sources.

- ## Uses of OptionalCandidate in org.apache.sis.referencing.datum

  Methods in org.apache.sis.referencing.datum with annotations of type OptionalCandidate
  Modifier and Type
  Method
  Description
  `Extent`
  BursaWolfParameters.`getDomainOfValidity()`
  Returns the region or timeframe in which a coordinate transformation based on those Bursa-Wolf parameters is valid, or `null` if unspecified.
  `Matrix`
  DefaultGeodeticDatum.`getPositionVectorTransformation(GeodeticDatum targetDatum, Extent areaOfInterest)`
  Returns the position vector transformation (geocentric domain) to the specified datum.
  `GeodeticDatum`
  BursaWolfParameters.`getTargetDatum()`
  Returns the target datum for this set of parameters, or `null` if unknown.

- ## Uses of OptionalCandidate in org.apache.sis.referencing.factory

  Methods in org.apache.sis.referencing.factory with annotations of type OptionalCandidate
  Modifier and Type
  Method
  Description
  `IdentifiedObject`
  IdentifiedObjectFinder.`findSingleton(IdentifiedObject object)`
  Looks up only one object which is approximately equal to the specified object.

- ## Uses of OptionalCandidate in org.apache.sis.referencing.factory.sql

  Methods in org.apache.sis.referencing.factory.sql with annotations of type OptionalCandidate
  Modifier and Type
  Method
  Description
  `String`
  SQLTranslator.`getCatalog()`
  Returns the catalog that contains the EPSG schema.
  `String`
  SQLTranslator.`getSchema()`
  Returns the schema that contains the EPSG tables.

- ## Uses of OptionalCandidate in org.apache.sis.referencing.operation.transform

  Methods in org.apache.sis.referencing.operation.transform with annotations of type OptionalCandidate
  Modifier and Type
  Method
  Description
  `protected ContextualParameters`
  AbstractMathTransform.`getContextualParameters()`
  Returns the parameters for a sequence of normalize → `this` → denormalize transforms (optional operation).
  `static Matrix`
  MathTransforms.`getMatrix(MathTransform transform)`
  If the given transform is linear, returns its coefficients as a matrix.
  `ParameterValueGroup`
  AbstractMathTransform.`getParameterValues()`
  Returns the parameter values for this math transform, or `null` if unknown.

- ## Uses of OptionalCandidate in org.apache.sis.util.iso

  Methods in org.apache.sis.util.iso with annotations of type OptionalCandidate
  Modifier and Type
  Method
  Description
  `static <T extends CodeList<T>>
  T`
  Types.`forCodeName(Class<T> codeType, String name, Function<? super String, ? extends T> constructor)`
  Returns the code of the given type that matches the given name, or optionally returns a new one if none match the name.
  `static <T extends Enum<T>>
  T`
  Types.`forEnumName(Class<T> enumType, String name)`
  Returns the enumeration value of the given type that matches the given name, or `null` if none.
  `static InternationalString`
  Types.`getDescription(Class<?> type)`
  Returns a description for the given class, or `null` if none.
  `static InternationalString`
  Types.`getDescription(CodeList<?> code)`
  Returns the description of the given enumeration or code list value, or `null` if none.
  `static String`
  Types.`getStandardName(Class<?> type)`
  Returns the ISO name for the given class, or `null` if none.
  `static Class<?>`
  Names.`toClass(TypeName type)`
  Returns the Java class associated to the given type name.
  `static InternationalString`
  Types.`toInternationalString(Map<String,?> properties, String prefix)`
  Returns an international string for the values in the given properties map, or `null` if none.