Methods for extending the schema
Extending the schema refers to adding elements to the schema, usually object classes and attributes. The default schema comes with many object classes and attributes that are ready to be used for entries.
Before you extend the schema, see if there are existing elements in the default schema that you might use instead of extending the schema. For example, if you need an additional attribute for the dominoPerson object class, evaluate if you can use an attribute already defined for dominoPerson.
If the default schema does not contain the attributes you need, add custom elements.
There are two methods available for extending the schema: using the Domino® LDAP Schema database (SCHEMA.NSF) or using the Domino Directory to add forms and fields.
Schema database
You can use the Domino LDAP Schema database (SCHEMA.NSF) to extend the schema. The Schema database:
- Provides an easy-to-use interface for extending the schema
- Has built-in error checking that ensures valid schema elements
- Supports the creation of draft schema elements, which you can consider and modify before approving them as part of the schema
- Simplifies the creation of object class hierarchies
- Allows you to assign object identifiers (OIDs) associated with your organization to the elements you add
- Allows you to define LDAP characteristics for attributes, such as matching rules, and to define any standard LDAP syntax for an attribute.
An object class that you add to the schema using the Schema database does not map to a form in the Domino Directory. Therefore, to add entries defined by these schema elements to the directory, administrators must use LDAP operations, and the entries are accessible only via LDAP, and are not visible to Notes® and Web users.
Domino Directory
You can extend the schema by adding forms, subforms, and fields to the Domino Directory. This method allows Notes and Web users to create and view entries that use the new schema elements as documents, while also enabling LDAP user access to the entries. This method is more time consuming than using the Schema database, and must be done carefully to avoid mistakes in schema definition.