Chapter 7 Working with Decision Tables : Defining Domain Models

Defining Domain Models
A domain model restricts the values users can enter in decision table cells. For example, instead of typing text for a certain concept property, a user may have to pick a value from a list or work within a predefined range.
When you create the domain model for a property, you define the acceptable values. You can create domain models for concept properties.
You can’t create domain models for properties of contained concepts or referenced concepts. (Containment and reference are relationships between concepts, defined in the BusinessEvents project. See TIBCO BusinessEvents User’s Guide for more details.)
Who Defines Domain Models
Managing domain models is often an administrative task not given to business users, but different enterprises have different needs. Use access control to determine who can perform this task.
Administrators can create the domain model when setting up an RMS project for use by business users who check out a decision project from that RMS project. In this scenario, business users can also have permission to create or modify domain models, or they can be prevented from changing the domain model, depending on the situation.
Business users with permission can create the domain model after checking out an RMS project. It could be the business users who have primary responsibility for creating domain models, because they may be the ones who know what values to allow.
Domain Models for Primitive Data Types
The following kinds of domain models can be created for each data type. All domain model values can have optional descriptions that appear only in the domain model editor:
String  A list of text values.
Boolean  Two values named True or False.
Numeric (integer, long, real)  A single value or a range, which can be inclusive or exclusive. (Note that BusinessEvents rule language uses the term double instead of real):
DateTime  A single date and time value or a date and time range, which can be inclusive or exclusive. A date and time picker enable you to select the date and time.
Creating and Managing Master Domain Model Files
The domain model file in the RMS project is known as the master domain model. To create a domain model file for an RMS project do the following.
1.
2.
Copy the decision project domain model file (DecisionProject.dm) file from the decision project root directory tree to the RMSProject/config directory.
The master domain model is provided with the decision project when a user checks out a project. Users with permission can then define local domain models as desired.
The directory structure is configurable. See RMS Project Directories and Files and Configuring RMS Server Properties for details.
Defining Domain Models
1.
2.
Select a concept property in the project explorer or argument explorer, and select the Domain tab in the properties area. (Entities appear in the argument explorer when you select a virtual rule function in the project explorer panel.)
3.
Click Add.
Depending on the property’s Domain Type, you can create different kinds of domain models for the property. This procedure uses a String property. See Domain Models for Primitive Data Types for information about other data types.
4.
5.
As desired, enter an optional description in the Description column. The description does not appear in the decision table itself.
6.
7.
Click Save.
Using Domain Models
When entering values for a cell that has a domain model, you see a drop-down list. Select a value from the list.
When you select multiple values, an implicit OR is applied, that is, any one of the selected values is accepted.
Below is an example of a domain for a String property:
Below is an example of a domain for a numeric property, allowing you to specify ranges: