Platform SDK: Active Directory, ADSI, and Directory Services |
In addition to the prerequisites, the following practices are recommended for schema extension programs:
For attributes, query for cn, attributeID, governsID, lDAPDisplayName, and schemaIDGUID to ensure they are not already used. If you are adding a set of linked attributes (one forward link, one back link), make sure that the linkIDs are not already used. Note that you must query for governsID as well because the object identifier (OID) must be unique among attributes and classes.
For classes, query for cn, governsId, attributeID, lDAPDisplayName, and schemaIDGUID to ensure they are not already used. Note that you must query for attributeID as well because the OID must be unique among classes and attributes.
To check for naming collisions, see Example Code for Detecting Schema Naming Collisions.
If attributes or classes exist that conflict with your new attributes or classes, your program should not apply your schema changes.
To update the schema cache, see Example Code for Updating the Schema Cache.