Designer > Planning Your BPEL Process > Creating an Executable vs. an Abstract Process
  

Creating an Executable vs. an Abstract Process

In Process Developer, you can build two kinds of business processes:
An abstract process lets you share information with your partners without exposing how you intend to use data from your service. It gives your partners a way to understand how to create their WSDL files to work in your process and to tell them what information you plan to send them when the process runs. An abstract process outlines the type of data to be exchanged, as well as activities, time limits, error handling, and other meaningful pieces of information for the process.
You cannot simulate, deploy, remote debug, or execute an abstract process.
You cannot simulate, deploy, or execute an abstract process.
See also Creating an Abstract Process and Tips for Working with Abstract Processes.

Creating an Abstract Process

To create a process that is not immediately intended for simulation, remote debugging, or deployment, you can define the process as abstract.
To create a process that is not immediately intended for simulation or deployment, you can define the process as abstract..
To create an abstract process:
  1. 1. Select File > New > BPEL Process.
  2. 2. Select your project folder, and in the File name field, type in a name for your BPEL file. The .bpel extension is automatically added.
  3. 3. Select Advanced to view properties that you can set for this process.
  4. 4. Select Create as Abstract Process.
  5. 5. Click Finish.
You can make an executable process into an abstract one, and vice versa, by changing the process's Abstract Process property from No to Yes.
See also Tips for Working with Abstract Processes.

Tips for Working with Abstract Processes

As described in Creating an Executable vs. an Abstract Process, you can create a process not immediately intended for execution. When working with abstract processes, consider the following tips:
WS-BPEL XML Fragment Examples
Example 1 - Variable Declaration
<variable name="commonRequestVar" element="##opaque" />
Example 2 - Use of Invoke Activity
<invoke partnerLink="homeInfoVerifier"
operation="##opaque" inputVariable="##opaque"
ext:uniqueUserFriendlyName="request verification" />
Example 3 - Use of Opaque Activity
<opaqueActivity template:createInstance="yes">
<documentation>...</documentation>
</opaqueActivity>