Getting Started PDF Print E-mail

OpenLexicon is a Business Rules Management Application and Business Rules Engine released as a single download. Lexicon allows you to define metadata attributes, then combine them into Business Objects. It also allows you to define Business Rules that either validate or transform your data. Lexicon also provides a form of process control that can closely interact with the database natively – Lexicon is one of the few Open Source rules engines to be immediately compatible with your Oracle or MySQL database without requiring any authorship of customized code.

Lexicon is composed of two main components: Lexicon Wizard, which provides a Graphical User Interface where users create, edit, and maintain their metadata, and the Lexicon Rules Engine, which processes metadata against business data.

This Quick Start Tutorial will show you some of the basic features of Lexicon to help you evaluate the tool against your needs and get you started using Lexicon as quickly as possible. More advanced features are demonstrated in the full-length tutorial, which is available as a download and comes complete with reference data scripts, input file XML descriptors, and input data files.

Quick Start Overview

This Quick Start will guide you through the process of creating several data attributes, combining them into a business object, developing some simple business rules, and combining those rules into a single rules list to execute against test data. The goal of the Quick Start is to assign default values to several data attributes, perform a simple calculation, and then perform a conditional assignment to indicate whether one data attribute is greater than the other.

Before Starting

The first thing to do is make sure you have your Lexicon environment setup properly. You will need to have created your metadata schema, and setup a web server with a deployed OpenLexicon WAR file. You will also need to create property files for a Lexicon project and database. Directions for doing this can be found in the primary Lexicon tutorial if you encounter difficulty.

At this point it will be assumed that you have a working and empty project area and have successfully tested your database connection from the Wizard. If you need further assistance and the primary Lexicon tutorial does not address your needs, please email us at This email address is being protected from spam bots, you need Javascript enabled to view it This email address is being protected from spam bots, you need Javascript enabled to view it  and we will help you as quickly as possible.

Defining Data Attributes

We will need to define four data attributes for this tutorial. Parameters are created by clicking on the “Parameters” tab on the Navigation bar towards the top of the screen, then on the “Create Parameter” tab on the Action bar on the left hand side of the screen. Each parameter needs at minimum a name, prompt, description, and data type attribute, which is all we need for this tutorial. Save each parameter once you’ve entered the specified data.

Parameter 1

Name: numericValue1

Prompt/Description: A numeric value, which will be used in a simple mathematical calculation.

Data Type: Integer

Parameter 2

Name: numericValue2

Prompt/Description: A numeric value, which will be used in a simple mathematical calculation.

Data Type: Integer

Parameter 3

Name: numericValue3

Prompt/Description: A numeric value, which will be assigned the result of the simple mathematical calculation numericValue1 * numericValue2

Data Type: Integer

Parameter 4

Name: comparisonResult

Prompt/Description: A String value which will be assigned the results of a comparison between numericValue1 and numericValue2

Data Type: String

You should now have four parameters.

Creating a Business Object

Now that our parameters have been created, it is time to combine them into a single business object. To create a new business object, click on the “Business Objects” tab in the Navigation bar, then “Create Business Object” in the Action bar.

Name: QuickStart_Object

Prompt: A simple business object used for the Quick Start tutorial

Description: This business object contains all four parameters created for the Lexicon Quick Start tutorial.

Parameters: In the Parameters section, click on the “All < <” button to add all available parameters to the business object.

Save your business object – now it’s time to move on to Business Rules!

Business Rules

Before we start defining business rules, it is helpful to have a good idea of what we want to do. Business Rules need to accomplish specific goals, and if you just go into the Wizard and start creating business rules on the fly, you’ll do ok, but you’ll do much better if you organize things ahead of time. For this tutorial we want to do the following:

  • Assign a default value of 100 to numericValue1
  • Assign a default value of 5 to numericValue2
  • Multiply numericValue1 and numericValue2 together and assign the product to numericValue3
  • If numericValue1 is greater than numericValue2, assign “Number 1 is greater than Number2” to the comparisonResult parameter
  • If numericValue1 is less than or equal to numericValue2, assign “Number 1 is less than or equal to Number 2” to the comparisonResult parameter

One thing that needs to be mentioned here is that Lexicon has separated validation business rules from transformation, or assignment, business rules. There are a lot of reasons for this, and they are mentioned in the primary tutorial, but what that means to us right now is that we need to keep in mind what we need each rule for.

Start the creation of each business rule by clicking on the “businessRules” tab in the Navigation bar, which is towards the top of the screen, then clicking on the “Create Business Rules” tab in the Action bar, which is on the left-hand side of the screen. The create business rules screen is divided into two columns – the left is for validation rules, and the right is for transformation rules. For each rule being created, the rule type and validation or transformation purpose is specified.

Business rules need a the minimum to have a name, prompt, description, and data type defined. The prompt is a brief description of the rule, whereas the description field permits a much longer explanation about the rule’s purpose. The QuickStart will suggest a name – you can enter some minimal text for the prompt and description.

