HP-UX Directory Server 8.1 deployment guide

3.4.1 When to extend the schema
While the object classes and attributes supplied with the Directory Server should meet most
common corporate needs, a given object class may not store specialized information about an
organization. Also, the schema may need extended to support the object classes and attributes
required by an LDAP-enabled application's unique data needs.
3.4.2 Getting and assigning object identifiers
Each LDAP object class or attribute must be assigned a unique name and object identifier (OID).
When a schema is defined, the elements require a base OID which is unique to your organization.
One OID is enough to meet all schema needs. Simply add another level of hierarchy to create
new branches for attributes and object classes. Getting and assigning OIDs in schema involves
the following steps:
1. Obtain an OID from the Internet Assigned Numbers Authority (IANA) or a national
organization.
In some countries, corporations already have OIDs assigned to them. If your organization
does not already have an OID, one can be obtained from IANA. For more information, go
to the IANA website at http://www.iana.org/cgi-bin/enterprise.pl.
2. Create an OID registry to track OID assignments.
An OID registry is a list of the OIDs and descriptions of the OIDs used in the directory
schema. This ensures that no OID is ever used for more than one purpose. Then publish the
OID registry with the schema.
3. Create branches in the OID tree to accommodate schema elements.
Create at least two branches under the OID branch or the directory schema, using OID.1
for attributes and OID.2 for object classes. To define custom matching rules or controls,
add new branches as needed (OID.3, for example).
3.4.3 Naming attributes and object classes
When creating names for new attributes and object classes, make the names as meaningful as
possible. This makes the schema easier to use for Directory Server administrators.
Avoid naming collisions between schema elements and existing schema elements by including
a unique prefix on all schema elements. For example, Example Corp. might add the prefix
example before each of their custom schema elements. They might add a special object class
called examplePerson to identify Example Corp. employees in their directory.
3.4.4 Strategies for defining new object classes
There are two ways to create new object classes:
Create many new object classes, one for each object class structure to which to add an
attribute.
Create a single object class that supports all the custom attributes created for the directory.
This kind of object class is created by defining it as an auxiliary object class.
It may be easiest to mix the two methods.
32 Designing the directory schema