Documentation

Guide to get started with Praecepta.

About Rule Space

What is a Rule Space

Rule Space is a top level component and it's defined as a Composite of Client Name, Application Name, Rule Space Name. Rule Space can have multiple Rules Groups in it.

Without having a Rule Space created, Praecepta doesn't allow the application to create and execute Rule Groups, Rules and Sidecars.

Example of a Rule Space : Client Name - XYZ Bank, Application Name - Cash Transfer, Space Name - Wire Transfer

Components of a Rule Space

Each Version of a Rule Space contains a list of Rule Groups in it. All Rule groups under a Rule Space will have a same Composite key with a combination of Client Name, Application Name, Rule Space Name

How to perform Operations on a Rule Space

Create A Rule Space : Rule Space can be created by calling the endpoint '/ruleSpaceController/ruleSpace' with Http Request Type as 'PUT' with haivng the json input to the endpoint as {"spaceName":"Wire_transfer","clientId":"XYZ_Bank","appName":"Cash_Transfer","version":"V1"}

Fetch All Rule Sapces : All Rule Spaces can be fetched by calling the endpoint '/ruleSpaceController/ruleSpaceList' with Http Request Type as 'GET'

Fetch A Rule Space : A specific Rule Space can be fetched by calling the endpoint '/ruleSpaceController/ruleSpace/{spacename}/{clientid}/{appname}/{version}' with Http Request Type as 'GET' and passing the Space Name, Client Name, Applicaiton Name and Version as Path Parameters

Delete A Rule Space : A specific Rule Space can be deleted by calling the endpoint '/ruleSpaceController/ruleSpace/{spacename}/{clientid}/{appname}/{version}' with Http Request Type as 'DELETE' and passing the Space Name, Client Name, Applicaiton Name and Version as Path Parameters

About Rule Group

What is a Rule Group

Rule Group is a Collection of related Rules grouped together to perform a spaecific business function check.

Rule Group defined as a Composite of Client Name, Application Name, Rule Space Name and Rule Group Name.

Example of a Rule Group : Client Name - XYZ Bank, Application Name - Cash Transfer, Space Name - Wire Transfer, Rule Group Name - Wire Transfer Fee Check

Components of a Rule Group

Each Version of a Rule Group consists a collection of Rules in it. Every Rule group under a Rule Space will have a same Composite key with a combination of Client Name, Application Name, Rule Space Name and a unique Rule Group Name

Every Rule Group can be maintained with different versions. The CRUD operations on a Rule Group can be performed by passing the Space Key, Rule Group name and Rule Group Version

Mapping a Rule Group to a Rule Space

A Rule Group can be added to a Rule Space if the Space key [Composite of Client Name, Application Name, Rule Space Name] being used by both Rule Space and Rule Group is Same.

Example of a Rule Space : Client Name - XYZ Bank, Application Name - Cash Transfer, Space Name - Wire Transfer

Example of a Rule Group : Client Name - XYZ Bank, Application Name - Cash Transfer, Space Name - Wire Transfer, Rule Group Name - Wire Transfer Fee Check

In the above Example, Since the Client name, App name and Space name is same between Rule Space and Rule Group. The example Rule Group is eligible to add it to Example Rule Space above

How to perform Operations on a Rule Group

Create A Simple Rule Group : Simple Rule Group can be created by calling the endpoint '/ruleGroupController/ruleGroups/{space}/{client}/{appName}/{version}' with Http Request Type as 'PUT' and passing the json input to the endpoint as Simple Rule Group Json

Update A Simple Rule Group : Simple Rule Group update can be done by calling the endpoint '/ruleGroupController/updateRuleGroup/{space}/{client}/{appName}/{version}' with Http Request Type as 'POST' and passing the json input to the endpoint as Simple Rule Group Json

Create A Multi Rule Group : Multi Rule Group can be created by calling the endpoint '/ruleGroupController/multiRuleGroups/{space}/{client}/{appName}/{version}' with Http Request Type as 'PUT' and passing the json input to the endpoint as Multi Rule Group Json

Update A Multi Rule Group : Multi Rule Group update can be done by calling the endpoint '/ruleGroupController/updateMultiRuleGroup/{space}/{client}/{appName}/{version}' with Http Request Type as 'POST' and passing the json input to the endpoint as Multi Rule Group Json

Create A Multi Nested Rule Group : Multi Nested Rule Group can be created by calling the endpoint '/ruleGroupController/multiNestedRuleGroups/{space}/{client}/{appName}/{version}' with Http Request Type as 'PUT' and passing the json input to the endpoint as Multi Nested Rule Group Json

Update A Multi Nested Rule Group : Multi Nested Rule Group update can be done by calling the endpoint '/ruleGroupController/updateMultiNestedRuleGroup/{space}/{client}/{appName}/{version}' with Http Request Type as 'POST' and passing the json input to the endpoint as Multi Nested Rule Group Json

Fetch A Rule Group : A specific Rule Group can be fetched by calling the endpoint '/ruleGroupController/ruleGroups/{space}/{client}/{appName}/{version}/{groupName}' with Http Request Type as 'GET' and passing the Space Name, Client Name, Applicaiton Name, Version and Group Name as Path Parameters

Delete A Rule Group : A specific Rule Group can be deleted by calling the endpoint '/ruleGroupController/ruleGroups/{space}/{client}/{appName}/{version}/{groupName}' with Http Request Type as 'DELETE' and passing the Space Name, Client Name, Applicaiton Name, Version and Group Name as Path Parameters

How to add multiple Rules to a Rule Group

Multiple Rules with different Conditions and Actions will be added to Rule Group by passing the same Space Name, Client Name, Applicaiton Name, Version and having the same Group Name as part of the Json input.

About Rule

What is a Rule

Rule can be defined as a Criteria/Logic/Expression Evaluator with necessary Actions to be Performed based on the Evaluation Result.

Components of a Rule

A Rule will have a Criteria Configuration with a Combination of Conditions/Predicates and Conditional Join Operators. Based on the Result of the Condition Evaluation; Configure a Postive and Negative Actions to be performed.

Mapping a Rule to a Rule Group and a Rule Space

Lorem ipsum, dolor sit amet consectetur adipisicing elit. Incidunt dicta quidem recusandae odio soluta sequi molestias corrupti, illum nihil, minus veritatis numquam quaerat repellendus veniam eum dolor. Nulla, id ipsum.

Lorem ipsum dolor sit amet consectetur adipisicing elit. Velit nostrum doloremque molestias non, provident odio beatae quod, optio pariatur accusantium, at amet excepturi ducimus. Consequatur autem deleniti beatae quod doloremque.

Different Condition Types and Details About it

Lorem ipsum, dolor sit amet consectetur adipisicing elit. Incidunt dicta quidem recusandae odio soluta sequi molestias corrupti, illum nihil, minus veritatis numquam quaerat repellendus veniam eum dolor. Nulla, id ipsum.

Lorem ipsum dolor sit amet consectetur adipisicing elit. Velit nostrum doloremque molestias non, provident odio beatae quod, optio pariatur accusantium, at amet excepturi ducimus. Consequatur autem deleniti beatae quod doloremque.

Different Actions Types and Details About it

Lorem ipsum, dolor sit amet consectetur adipisicing elit. Incidunt dicta quidem recusandae odio soluta sequi molestias corrupti, illum nihil, minus veritatis numquam quaerat repellendus veniam eum dolor. Nulla, id ipsum.

Lorem ipsum dolor sit amet consectetur adipisicing elit. Velit nostrum doloremque molestias non, provident odio beatae quod, optio pariatur accusantium, at amet excepturi ducimus. Consequatur autem deleniti beatae quod doloremque.

Mapping a Condition and An Action to a Rule

Lorem ipsum, dolor sit amet consectetur adipisicing elit. Incidunt dicta quidem recusandae odio soluta sequi molestias corrupti, illum nihil, minus veritatis numquam quaerat repellendus veniam eum dolor. Nulla, id ipsum.

Lorem ipsum dolor sit amet consectetur adipisicing elit. Velit nostrum doloremque molestias non, provident odio beatae quod, optio pariatur accusantium, at amet excepturi ducimus. Consequatur autem deleniti beatae quod doloremque.

How to perform Operations on a Rule

