Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.

For information on migrating to InterSystems IRIS, see Why Migrate to InterSystems IRIS?

BPL Elements

This reference provides detailed information about each BPL element.


If you want to view or edit the XML for a BPL, edit the BPL using Studio and click on View other code.

  • Common Attributes and Elements – Describes attributes and elements that are present in most BPL elements.
  • <alert> – Send an alert message to a user device during execution of a business process.
  • <assign> – Assign a value to a property in the business process execution context.
  • <branch> – Conditionally cause an immediate change in the flow of execution.
  • <break> – Break out of a loop and exit the loop activity.
  • <call> – Send a request to a business operation, or to another business process.
  • <case> – Perform a set of activities when a condition is matched within a <switch> element.
  • <catch> – Catch a fault produced by a <throw> element.
  • <catchall> – Catch a fault or system error that does not match any <catch>.
  • <code> – Execute lines of custom code.
  • <compensate> – Invoke a <compensationhandler> from <catch> or <catchall>.
  • <compensationhandlers> – Provide compensation handlers, each of which performs a sequence of activities to undo a previous action.
  • <context> – Define general-purpose properties in the business process execution context.
  • <continue> – Jump to the next iteration within a loop, without exiting the loop.
  • <default> – Perform a set of activities when no matching condition can be found within a <switch> element.
  • <delay> – Delay execution of a business process for a specified duration or until a future time.
  • <empty> – Perform no action.
  • <false> – Perform a set of activities when the condition for an <if> element is false.
  • <faulthandlers> – Provide zero or more <catch> and one <catchall> element to catch faults and system errors.
  • <flow> – Perform activities in a non-determinate order.
  • <foreach> – Define a sequence of activities to be executed iteratively.
  • <if> – Evaluate a condition and perform one action if true, another if false.
  • <label> – Provide a destination for a conditional branch operation.
  • <milestone> – Store a message to acknowledge a step achieved by a business process.
  • <parameters> – Specifies the parameters for another BPL element as a set of name-value pairs.
  • <process> – Define a business process.
  • <property> – Define a property within the <context> element for a business process.
  • <reply> – Send a response from a business process before its execution is complete.
  • <request> – Prepare a request within a <call> element.
  • <response> – Handle a response received within a <call> element.
  • <rule> – Refer to an Ensemble business rule class.
  • <sequence> – Perform activities in sequential order.
  • <scope> – Define the error handling mechanisms for a sequence of activities.
  • <sql> – Execute an embedded SQL SELECT statement.
  • <switch> – Evaluate a set of conditions to determine which of several actions to perform.
  • <sync> – Wait for a response from one or more asynchronous requests.
  • <throw> – Throw a specific, named fault.
  • <trace> – Write a message to the foreground Terminal window.
  • <transform> – Transform one object into another using a data transformation.
  • <true> – Perform a set of activities when the condition for an <if> element is true.
  • <until> – Perform activities repeatedly until a condition is true.
  • <while> – Perform activities repeatedly as long as a condition is true.
  • <xpath> – Evaluate XPath expressions on a target XML document.
  • <xslt> – Execute an embedded XSLT transformation.