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 Range


















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 used to represent a table that does not have a physical representation. Use the RelationalTable metadata type to 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.

Other table metadata types represent tables that do not have a fixed location. 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 tables which have the same characteristics and which will all be acted upon in the same manner for any transformation or query.

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 range of columns that have the same characteristics and that will all be acted upon in the same manner for a transformation or query.

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.


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.

Previous Page | Next Page | Top of Page