|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Interface for progamatic access to the Metadata content. This API is used by Catalog to query against CatalogEntry Metadata.
Conceptually a Metadata is comprised of a series of elements. These elements are described by an associated EntityType & Element schema information.
In the best of all possible worlds the EntityType is a member of a well known specification such as ISO19115 (Metadata for spatial data), or ISO19119 (Metadata for Services). GeoAPI kindly provides these abstractions as a series of interfaces, which we are in the process of implementing.The Metadata interface is similar in use to that of the Feature, it has the same relationship with EntityType that Feature has with FeatureType. By extention Element is similar to AttributeType.
Aside: Many classes that implement Metadata follow Java Bean property conventions to allow for element access. This is not a requirement.
Internationalization: Accounting for internationlization is an interesting problem with metadata.
This interface is based on the discussion in the Abstract Catalog specification:
4.6 Metadata dataset
Metadta describing a specific dataset [ISO 19101]
4.7 Metadata entity
Group of metadata elements and other metadata entities describing the same
aspect of data.
NOTE 1 A metadata entity may contain one or more metadata entities
NOTE 2 A metadata is equivalent to a class in UML terminology [ISO 19101]
4.8 Metadata schema
Conceptual schema describing metadata
NOTE ISO 19115 describes a standard for a metadata schema [ISO 19101]
Nested Class Summary | |
static interface |
MetadataEntity.Element
Metadata element schema description (name, class, nillable). |
static interface |
MetadataEntity.EntityType
Metadata schema description - the "type" of Metadata. |
Method Summary | |
java.util.List |
elements()
Access to the values associated with metadata elements. |
java.lang.Object |
getElement(MetadataEntity.Element element)
Gets the value of the provided Element. |
java.lang.Object |
getElement(java.lang.String xPath)
Access to Metadata element values specified by the xPath expression. |
MetadataEntity.EntityType |
getEntityType()
Returns the entity type that describes the schema of this Metadata. |
Method Detail |
public java.util.List elements()
MetadataEntity.EntityType
schema information.
public java.lang.Object getElement(java.lang.String xPath)
To be clear xPath expression can be used to:
There is no way at this time to tell the difference between a xPath expression that matches multiple elements, and a xPath expression that matches a single element that happens to be a List. Similarly there is no way to tell if a element had the value null, or if the element did not exist at all. Both these questions may answered by working through the EntityType schema information.
xPath
- XPath representation of element location.
public java.lang.Object getElement(MetadataEntity.Element element)
element
- Element that indicates the value the caller wishes to obtain.
public MetadataEntity.EntityType getEntityType()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |