Transaction processing

Microsoft Provisioning Framework (MPF) maintains and manages cross-component provisioning services by processing authorized provisioning requests. A request is an XML document containing data, a single procedure, and contextual information for a namespace that is used to execute a provisioning task. MPF receives XML requests either directly or through a user interface (UI) that generates XML.

In MPF, a transaction executes a series of requests. For example, if a developer wants to provision an online gaming account for a customer, the developer could write a transaction made up of several MPF requests. One request might invoke a procedure to add user information to the enterprise database. Another request might invoke a procedure to add user information to the database for each game that the user pays to play. The transaction might also include a request that invokes a procedure to update the company billing system and charge the user for the service.

Although a request can contain only one procedure, each procedure can, in turn, encapsulate multiple execute calls, including calls to other procedures.

When a request is submitted to MPF, a provisioning engine parses the request and routes it to the namespace containing the procedure required to execute the request. In MPF, the transaction engine is specific to MPF, although it also supports Microsoft Distributed Transaction Coordinator (DTC).

Processing MPF requests

For more information about the support that MPF provides for transaction processing, see Microsoft Provisioning Framework capabilities.