Package org.apache.sis.metadata.sql


package org.apache.sis.metadata.sql
An implementation of Metadata interfaces fetching the data from an SQL database. Each metadata class is mapped to a table, and each metadata property is mapped to a column in the table corresponding to the class. Tables and columns are created only when first needed.

This package is not a replacement for more sophisticated metadata applications. This package provides only a direct mapping from metadata interfaces and methods to database tables and columns with limited capability. This is suitable only for applications wanting a simple metadata schema. The restrictions are:

  • Interfaces and methods must have UML annotations.
  • Collections are not currently supported (only the first element is stored).
  • InternationalString are stored only for the default locale.
  • Cyclic graph (A references B which reference A) are not supported, unless foreigner key constraints are manually disabled for the columns which contain the cyclic references.
If the database supports table inheritance (like PostgreSQL), then this package will leverage that feature for the storage of metadata that are sub-interface of other metadata (for example GeographicDescription which extends GeographicExtent).
Since:
0.8
Version:
1.2
See Also:
  • Class
    Description
    The result of a query for metadata attributes.
    The key for an entry in the MetadataSource cache.
    The handler for metadata proxy that implement (indirectly) metadata interfaces like Metadata, Citation, etc.
    Checks the existence of identifiers (usually primary keys) in a set of tables.
    Executes the installation scripts for the "metadata" schema in the "SpatialMetadata" database.
    Information about the last used metadata type.
    A fallback providing hard-coded values of metadata entities.
    Interface for metadata that are implemented by a proxy class.
    A connection to a metadata database in read-only mode.
    Thrown when a metadata access failed.
    A connection to a metadata database with write capabilities.
    Information about the source and the target of a foreigner key.
    Utility methods for handling the inheritance between tables.