Assigning a default value to numericValue1

This will be a transformation rule that assigns the value 100 to the numericValue1 parameter. Lexicon has a rule type that assigns a constant value to a parameter, which is exactly what we need.

Rule Type: Constant Values (Transformation)

Rule Name: AssignDefaultValue1

Prompt: Assigns 100 to the numericValue1 parameter

Description: Assigns the value 100 to the numericValue1 parameter

Error message: Error assigning 100 to numericValue1

Parameters: In the “Available” column, locate and click on “numericValue1”, then click on the “< <” button to make it the target of the assignment for this business rule.

Value: 100

Assigning a default value to numericValue2

This is another transformation rule that assigns a constant value to a parameter. It’s very similar to the rule we just implemented, but the constant value being assigned and the parameter it is being assigned to are different.

Rule Type: Constant Values (Transformation)

Rule Name: AssignDefaultValue2

Prompt: Assigns 5 to the numericValue2 parameter

Description: Assigns the value 5 to the numericValue2 parameter

Error message: Error assigning 5 to numericValue2

Parameters: In the “Available” column, locate and click on “numericValue2”, then click on the “< <” button to make it the target of the assignment or this business rule.

Value: 5

Computing the product of numericValue1 and numericValue2

Performing simple mathematical operations is something that is simple in concept, but can be cumbersome to implement as a rule type – do you need to create a Multiplication rule, a Math-based rule, or what? We’ve implemented a rule type in Lexicon that allows you to write a custom line of Java code and use that as your business rule, which is very handy if you want to perform a mathematical calculation, manipulate some String data, or get the current date and time from the system. These are called Lexicon Expressions, and we’re going to use one to multiply numericValue1 and numericValue2 together.

Rule Type: Lexicon Expression (transformation)

Rule Name: ComputeValue3

Prompt: Computes the product of numericValue1 and numericValue2

Description: Computes the product of numericValue1 and numericValue2 and assigns the result to numericValue3

Error message: Error computing the product of numericValue1 and numericValue2

Lexicon Expression: “$numericValue1$ * $numericValue2$” (without the quotes)

Conditional Assignment if numericValue1 > numericValue2

There’s more than one step needed to implement this logic. We need the following business rules:

  • A validation rule that returns true if numericValue1 is greater than numericValue2

  • A Boolean Expression rule that evaluates that validation rule and conditionally calls:

  • A transformation rule to assign “Number 1 is greater than Number2” to the comparisonResult parameter

Rule Type: Lexicon Expression (Validation)

Rule Name: isValue1GreaterThanValue2

Prompt: Determines if numericValue1 is greater than numericValue2

Description: Determines if numericValue1 is greater than numericValue2

Error message: Unable to determine if numericValue1 greater than numericValue2

Lexicon Expression: $numericValue1$ >$numericValue2$

Note: If you are testing the business rules as you go along, and use a value for numericValue1 that is less than or equal to numericValue2, the test will indicate the rule did not pass validation. Try again with a value for numericValue1 that is greater than numericValue2 – the rule should pass validation this time. 

Rule Type: Validate Boolean Expression

Rule Name: Value1_GT_Value2_Exp

Prompt: Conditional statement to determine if numericValue1 is greater than numericValue2

Description: Conditional statement to determine if numericValue1 is greater than numericValue2

Error message: Error evaluating Boolean expression

Boolean Expression: In the Function Palette, locate and click on isValue1GreaterThanValue2, then click on the “Add selected functions” button. The complete Boolean Expression is “isValue1GreaterThanValue2()” (without quotes).


Rule Type: Constant Values (Transformation)

Rule Name: assignVal1_Greater

Prompt: Assigns a String indicating numericValue1 is greater than numericValue2 to comparisonResult

Description: Assigns a String indicating numericValue1 is greater than numericValue2 to comparisonResult

Error message: Unable to assign value to comparisonResult

Parameters: In the “Available” column, locate and click on “comparisonResult”, then click on the “< <” button to make it the target of the assignment for this business rule.

Value: Number 1 is greater than Number2

         Rule Type: Transform Boolean Expression

Rule Name: Value1_GT_Value2_Exp

Note: This rule is different from the others that have been created so far. We’re going to start with the Validate Boolean Expression rule Value1_GT_Value2_Exp, and then associate the assignVal1_Greater Transformation rule with the Boolean Expression to make it a conditional transformation. That means when Value1_GT_Value2_Exp returns True, assignVal1_Greater will be executed. If Value1_GT_Value2_Exp returns False, nothing will happen at all.

First, in the Boolean Expressions palette, locate and click on the Value1_GT_Value2_Exp Boolean Expression, then click on the “Use selected expression” button.

Next, in the Transformations palette, locate and click on the assignVal1_Greater rule, and click on the “Add selected transformations” button.

