Names and Namespaces
The job of a "name" in the context of ISO 19103 is to associate that name
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,
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.
ClassDescriptionBase class for all code lists.Used by
CodeList.valueOf(Class, Filter)to select codes matching an arbitrary criterion.Base interface for all factories.Thrown when a factory can't create an instance of the requested object.A sequence of identifiers rooted within the context of a namespace.Identifier within a name space for a local object.The name to identify a member of a record.Factory for generic names and international strings.A domain in which names given by character strings are defined.Thrown when an identifier provided to a factory method can not be found.A list of logically related elements as (name, value) pairs in a dictionary.A collection of record types.The type definition of a record.A composite of a local name (as head) for locating another name space, and a generic name (as tail) valid in that name space.The type definition.The name of an attribute type.