### The Object Class Table

The object classes that make up the GDS standard schema are defined in the OCT. The table below contains a partial listing of the OCT (refer to the OSF GDS Administration Guide and Reference for a complete listing of the OCT for the GDS standard schema). Each column in the following table contains information about an object class entry in the schema.

Object Class Table Entries

Object Class |

Acronym | Name | Kind | Super-class | OID | File No. | Mandatory Attributes | Optional Attributes
TOP | Top | Abstract | None | 85.6.0 | -1 | OCL | None
ALI | Alias | Alias | TOP | 85.6.1 | -1 | AON | None
C | Country | Structural | GTP | 85.6.2 | 1 | C | DSC SG CDC CDR
LOC | Locality | Structural | GTP | 85.6.3 | 4 | None | DSC L SPN STA SEA SG CDC CDR
ORG | Organization | Structural | GTP | 85.6.4 | 1 | O | DSC L SPN STA PDO PA PC POB FTN IIN TN TTI TXN X1A PDM DI RA SEA UP BC SG CDC CDR

Note: The object identifiers in the following table stem from the root {joint-iso-ccitt(2) ds(5) objectClass(6)}.

Column 4, Superclass acronyms, provides the class from which an object class inherits its attributes. Using the information in Column 4, it is possible to derive a graphical representation of the inheritance properties of object classes in the DIT as shown in the following figure.

In the figure, the object class Top is the root of the tree, with Alias and GDS-Top as the main branches. Top contains the attribute type object class, which is inherited by all the other object classes.

Do not confuse the information in the OCT with that presented in the SRT. There is no direct relationship between the relative location of branches and leaves in the DIT structure and the inheritance properties of classes with their superclasses and subclasses. For example, when a directory service request is made by a directory user, such as a read operation, the SRT is used by the directory service to indicate its position in the DIT. The directory service uses the information defined in the SRT for tree traversal so that the requested object can be located in the directory. The figure, SRT DIT Structure for the GDS Standard Schema, shows the object class Organization located beneath Country in the DIT.

On the other hand, the OCT defines, among other things, the attributes of an object class along with its inherited attributes from its superclass. The superclass, in turn, inherits the attributes from its superclass, and so on until the root, Top, is reached (from which all classes derive their attributes). The following figure shows the object class Organization as a subclass of GDS-Top. As such, it inherits its attributes from GDS-Top, which in turn inherits from its superclass, Top.

A Partial Representation of the Object Class Table

The OCT also contains the unique object identifier of each class in the DIT. These numbers are defined by various standards authorities and in the X.500 standards documents mentioned previously. The AT also contains the predefined object identifiers for each attribute in the directory. These object identifiers are defined in the header files that are included as part of the GDS API. The following table shows some examples of object identifiers for directory classes as defined in the X.500 standard.

Object Identifiers for Selected Directory Classes

Object Class Type | Object Identifier
Alias | 85.6.1
Application-Entity | 85.6.12
Application-Process | 85.6.11
Country | 85.6.2
Device | 85.6.14
DSA | 85.6.13
Group-of-Names | 85.6.9
Locality | 85.6.3
Organization | 85.6.4
Organizational-Person | 85.6.7
Organizational-Role | 85.6.8
Organizational-Unit | 85.6.5
Person | 85.6.6
Residential-Person | 85.6.10
Top | 85.6.0

Note: The object identifiers in the table below stem from the root {joint-iso-ccitt(2) ds(5) objectClass(6)}.

Another important feature of the OCT is the distinction made between mandatory and optional attributes for each object class. This distinction is based on recommendations from X.500 standards documents. These documents (Recommendations X.520 and X.521) define selected object classes and associated attribute types by using ASN.1 notation. Most object classes have one or more mandatory attributes associated with them for use by implementers who want to comply with the X.500 standards recommendations. In addition, optional attributes are defined.

The following example provides a flavor of ASN.1 notation; it shows how the object class country is described in Recommendation X.520 (The Directory: Selected Object Classes ).

country OBJECT-CLASS

SUBCLASS of top

MUST CONTAIN {

countryName}

MAY CONTAIN {

description,

searchGuide}

::= {objectClass 2}

This ASN.1 definition defines Country as a subclass of superclass Top. The class, Country, must contain the mandatory attribute countryName (or Country-Name as defined in the GDS standard schema) and can contain the optional attributes Description and Search-Guide. In addition, the DCE implementation adds two more attributes, CDS-Cell and CDS-Replica, to incorporate other aspects of the DCE environment that are implementation specific.

Country is assigned the object identifier 2.5.6.2. This number distinguishes it from the other object classes defined by the standard. The Top superclass is designated as 2.5.6.0. The first three numbers, 2.5.6, identify the object class as a member of a discrete set of object classes defined by X.500. The last number in the object identifier distinguishes objects within that discrete set. Alias, a subclass of Top, is assigned the number 2.5.6.1. Country is assigned the number 2.5.6.2, and so on. GDS-Top has no object identifier because it is implementation specific and thus not identified by the standard.

###