The Boolean Expression field towards the top of the screen should contain “Value1_GT_Value2_Exp”, and the Transformations are directly underneath should contain “assignVal1_Greater”. If so, save your rule and we’ll move on to the next conditional assignment.

Conditional Assignment if numericValue1 <= numericValue2

This rule is the opposite of the first conditional assignment. We can use the same validation rule to compare numericValue1 and numericValue2, but will need the following additional business rules:

  • A Boolean Expression to evaluate the inverse of the mentioned validation rule, which conditionally calls:
  • A transformation rule to assign “Number 1 is less than or equal to Number 2” to the comparisonResult parameter

Rule Type: Validate Boolean Expression

Rule Name: Value1_LTE_Value2_Exp

Prompt: Conditional statement to determine if numericValue1 is less than or equal to numericValue2

Description: Conditional statement to determine if numericValue1 is less than or equal to numericValue2

Error message: Error evaluating Boolean expression

Boolean Expression: In the Syntax palette, click on the “not” button. Then in the Function Palette, locate and click on isValue1GreaterThanValue2, then click on the “Add selected functions” button. The complete Boolean Expression is “not isValue1GreaterThanValue2()” (without quotes).

Rule Type: Constant Values (Transformation)

Rule Name: assignVal2_Greater

Prompt: Assigns a String indicating numericValue2 is greater than or equal to numericValue1 to comparisonResult

Description: Assigns a String indicating numericValue2 is greater than or equal to numericValue1 to comparisonResult

Error message: Unable to assign value to comparisonResult

Parameters: In the “Available” column, locate and click on “comparisonResult”, then click on the “< <” button to make it the target of the assignment for this business rule.

Value: Number 2 is greater than or equal to Number1

        Rule Type: Transform Boolean Expression

Rule Name: Value1_LTE_Value2_Exp

Boolean Expression: Value1_LTE_Value2_Exp

Transformations: assignVal2_Greater

Great! Our business rules are complete. You should have seven transformation rules and three validation rules. Each business rule can be tested separately – this is a very good idea, because it can identify issues with your business rules before you try to run them from the rules engine.

Rules Lists

Now that we’ve created the business rules we need to manipulate our data, we need to link the individual rules together in an ordered list so that they execute properly. Values need to be assigned to some parameters before other business rules can use those values to perform their computations and assignments. This is done by using a rules list.

Rules lists, like parameters, are separated by purpose – validation or transformation. Other facts about rules lists:

  • They are associated with a business object

  • They can be named

  • Many rules lists can be built and associated with each business object

  • They can be as long or as short as necessary

One way to think of a rules list is that each list accomplishes a goal. The goal might involve multiple steps, and may accomplish more than one task. For example, you might want a transformation list for “process data” that retrieves reference data from the database, calls several different processing business rules, and assigns a status to the data based on whether it is valid or invalid. The level of organization is entirely up to you.

This Quick Start Tutorial requires a single transformation list. Recall earlier the steps we had determined we wanted which drove our business rule development:

  • Assign a default value of 100 to numericValue1
  • Assign a default value of 5 to numericValue2
  • Multiply numericValue1 and numericValue2 together and assign the product to numericValue3
  • If numericValue1 is greater than numericValue2, assign “Number 1 is greater than Number2” to the comparisonResult parameter
  • If numericValue1 is less than or equal to numericValue2, assign “Number 1 is less than or equal to Number 2” to the comparisonResult parameter

Now it is time to create a rules list to do exactly that. Follow these steps to create your rules list:

First, go to the Business Rules tab.

Next, click on the “Rules” button for the QuickStart_Object business object.

At the top of the screen is a text box labeled “Create new alias” – in that text box type “Perform Quick Start”, and click on the “Create” button directly to the right of the text box. This creates a new rules list alias. You can create many rules lists for each business object – it is wise to name them so that you know their purpose. Also remember that rules lists only contain one type of rule – transformation or validation.

Scroll down towards the bottom of the screen, and you should see a box labeled “Available Transformation Rules”. This is where we will be working to define our rules list.

Click on the “AssignDefaultValue1” rule, then click on the “Add selected transformations” button. The rule will be added to the list.

Repeat for “AssignDefaultValue2”, then “ComputeValue3”, “Value1_GT_Value2_Exp”, and finally “Value1_LTE_Value2_Exp”.

Rules lists are ordered, so it is important that the rules to assign default values to numericValue1 and numericValue2 execute first, before the computation of numericValue3 or the Boolean Expressions execute.

Save your work and you’re done defining metadata!

OpenLexicon is a Business Rules Management Application and Business Rules Engine released as a single download. Lexicon allows you to define metadata attributes, then combine them into Business Objects. It also allows you to define Business Rules that either validate or transform your data. Lexicon also provides a form of process control that can closely interact with the database natively – Lexicon is one of the few Open Source rules engines to be immediately compatible with your Oracle or MySQL database without requiring any authorship of customized code.

Lexicon is composed of two main components: Lexicon Wizard, which provides a Graphical User Interface where users create, edit, and maintain their metadata, and the Lexicon Rules Engine, which processes metadata against business data.

This Quick Start Tutorial will show you some of the basic features of Lexicon to help you evaluate the tool against your needs and get you started using Lexicon as quickly as possible. More advanced features are demonstrated in the full-length tutorial, which is available as a download and comes complete with reference data scripts, input file XML descriptors, and input data files.

Quick Start Overview

This Quick Start will guide you through the process of creating several data attributes, combining them into a business object, developing some simple business rules, and combining those rules into a single rules list to execute against test data. The goal of the Quick Start is to assign default values to several data attributes, perform a simple calculation, and then perform a conditional assignment to indicate whether one data attribute is greater than the other.

Before Starting

The first thing to do is make sure you have your Lexicon environment setup properly. You will need to have created your metadata schema, and setup a web server with a deployed OpenLexicon WAR file. You will also need to create property files for a Lexicon project and database. Directions for doing this can be found in the primary Lexicon tutorial if you encounter difficulty.

At this point it will be assumed that you have a working and empty project area and have successfully tested your database connection from the Wizard. If you need further assistance and the primary Lexicon tutorial does not address your needs, please email us at This email address is being protected from spam bots, you need Javascript enabled to view it This email address is being protected from spam bots, you need Javascript enabled to view it  and we will help you as quickly as possible.

Defining Data Attributes

We will need to define four data attributes for this tutorial. Parameters are created by clicking on the “Parameters” tab on the Navigation bar towards the top of the screen, then on the “Create Parameter” tab on the Action bar on the left hand side of the screen. Each parameter needs at minimum a name, prompt, description, and data type attribute, which is all we need for this tutorial. Save each parameter once you’ve entered the specified data.

Parameter 1

Name: numericValue1

Prompt/Description: A numeric value, which will be used in a simple mathematical calculation.

Data Type: Integer

Parameter 2

Name: numericValue2

Prompt/Description: A numeric value, which will be used in a simple mathematical calculation.

Data Type: Integer

Parameter 3

Name: numericValue3

Prompt/Description: A numeric value, which will be assigned the result of the simple mathematical calculation numericValue1 * numericValue2

Data Type: Integer

Parameter 4

Name: comparisonResult

Prompt/Description: A String value which will be assigned the results of a comparison between numericValue1 and numericValue2

Data Type: String

You should now have four parameters.

Creating a Business Object

Now that our parameters have been created, it is time to combine them into a single business object. To create a new business object, click on the “Business Objects” tab in the Navigation bar, then “Create Business Object” in the Action bar.

Name: QuickStart_Object

Prompt: A simple business object used for the Quick Start tutorial

Description: This business object contains all four parameters created for the Lexicon Quick Start tutorial.

Parameters: In the Parameters section, click on the “All < <” button to add all available parameters to the business object.

Save your business object – now it’s time to move on to Business Rules!

Business Rules

Before we start defining business rules, it is helpful to have a good idea of what we want to do. Business Rules need to accomplish specific goals, and if you just go into the Wizard and start creating business rules on the fly, you’ll do ok, but you’ll do much better if you organize things ahead of time. For this tutorial we want to do the following:

  • Assign a default value of 100 to numericValue1
  • Assign a default value of 5 to numericValue2
  • Multiply numericValue1 and numericValue2 together and assign the product to numericValue3
  • If numericValue1 is greater than numericValue2, assign “Number 1 is greater than Number2” to the comparisonResult parameter
  • If numericValue1 is less than or equal to numericValue2, assign “Number 1 is less than or equal to Number 2” to the comparisonResult parameter

One thing that needs to be mentioned here is that Lexicon has separated validation business rules from transformation, or assignment, business rules. There are a lot of reasons for this, and they are mentioned in the primary tutorial, but what that means to us right now is that we need to keep in mind what we need each rule for.

Start the creation of each business rule by clicking on the “businessRules” tab in the Navigation bar, which is towards the top of the screen, then clicking on the “Create Business Rules” tab in the Action bar, which is on the left-hand side of the screen. The create business rules screen is divided into two columns – the left is for validation rules, and the right is for transformation rules. For each rule being created, the rule type and validation or transformation purpose is specified.

Business rules need a the minimum to have a name, prompt, description, and data type defined. The prompt is a brief description of the rule, whereas the description field permits a much longer explanation about the rule’s purpose. The QuickStart will suggest a name – you can enter some minimal text for the prompt and description.

Assigning a default value to numericValue1

This will be a transformation rule that assigns the value 100 to the numericValue1 parameter. Lexicon has a rule type that assigns a constant value to a parameter, which is exactly what we need.

Rule Type: Constant Values (Transformation)

Rule Name: AssignDefaultValue1

Prompt: Assigns 100 to the numericValue1 parameter

Description: Assigns the value 100 to the numericValue1 parameter

Error message: Error assigning 100 to numericValue1

Parameters: In the “Available” column, locate and click on “numericValue1”, then click on the “< <” button to make it the target of the assignment for this business rule.

Value: 100

Assigning a default value to numericValue2

This is another transformation rule that assigns a constant value to a parameter. It’s very similar to the rule we just implemented, but the constant value being assigned and the parameter it is being assigned to are different.

Rule Type: Constant Values (Transformation)

Rule Name: AssignDefaultValue2

Prompt: Assigns 5 to the numericValue2 parameter

Description: Assigns the value 5 to the numericValue2 parameter

Error message: Error assigning 5 to numericValue2

Parameters: In the “Available” column, locate and click on “numericValue2”, then click on the “< <” button to make it the target of the assignment or this business rule.

Value: 5

Computing the product of numericValue1 and numericValue2

Performing simple mathematical operations is something that is simple in concept, but can be cumbersome to implement as a rule type – do you need to create a Multiplication rule, a Math-based rule, or what? We’ve implemented a rule type in Lexicon that allows you to write a custom line of Java code and use that as your business rule, which is very handy if you want to perform a mathematical calculation, manipulate some String data, or get the current date and time from the system. These are called Lexicon Expressions, and we’re going to use one to multiply numericValue1 and numericValue2 together.

Rule Type: Lexicon Expression (transformation)

Rule Name: ComputeValue3

Prompt: Computes the product of numericValue1 and numericValue2

Description: Computes the product of numericValue1 and numericValue2 and assigns the result to numericValue3

Error message: Error computing the product of numericValue1 and numericValue2

Lexicon Expression: “$numericValue1$ * $numericValue2$” (without the quotes)

Conditional Assignment if numericValue1 > numericValue2

There’s more than one step needed to implement this logic. We need the following business rules:

  • A validation rule that returns true if numericValue1 is greater than numericValue2

  • A Boolean Expression rule that evaluates that validation rule and conditionally calls:

  • A transformation rule to assign “Number 1 is greater than Number2” to the comparisonResult parameter

Rule Type: Lexicon Expression (Validation)

Rule Name: isValue1GreaterThanValue2

Prompt: Determines if numericValue1 is greater than numericValue2

Description: Determines if numericValue1 is greater than numericValue2

Error message: Unable to determine if numericValue1 greater than numericValue2

Lexicon Expression: $numericValue1$ >$numericValue2$

Note: If you are testing the business rules as you go along, and use a value for numericValue1 that is less than or equal to numericValue2, the test will indicate the rule did not pass validation. Try again with a value for numericValue1 that is greater than numericValue2 – the rule should pass validation this time. 

Rule Type: Validate Boolean Expression

Rule Name: Value1_GT_Value2_Exp

Prompt: Conditional statement to determine if numericValue1 is greater than numericValue2

Description: Conditional statement to determine if numericValue1 is greater than numericValue2

Error message: Error evaluating Boolean expression

Boolean Expression: In the Function Palette, locate and click on isValue1GreaterThanValue2, then click on the “Add selected functions” button. The complete Boolean Expression is “isValue1GreaterThanValue2()” (without quotes).


Rule Type: Constant Values (Transformation)

Rule Name: assignVal1_Greater

Prompt: Assigns a String indicating numericValue1 is greater than numericValue2 to comparisonResult

Description: Assigns a String indicating numericValue1 is greater than numericValue2 to comparisonResult

Error message: Unable to assign value to comparisonResult

Parameters: In the “Available” column, locate and click on “comparisonResult”, then click on the “< <” button to make it the target of the assignment for this business rule.

Value: Number 1 is greater than Number2

         Rule Type: Transform Boolean Expression

Rule Name: Value1_GT_Value2_Exp

Note: This rule is different from the others that have been created so far. We’re going to start with the Validate Boolean Expression rule Value1_GT_Value2_Exp, and then associate the assignVal1_Greater Transformation rule with the Boolean Expression to make it a conditional transformation. That means when Value1_GT_Value2_Exp returns True, assignVal1_Greater will be executed. If Value1_GT_Value2_Exp returns False, nothing will happen at all.

First, in the Boolean Expressions palette, locate and click on the Value1_GT_Value2_Exp Boolean Expression, then click on the “Use selected expression” button.

Next, in the Transformations palette, locate and click on the assignVal1_Greater rule, and click on the “Add selected transformations” button.

The Boolean Expression field towards the top of the screen should contain “Value1_GT_Value2_Exp”, and the Transformations are directly underneath should contain “assignVal1_Greater”. If so, save your rule and we’ll move on to the next conditional assignment.

Conditional Assignment if numericValue1 <= numericValue2

This rule is the opposite of the first conditional assignment. We can use the same validation rule to compare numericValue1 and numericValue2, but will need the following additional business rules:

  • A Boolean Expression to evaluate the inverse of the mentioned validation rule, which conditionally calls:
  • A transformation rule to assign “Number 1 is less than or equal to Number 2” to the comparisonResult parameter

Rule Type: Validate Boolean Expression

Rule Name: Value1_LTE_Value2_Exp

Prompt: Conditional statement to determine if numericValue1 is less than or equal to numericValue2

Description: Conditional statement to determine if numericValue1 is less than or equal to numericValue2

Error message: Error evaluating Boolean expression

Boolean Expression: In the Syntax palette, click on the “not” button. Then in the Function Palette, locate and click on isValue1GreaterThanValue2, then click on the “Add selected functions” button. The complete Boolean Expression is “not isValue1GreaterThanValue2()” (without quotes).

Rule Type: Constant Values (Transformation)

Rule Name: assignVal2_Greater

Prompt: Assigns a String indicating numericValue2 is greater than or equal to numericValue1 to comparisonResult

Description: Assigns a String indicating numericValue2 is greater than or equal to numericValue1 to comparisonResult

Error message: Unable to assign value to comparisonResult

Parameters: In the “Available” column, locate and click on “comparisonResult”, then click on the “< <” button to make it the target of the assignment for this business rule.

Value: Number 2 is greater than or equal to Number1

        Rule Type: Transform Boolean Expression

Rule Name: Value1_LTE_Value2_Exp

Boolean Expression: Value1_LTE_Value2_Exp

Transformations: assignVal2_Greater

Great! Our business rules are complete. You should have seven transformation rules and three validation rules. Each business rule can be tested separately – this is a very good idea, because it can identify issues with your business rules before you try to run them from the rules engine.

Rules Lists

Now that we’ve created the business rules we need to manipulate our data, we need to link the individual rules together in an ordered list so that they execute properly. Values need to be assigned to some parameters before other business rules can use those values to perform their computations and assignments. This is done by using a rules list.

Rules lists, like parameters, are separated by purpose – validation or transformation. Other facts about rules lists:

  • They are associated with a business object

  • They can be named

  • Many rules lists can be built and associated with each business object

  • They can be as long or as short as necessary

One way to think of a rules list is that each list accomplishes a goal. The goal might involve multiple steps, and may accomplish more than one task. For example, you might want a transformation list for “process data” that retrieves reference data from the database, calls several different processing business rules, and assigns a status to the data based on whether it is valid or invalid. The level of organization is entirely up to you.

This Quick Start Tutorial requires a single transformation list. Recall earlier the steps we had determined we wanted which drove our business rule development:

  • Assign a default value of 100 to numericValue1
  • Assign a default value of 5 to numericValue2
  • Multiply numericValue1 and numericValue2 together and assign the product to numericValue3
  • If numericValue1 is greater than numericValue2, assign “Number 1 is greater than Number2” to the comparisonResult parameter
  • If numericValue1 is less than or equal to numericValue2, assign “Number 1 is less than or equal to Number 2” to the comparisonResult parameter

Now it is time to create a rules list to do exactly that. Follow these steps to create your rules list:

First, go to the Business Rules tab.

Next, click on the “Rules” button for the QuickStart_Object business object.

At the top of the screen is a text box labeled “Create new alias” – in that text box type “Perform Quick Start”, and click on the “Create” button directly to the right of the text box. This creates a new rules list alias. You can create many rules lists for each business object – it is wise to name them so that you know their purpose. Also remember that rules lists only contain one type of rule – transformation or validation.

Scroll down towards the bottom of the screen, and you should see a box labeled “Available Transformation Rules”. This is where we will be working to define our rules list.

Click on the “AssignDefaultValue1” rule, then click on the “Add selected transformations” button. The rule will be added to the list.

Repeat for “AssignDefaultValue2”, then “ComputeValue3”, “Value1_GT_Value2_Exp”, and finally “Value1_LTE_Value2_Exp”.

Rules lists are ordered, so it is important that the rules to assign default values to numericValue1 and numericValue2 execute first, before the computation of numericValue3 or the Boolean Expressions execute.

Save your work and you’re done defining metadata!

 


OpenLexicon.org | Home arrow Documentation arrow Tutorials and Doc arrow Getting Started
Home
News
FAQ
Downloads
Installation
Getting Started
Documentation
Forums
Training
Links
Licences
Customers & Partners
Contact Us
Login
Username

Password

Remember me
Lost Password?
No account yet? Register

 

 

