Three main reasons justify the deactivation of an Active Directory (AD) schema extension. Each reason involves a certain level of difficulty.
First, you might want to deactivate an extension simply because you no longer need to use the extension. This case is the simplest one because you can simply reactivate the classes and attributes if you want to use the schema extension in the future.
Second, you might want to deactivate a schema extension because it doesn't meet an application's needs and you want to update some of the classes or attributes that the original extension defines. The difficulty of this task depends on the type of updates you need to make because certain restrictions apply to the information you can use to create or update a classSchema or attributeSchema object, as the main article "Deactivating Schema Extensions" explains.
Third, you might want to deactivate a poorly designed schema extension, in which case you'll probably need to recreate some of the classes or attributes that the original extension defines. This situation can be the trickiest of the three because depending on the AD version (i.e., Windows Server 2003 or Windows 2000 Server) and the forest functional level (e.g., a mix of Windows 2003 and Win2K DCs, all Windows 2003 DCs), you might not be able to reuse some information (e.g., Object Identifier—OID, lDAPDisplayName) that was used during the extension's creation. Certain Windows 2003 features, such as the ability to deactivate a schema extension, require all servers within a forest to be in a specific mode. Windows 2003's Behavior Version Management is a mechanism that determines AD's behavior according to a domain's or forest's AD version and functional level.