# Package org.opengis.util

package org.opengis.util
A set of base types from ISO 19103 which cannot be mapped directly from Java, plus utilities.

### Names and Namespaces

The job of a "name" in the context of ISO 19103 is to associate that name with an `Object`. Examples given are objects: which form namespaces for their attributes, and Schema: which form namespaces for their components. A straightforward and natural use of the namespace structure defined in 19103 is the translation of given names into specific storage formats. XML has different naming rules than shapefiles, and both are different than NetCDF. This common framework can easily be harnessed to impose constraints specific to a particular application without requiring that a separate implementation of namespaces be provided for each format.

### Records and Schemas

Records and Schemas are similar to a `struct` in C/C++, a table in SQL, a `RECORD` in Pascal, or an attribute-only class in Java if it were stripped of all notions of inheritance. They are organized into named collections called Schemas. Both records and schemas behave as dictionaries for their members and are similar to "packages" in Java.

Since:
  1.0

- Class
  Description
  CodeList<E extends CodeList<E>>
  Base class for all code lists.
  CodeList.Filter
  Used by `CodeList​.valueOf(Class, Filter)` to select codes matching an arbitrary criterion.
  Factory
  Base interface for all factories.
  FactoryException
  Thrown when a factory cannot create an instance of the requested object.
  GenericName
  A sequence of identifiers rooted within the context of a namespace.
  InternationalString
  A string that has been internationalized into several locales.
  LocalName
  Identifier within a name space for a local object.
  MemberName
  The name to identify a member of a record.
  NameFactory
  Factory for generic names and international strings.
  NameSpace
  A domain in which names given by character strings are defined.
  NoSuchIdentifierException
  Thrown when an identifier provided to a factory method cannot be found.
  Record
  A list of logically related elements as (name, value) pairs in a dictionary.
  RecordSchema
  A collection of record types.
  RecordType
  The type definition of a record.
  ScopedName
  A composite of a local name (as head) for locating another name space, and a generic name (as tail) valid in that name space.
  Type
  The type definition.
  TypeName
  The name of an attribute type.