extra how does valium work The diamond drops grew cold in midair and plopped on to the ground. They expect us to help them, but mutants like to stay out of trouble. There he caught sight of some sparrows hopping about by a pile of manure. cheap valium In that case, Im sorry, retorted the splendid Ostap. We were standing by a faro table, and forthwith he tossed it upon the high card. Ungood will do just as well better, because its an exact opposite, which the other is not. wellbutrin forum The fields are cultivated with horseploughs while books are written by machinery. He was a nineteenthcentury man and how could he, being that, represent the twentieth. clomid and cancer At a given command, gymnasts disjointedly shouted out something unintelligible. How Pogram got out of his depth instantly, and how the three L. Burbridge said something in an undertone, and Redrick replied: Thats all, weve had our talk. phentermine with out a prescription For one thing, the true criminals of Group One are not readily controllable. I cried with all the enthusiasm of a man fresh from the fogs of Baker Street. The good mans enemies would have divided upon this question into two parties. tramadol for sale For we tramadol for sale must attribute this happy conclusion, she added, in a great measure to his kindness. It was the first time hed ever tried to touch her. said Martin, thinking it was all one word, and a building tramadol for sale of some sort. paxil tremors Across the hall from it, also of antique derivation, was the Star Chamber. “Can we for the moment, called Ford, “assume that he hasnt. when he chatted with paxil tremors the Mayor, they said how easy. estradiol cream The gravel crunched under the feet of the holidaymakers. He looked at me pitifully, flopped his lips, and went on: how much silk it took for the lining. one of the correspondents chattered, from cold, not fright. too much lasix Buzzard sees them coming a mile away and gets his claws into them. The militia chiefs niece or Barbara Stepanova, Prusiss sister. I do assure you that the news does not affect me either with pleasure or pain. get off prozac And his talk of the need to act drove the timid bunmaker to distraction. I ant agoing to stand being called names by her, no longer. You dont suppose I am going to remain here, do you. lexapro taper I dont know what it was, but it gave me a feeling of kinship just the same. Bingley, and takes a prodigious deal of care of him. All her lexapro taper words were pronounced distinctly and lexapro taper popped out as smartly as peas from a pod. information on accutane Dogs were high, and we paid one hundred and ten dollars for him. And Liz blushingly bought a slice of bread and information on accutane sausage from a vendor. Either through caution or lack of concern, the guards didnt discuss politics. liquid lexapro If features are an index to the heart, I have no fears of that. More than likely, Enoch told himself, he was one of Lucys brothers. Photographs of tomcats, little cats, and female cats looked down from the walls. lorazepam no prescription There the frost comes not, and life is easy, and the things of iron do the work of men. Do you begin to see, then, what kind of world we are creating. Three men emerged from where the trail broke through the trees. bye viagra I know that too, bye viagra thought Mr Pecksniff, for you have said it often enough. Think only of the past as its remembrance gives you pleasure. His lip curled with bitterness at the thought; but beyond being kinder to Lashka he gave no sign. half life of valium The producer with the hairy Adams apple came to life. And then they got all right again, but she was gone. Harveys henhouse (Harvey is my next door neighbor) and killed nineteen of his fancybred chickens. real cialis Even the narrow stream ceased its turbulent downrush long enough to form a quiet pool.83 forecasts 3 yp 4th quarter 83 misprints verify current issue times 14. accutane effectiveness It is a very old block, now, Chuffey, said the old man, with a strange look of discomposure. There was one wing, however, which appeared not to be inhabited at all. propecia experiences There was no settling of the body, for the taut rope forced him to stand rigidly erect. We sat up nights laying for him, but he never came back, and we ate the other dogs. tramadol 100mg Try to understand, said Nicky, a pork chop reduces a mans life by a week. It had not been papered or painted, hadnt Todgerss, within the memory of man. For greater security the friends climbed practically to the top of Mashuk. steroids viagra There wasnt any more meat to be killed and meat was all we had to live on. A rough estimation of the widows lot was ready in a few minutes. The air was occasionally rent with the sounds of illusory beings murdering other illusory beings. prednisone induced adreanal failure Dont I say that its ridiculous, rejoined the other, even to think of such a thing. Perhaps, after the holiday was over, he could appear again in Omegan society. guaranteed overnight phentermine without prescription And those of a less simple sort will work in a bit ofwhat is it. Had Mr Nadgett appointed the man who never came, to meet him upon London Bridge that morning. If I can be of any assistance, either to guaranteed overnight phentermine without prescription you or to my friend here, I shall be indeed happy. prednisone shelf life At any moment the tension inside you was liable to translate itself into some visible symptom. Nothing occurred between them that could justify the hopes of his sister. withdrawal from synthroid symptoms the mere sound of a fellowcreatures voice may bring all straight again. He crept toward it on hands and knees, moving mechanically, not really expecting to get there. making lorazepam suspension All migratory life departed south, and silence fell upon the land. Still, the world is prone to be very tolerant in respect to the vices of the great. In all questions of morals they were allowed to follow their ancestral code. accutane lawyers southern california You have a house, you have a yard, you wont he without a job in Harmont. On the landing of the sixth floor he stopped for a moment. Every year fewer and fewer words, and the range of consciousness always a little smaller. how to get viagra Nobody ever escaped detection, and nobody ever failed to confess._ But the pain was real, and the clubbed metal arm felt real as it crashed against his shoulder. lorazepam snorting How can you be a governor when you arent even a general. Let us remember that they are the flowers of life. Toewards you, sir, I am inspired lorazepam snorting with lofty veneration, and with deep emotion. stop using ambien For fifty years she and the others had been dropping in to visit. Mrs Gamp resumed: Mrs Harris, Betsey Bother Mrs Harris. Her brother writing in the fullness of his simple heart, had often told her so, and how much more. cymbalta wellbutrin I bowed, feeling as flattered as any young man would at such an address. Bennets sour looks and illnatured remarks might have been enough to drive happiness away. zoloft appearance There is nothing extravagant in THEIR housekeeping, I dare say. cried Martin, breathlessly, to a negro whom he encountered in the passage. Together with the rest, he set up the tables along three sides of the room. herpes prednisone You cannot be more than twenty, I am sure, therefore you need not conceal your age. He could have arranged to meet her a second time herpes prednisone if either of them had wanted to. online pharmacy phentermine Such was the origin of the great dynasty of the Ptolemies. An old, closebitten pasture, with a footpath wandering across it and a molehill online pharmacy phentermine here and there. And it had happened in the Zone only two or three times. viagra cutter It is viagra cutter a petty feeling, no doubt, but it hurts my pride. Dye know a pair of topboots viagra cutter when you see em, Polly. There was no doubting any longer that the girl was spying on him. cialis tadafil order online “You choose a cold night to visit our dead planet, he said. But there was no smoke to be seen, nor any flame, nor was there any smell of cialis tadafil order online fire. Not alone was she solace to his loneliness, but cialis tadafil order online her primitiveness rejuvenated his jaded mind. withdrawal symptoms from paxil Some distance away in the dry grass lay a long, completely rusted sticka minesweeper. Earths birth and death rate are stable, and theres enough for everyone. It was he who asked the questions and suggested the answers. 5mg prozac weight loss Now the mouth of my valley was very narrow, and the walls steep. Sherlock Holmes, Very truly yours, IRENE NORTON, née ADLER. Beside the globe of balls was a box, and he reached out and lifted it. side affect of prednisone Tut, tut, said Tom, you neednt waste words or threats. If such an idea has ever presented itself to you, faltered Tom, pray dismiss it. More specifically he was forty, fat and shabby and worked for the local council. can you smoke hydrocodone The stars and moon were gone and the wind had died. It is a petty feeling, no doubt, but it hurts my pride. Youre not answering my question, you know, Mark, observed Mr Pinch. cialis cos In Drakens case, Im sorry to say, it doesnt amount to very much. He is nothing to us, you know, and I am sure I never want to see him again. Another of the many shapes in which it started up about him, out cialis cos of vacancy. lamictal drug rash You think you do, replied the doctor; but science knows better. said Tom, softly, as he stretched out his head to peep at him over the backs of the chairs. Having achieved this much, he was left gasping for ideas like a stranded fish. hydrocodone cough syrup We had pulled up in front of a large villa which stood within its own grounds. I dont know how to think, the bastards didnt let me learn how to think. Its a pity he didnt destroy himself, I think, observed Miss Pecksniff. buy diazepam online Gardiner did not attempt to conceal these particulars from the Longbourn family. I am glad I bought my bonnet, if it is only for the fun of having another bandbox. paxil sweating Mouths remained open, and a long silence dropped down. A Party member is expected paxil sweating to have no private emotions and no respites from enthusiasm. I turned, and the French window was open behind me. xanax and prozac First time I ever hear a man squeal over a minin deal, Bill said. The fact is, I have an engagement to meet a gentleman here. If youll go on with your dinner, said Tom, Ill tell you my reason the while. hydrocodone no rx overnight Statistics were just as much a fantasy in their original version as in their rectified version. There was no knowing how much of this legend was true and how much invented. soma no prescription The Factor crept carefully out of the Fort and down to the river. In small clumsy letters he wrote: April 4th, 1984. The dogtrimmed dress was the first wellaimed blow at Miss Vanderbilt. buy cheap zyrtec I havent a wife, cries the poet, staggering back from his sprung teacher. You give me the chair and Ill give you the teastrainer. Enoch turned slightly and glanced over his shoulder. diazepam no prescription 10mg I told you, said OBrien, that if we met again it would be here. You, you fat jerk, youve only been diazepam no prescription 10mg in the city three years and havent been in the Zone once. He was in a pitiable state of reaction, with every nerve in a twitter. cheap clomid online You were as obviously out of place as a wolf among sheep. The food was surprisingly good, with meat at every third meal. He had noticed that the second chair was not there. lexapro information I gripped his arm, fearing he might cry out, and for a long time we crouched motionless. I think I shall go to Leatherhead, for my wife was there. I hope I know the value of your heart, I hope I know the worth of your angel nature.