Guidelines for extending the schema

Regardless of the method you use to extend the schema, see this topic for guidelines.


  1. See whether there is an object class, attribute, or syntax defined in the default schema you can use rather than adding a new one.
  2. Do not define multiple attributes to store the same type of information. Instead, add one attribute, and define the attribute in an auxiliary object class that multiple structural object classes use.
  3. Do not edit existing schema elements. For example, do not remove attributes from, or add attributes to, an existing object class. You can delete a custom object class that is no longer needed as long as you are sure no one is using it.
  4. When possible, create object classes that define attributes as optional rather than mandatory, so the schema is flexible.
  5. After you extend the schema, configure LDAP access to the new schema elements. For example, if you want anonymous LDAP users to access a new attribute, make sure you enable the attribute for anonymous access.

Extending an existing object class

About this task

How you add attributes to an object class in the default schema depends on whether or not the attributes should apply to another object class as well. If the attributes apply to only one object class, add the attributes to a new structural object class and have the new object class inherit from the object class you want to extend. For example, to extend object class A which is part of the default schema, add attributes to a new structural object class, B, and define object class B to inherit from A.

If the attributes will apply to more than one structural object class, add them to a new auxiliary object class and then add the auxiliary object class to each structural object class that will use the attributes.

For example, suppose you want to add the same attributes to object classes A and B, both part of the default schema. Add the attributes to a new auxiliary object class C, then add C to A and B.

Note: To add a new type of entry to the directory, typically you create a new structural object class that inherits from the beginning of the structure.

Registering an object identifier (OID) for you organization

About this task

When you use the IBM® Lotus® Domino® LDAP Schema database to add a new element to the schema, you must specify an OID for the element. To do this, your organization should have a registered OID prefix which is used as the root of all the OIDs you assign to your schema elements. An OID is a unique series of numbers assigned to a schema element. For example, in the Domino® schema, the dominoPerson object class has the following OID assignment:


A registered OID prefix begins with one of the following numbers:

  • 0 if assigned by the International Telecommunication Union (ITU)
  • 1 if assigned by the International Organization for Standardization (ISO)
  • 2 if assigned jointly by the ITU and ISO.

This number is then followed by a series of numbers that uniquely identify an organization.

When you create a schema element, assign it the OID prefix registered for your organization, followed by an additional number that uniquely identifies the element within the schema.

For more information on OID's or to request a prefix for your organization, go to the IANA (Internet Assigned Numbers Authority) Web site.