space
Previous Page | Next Page

Using the SAS Metadata Model

Understanding Metadata Types

A metadata type is a template that models the metadata for an application element. For example, the RepositoryBase metadata type models the information kept about a repository, the Person metadata type models the information kept about a Person, and the Column metadata type models the information kept about a SAS table column.

The SAS namespace, which describes application elements, defines approximately 160 metadata types. The REPOS namespace defines only two metadata types.

Every metadata type in the SAS Metadata Model is defined by two sets of properties:

Note: Throughout SAS Open Metadata Architecture documentation, the term "property" refers to both a metadata type's attributes and associations.

The SAS Metadata Model is a hierarchical model. Every metadata type has a set of inherited and unique properties.

The Repository metadata type and the Root metadata type are abstract metadata types. An abstract metadata type is a supertype that defines shared properties that are extended by other metadata types. The extended types are subtypes of the abstract type. An abstract metadata type can be specified in queries to list instances of its subtypes when appropriate flags are set in metadata methods. But, the abstract type is never itself instantiated in a SAS Metadata Repository. Instead, abstract metadata types define properties for the basic management of their subtypes. The Repository metadata type defines the basic attributes and associations that manage metadata repositories. The Root metadata type defines attributes and associations that manage metadata objects describing application elements.

All SAS namespace metadata types inherit properties from one of two new abstract metadata types: PrimaryType or SecondaryType. These types are described in Understanding the PrimaryType and SecondaryType Abstract Types.

Many metadata types inherit properties from functional supertypes. The main functional supertypes include AbstractTransformation, AccessControl, Classifier, DeployedDataPackage, Feature, Identity, ITSubscriber, SoftwareComponent, AbstractExtension, Key, LocalizedType, and QueryClause. For a textual representation of the type hierarchy, see Hierarchical Listing of SAS Namespace Types. Notice how the SAS Metadata Model uses subtyping to extend the functionality of object classes. Many of the subtypes have subtypes of their own.

The SAS namespace metadata types represent the basic components that define all SAS application entities. The metadata types describe the components at a very basic level. Metadata programmers should use the metadata types in combination to describe the application data and entities used by an application. Combining metadata types that describe an entity creates a logical metadata definition. In this documentation, the phrase "logical metadata definition" refers to the collection of SAS Metadata Model metadata types that describe an entity in an application.

space
Previous Page | Next Page | Top of Page