An ObjectClass Types is used to define the category for an object class
. There are three object class type values:
- STRUCTURAL -- A STRUCTURAL ObjectClasses is used to define the primary type for an entry. Each entry is an instance or one STRUCTURAL class, and it defines the core type of object that the entry represents.
- AUXILIARY -- An auxiliary ObjectClass Types is used to define a characteristic of an LDAP Entry. An entry may have zero or more auxiliary classes. The set of auxiliary classes that an entry may have may be controlled by a governingStructureRule that is associated with the entry's structural class.
- ABSTRACT -- An ABSTRACT ObjectClass Types may not be used directly to create entries but should be subclassed by a structural or AUXILIARY class.
Naming Structural ObjectClass#
All though we could not find this defined in any RFCs. A entry must be substantiated from one Structural ObjectClass. This Naming Structural ObjectClass determines the base Structural ObjectClass and is the lowest structural ObjectClass within the inheritance chain.
The inheritance model used for LDAP ObjectClasses
is very similar to the inheritance model for Java classes. Just like an entry must only exactly one structural object class, a Java class is an instance one superclass. Similarly, while an entry may have multiple auxiliary classes, a Java class may implement multiple interfaces. Finally, it is not possible to instantiate an abstract Java class, just as it is not possible to create an entry containing only an abstract object class.
There might be more information for this subject on one of the following: