Prev Next

Invocation

An invocation is a container for the parameter bindings that provide the context for the evaluation of the body of a business knowledge model. There are two common use cases for an Invocation:

  • Bind Input Data to Business Knowledge Model
  • Bind parameters or context entry variables to Business Knowledge Model

An example of each is provided at the end of this page.

Access

Ribbon

Simulate > Decision Analysis > DMN > DMN Expression : select or create a Decision or BusinessKnowledgeModel with Invocation type

Other

Double-click on a DMN Decision or BusinessKnowledgeModel

Toolbar Options

Options

Description

See also

Click on this button to save the configuration to the current Decision or BusinessKnowledgeModel.

Click on this button to edit parameters for the Business Knowledge Model.

Click on this button to synchronize with the invoked Business Knowledge Model. For example, if the Business Knowledge Model changes name, parameters, outputs or types, click on this button to synchronize these changes.

Click on this button to set or change a Business Knowledge Model as an invocation.

Click on this button to open the invoked Business Knowledge Model in the DMN Expression window.

When a Business Knowledge Model is implemented as a Decision table, it could define multiple output clauses; the invocation on this Business Knowledge Model might have to specify which output is requested.

Click on this button to list all the available outputs in a context menu; the currently configured output is checked.

Click on this button to validate the Invocation. Enterprise Architect will perform a series of validations to help you locate errors in the Expression.

DMN Expression Validation

This button is enabled when the Invocation is defined for a BusinessKnowledgeModel.

Select the 'Input Parameter Values for Simulation' tab, complete the fields and click on this button. The test result will be presented on the Decision table, with the runtime values of inputs and outputs displayed and valid rule(s) highlighted.

You can use this functionality to unit test a BusinessKnowledgeModel without knowing the context and later on invoked by a Decision or other BusinessKnowledgeModel.

Menu options are available for this toolbar button. For more information, see the BusinessKnowledgeModel and Test Harness Help topic.

BusinessKnowledgeModel & Test Harness

Example 1 — Bind Input Data to Business Knowledge Model

A full example can be created with a Model Pattern (Ribbon: Simulate > Decision Analysis > DMN > Apply Perspective > DMN Decision > Decision With BKM : Create Pattern(s))

An example of Binding Data input to a DMN BKM using Sparx Systems Enterprise Architect.

In this example, Input Data Applicant Data is typed to Applicant data Definition, which has three components.

Using a Decision Table in a Business Knowledge Model (BKM), using Sparx Systems Enterprise Architect.

The Business Knowledge Model Application risk score model is implemented as a Decision table with three inputs and one output.

The Decision Application risk score is implemented as an Invocation to bind the Input Data's 'leaf' components to the BKM's parameters.

A Decision implemented as an Invocation that binds the Input Data Element to the BKM's parameters.

In order to make the binding easier, Auto-Completion is supported for the binding expression.

The full modeling and simulation instructions are available in the Pattern's documentation.

Example 2 — Bind Context Entry variables to Business Knowledge Model

The full example can be created using a Model Pattern (Access - Ribbon: Simulate > Decision Analysis > DMN > Apply Perspective > DMN Business Knowledge Model > Business Knowledge Model Invocation : Create Pattern).

A DMN diagram Business Knowledge Model diagram (BKM), using Sparx Systems Enterprise Architect.

In this example, the BKM Difference Of Two Squares is implemented as Boxed Context:

  • The variable sum of ab is implemented as an invocation by binding parameters a and b to BKM Addition
  • The variable difference of ab is implemented as an invocation by binding parameters a and b to BKM Subtraction
  • The variable difference of squares is implemented as an invocation by binding local variables sum of ab and difference of ab to BKM Multiplication

An example of using a DMN Boxed Context defined in a Business Knowledge Model (BKM) modeled in Sparx Systems Enterprise Architect.

In order to make the binding easier, auto-completion is supported for the binding expression.

The full modeling and simulation instructions are available in the Pattern's document.

Learn more