Microsoft® Provisioning Framework (MPF) uses namespaces to implement the functionality required to maintain and manage provisioning services. Each namespace consists of one or more XML procedures for invoking requested actions.

One purpose of namespaces is to implement the functionality of an underlying provider. Namespaces that perform this task are called provider namespaces. A provider is a Component Object Model (COM) object consisting of one or more procedures that provision a resource or a distinct set of services, such as Active Directory®, Microsoft SQL Server, or Resource Manager. Each provider namespace consists of the procedures required to implement the functionality of its provider.

A namespace can also invoke functionality that simply calls one or more namespaces, including provider namespaces. When requests are submitted to MPF, namespaces can call lower-level procedures in other namespaces to execute the requested provisioning tasks. For example, a CreateUser procedure of the extended Active Directory namespace can call a CreateObject procedure of the Active Directory Provider namespace to complete a provisioning request.

A namespace can be a regular namespace that can be modified as appropriate. Or it can be a read-only namespace that provides critical functionality and cannot be deleted or modified.

This section covers the standard providers and two namespace templates that are shipped with MPF:

For more information about namespaces and procedures, see Procedures and Administering namespaces and procedures.