Lorem ipsum, dolor sit amet consectetur adipisicing elit. Incidunt dicta quidem recusandae odio soluta sequi molestias corrupti, illum nihil, minus veritatis numquam quaerat repellendus veniam eum dolor. Nulla, id ipsum.

Lorem ipsum dolor sit amet consectetur adipisicing elit. Velit nostrum doloremque molestias non, provident odio beatae quod, optio pariatur accusantium, at amet excepturi ducimus. Consequatur autem deleniti beatae quod doloremque.

About Side Car

What is a Side Car

Lorem ipsum, dolor sit amet consectetur adipisicing elit. Incidunt dicta quidem recusandae odio soluta sequi molestias corrupti, illum nihil, minus veritatis numquam quaerat repellendus veniam eum dolor. Nulla, id ipsum.

Lorem ipsum dolor sit amet consectetur adipisicing elit. Velit nostrum doloremque molestias non, provident odio beatae quod, optio pariatur accusantium, at amet excepturi ducimus. Consequatur autem deleniti beatae quod doloremque.

Components of a Side Car

Lorem ipsum, dolor sit amet consectetur adipisicing elit. Incidunt dicta quidem recusandae odio soluta sequi molestias corrupti, illum nihil, minus veritatis numquam quaerat repellendus veniam eum dolor. Nulla, id ipsum.

Lorem ipsum dolor sit amet consectetur adipisicing elit. Velit nostrum doloremque molestias non, provident odio beatae quod, optio pariatur accusantium, at amet excepturi ducimus. Consequatur autem deleniti beatae quod doloremque.

What is a Pre and Post Rule Group Side Car

Lorem ipsum, dolor sit amet consectetur adipisicing elit. Incidunt dicta quidem recusandae odio soluta sequi molestias corrupti, illum nihil, minus veritatis numquam quaerat repellendus veniam eum dolor. Nulla, id ipsum.

Lorem ipsum dolor sit amet consectetur adipisicing elit. Velit nostrum doloremque molestias non, provident odio beatae quod, optio pariatur accusantium, at amet excepturi ducimus. Consequatur autem deleniti beatae quod doloremque.

Mapping a Side Car to a Rule Group

Lorem ipsum, dolor sit amet consectetur adipisicing elit. Incidunt dicta quidem recusandae odio soluta sequi molestias corrupti, illum nihil, minus veritatis numquam quaerat repellendus veniam eum dolor. Nulla, id ipsum.

Lorem ipsum dolor sit amet consectetur adipisicing elit. Velit nostrum doloremque molestias non, provident odio beatae quod, optio pariatur accusantium, at amet excepturi ducimus. Consequatur autem deleniti beatae quod doloremque.

What is a Pre and Post Rule Side Car

Lorem ipsum, dolor sit amet consectetur adipisicing elit. Incidunt dicta quidem recusandae odio soluta sequi molestias corrupti, illum nihil, minus veritatis numquam quaerat repellendus veniam eum dolor. Nulla, id ipsum.

Lorem ipsum dolor sit amet consectetur adipisicing elit. Velit nostrum doloremque molestias non, provident odio beatae quod, optio pariatur accusantium, at amet excepturi ducimus. Consequatur autem deleniti beatae quod doloremque.

Mapping a Side Car to a Rule

Lorem ipsum, dolor sit amet consectetur adipisicing elit. Incidunt dicta quidem recusandae odio soluta sequi molestias corrupti, illum nihil, minus veritatis numquam quaerat repellendus veniam eum dolor. Nulla, id ipsum.

Lorem ipsum dolor sit amet consectetur adipisicing elit. Velit nostrum doloremque molestias non, provident odio beatae quod, optio pariatur accusantium, at amet excepturi ducimus. Consequatur autem deleniti beatae quod doloremque.

How to perform Operations on a Side Car

Lorem ipsum, dolor sit amet consectetur adipisicing elit. Incidunt dicta quidem recusandae odio soluta sequi molestias corrupti, illum nihil, minus veritatis numquam quaerat repellendus veniam eum dolor. Nulla, id ipsum.

Lorem ipsum dolor sit amet consectetur adipisicing elit. Velit nostrum doloremque molestias non, provident odio beatae quod, optio pariatur accusantium, at amet excepturi ducimus. Consequatur autem deleniti beatae quod doloremque.