Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Jira
serverASF JIRA
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keyATLAS-2246

...

 

In order for the Open Metadata Repository Services (OMRS) to be able to query and distribute metadata from many different types of metadata repositories, it needs a common interface for accessing these metadata repositories.  Most metadata repositories today have an external API already, so OMRS uses the Open Connector Framework (OCF) to create a client-side common interface for metadata repositories.   This interface All OMRS Connectors implement the same API.  This API is called the OMRS Repository Connector API.  

An OMRS OCF Connector is an OCF Connector.  This means it implements the OCF Connector API to provide access to an audit log plus the Connected Asset OMAS API to access metadata about the open metadata repository.   In addition, the OMRS Connector provides access to the Metadata Collection API.  This is shown in figure 1.

 

a java client for accessing an asset.  In the case of the OMRS Connector, the asset being accessed is a metadata repository. Figure 1 shows how the OMRS Repository Connector extends the OCF Connector API with the OMRSMetadataCollectionConnector interface  to add the method to retrieve the metadata collection object.

 

Image AddedImage Removed


Figure 1: OMRS Connector API showing inheritance from extension of the OCF connector API

 

 

The Metadata Collection API MetadataCollection object allows searches, queries and maintenance of the metadata entities and relationship.   It uses returns and consumes POJO style java objects to represent the metadata entities and relationships so that requests to the metadata repository are as efficient as possible without too much chattiness across the network if/when a metadata repository is remote from the OMRS Connector.   Calls to the POJO style objects returned by the Metadata Collection API are local.  Calls to the Metadata Collection API itself typically involve interactions with the metadata repository (or repositories) supporting the metadata collection.

Figure 2 shows illustrates the Metadata Collection API signature.   Each implementation of an OMRS Connector typically provides its own implementation of both the OMRS Connector API, OCF Connector Provider API  and the Metadata Collection API.

 Image Added

Figure 2: The Metadata Collection API

 

 

The POJO style java objects shown on the Metadata Collection API cover:

...

There are five groups of methods on Metadata Collection:

  1. Retrieving information about the metadata repository
  2. Retrieving information about the types supported by the metadata repository
  3. Retrieving information about the metadata instances stored in the metadata repository
  4. Updating the metadata instances stored in the metadata repository.
  5. Repairing the metadata collection when anomalies are detected.

The POJO objects returned for metadata instances are represented as Entities and Relationships.  Entities are the concepts and assets that the metadata represents and the Relationships between them show how they are related.  Entities and Relationship can contain properties.   Entities may have complex structures as properties (called Structs) and they may be classified using a Classification.  Structs and Classification can contain properties and are linked to the Entity.

This is illustrated in figure 3:

Image Added

Figure 3: Structure of metadata instances

The TypeDefs define the properties for Classifications, Entities and Relationships and how they relate to one another.  These are defined in ClassificationDefs, EntityDefs and RelationshipDefs respectively.  Each attribute is described by an AttributeDef.  It is also possible to define enumeration types for properties using EnumDefs and structs (complex types) using StructDefs (although StructDefs are only allowed in AttributeDefs for entities).

 

 

...

 

...

 

 

 

 

 

 

 

...