space
Previous Page | Next Page

SAS Namespace Submodels

Relational Submodel

The Relational submodel contains the metadata types that are used to describe relational tables and other objects used in a relational database system, such as indexes, columns, keys, and schemas.


Metadata Types

The following metadata types, relevant to the Relational submodel, are classified as Container, Table, Column, Key, and Other. Click on a metadata type to display its attributes and associations.

Column

ColumnHierarchy

ColumnRange

DatabaseCatalog

DatabaseSchema

DataSourceName

DataTable

ExternalTable

ForeignKey

Index

Key

KeyAssociation

LogicalColumn

PhysicalTable

QueryTable

RelationalTable

SASPassword

SecuredTable

TableCollection

UniqueKey

WorkTable


Container Metadata Types

These metadata types are subtyped from the TablePackage metadata type in the Resource Submodel. DatabaseCatalog and DatabaseSchema are the containers in the Relational submodel.


Table Metadata Types

DataTable is the supertype of the table metadata types and has an association to the Column metadata type that is inherited by all of the table metadata types. The RelationalTable metadata type is an abstract type for table metadata types that represent a table that is described in a data model. Use the PhysicalTable metadata type to represent a table that has a fixed physical location, such as a particular database schema. The QueryTable metadata type represents a transient relational table that is the result set from execution of an SQL statement. The WorkTable metadata type represents a table in the SAS Work library; it is transient and exists only for the lifetime of a SAS session.

The ExternalTable metadata type represents tables that contain information similar to a relational table, but do not reside in a DBMS. Excel data or comma-separated lists are represented using this metadata type.

The TableCollection metadata type represents a set of relational tables which have the same characteristics and which will all be acted upon in the same manner for any transformation or query.

The SecuredTable metadata type is never instantiated or referenced by an application. It represents a SAS data set that was created in a metadata-bound library or existed in the metadata-bound library before the library was bound to metadata and was later bound. A metadata-bound library is a physical library that was bound to metadata by using the AUTHLIB procedure. When a SAS data set is bound to metadata, the SAS system will not access the SAS data set without first establishing an authenticated identity and connection to the SAS Metadata Server, and obtaining the calling identity's data permissions for this object. These data permissions then determine what actions the SAS system will allow that identity to perform on the physical data. SecuredTable objects should not be created or manipulated by any code other than the AUTHLIB procedure or the SAS I/O subsystem. The physical data will not be accessible if an existing SecuredTable object is modified by other means.

A SAS data set that is represented by a SecuredTable object is not available to metadata clients unless it is also represented by a regular table object in the SAS Metadata Repository. When both a SecuredTable object and a regular table object exist, the authorizations defined on the SecuredTable object are enforced before any authorizations defined on the regular table object. An identity must be granted permission to both objects in order to access data from a metadata client. For more information, see SAS Guide to Metadata-Bound Libraries.


Column Metadata Types

LogicalColumn is the supertype used to describe column-like objects. It is not a part of a relational table. Column is the metadata type used to describe columns in a relational table. The ColumnRange metadata type represents a set of columns that have the same characteristics and that will all be acted upon in the same manner for a transformation or query. The ColumnHierarchy metadata type represents a list of ordered columns.


Key Metadata Types

Key is the supertype for the UniqueKey metadata type, which represents unique and primary keys, and the ForeignKey metadata type, which represents foreign keys. The KeyAssociation metadata type is used to associate columns used in a foreign key with columns in the unique key.


Other Metadata Types

The Index metadata type is used to represent an index associated with a table, and the SASPassword metadata type represents the SAS password that is used for an encrypted table.


Usage

PhysicalTable objects should be associated with a data package, for example, a DatabaseSchema or SASLibrary. The schema or library is associated to the component where the physical data resides. In addition, a SASLibrary might be associated to a Directory or set of Directory metadata objects which contain the file system path. A table has a set of columns represented by the Column metadata type.

space
Previous Page | Next Page | Top of Page