Discussions
Categories
- 17.9K All Categories
- 3.4K Industry Applications
- 3.3K Intelligent Advisor
- 63 Insurance
- 536.4K On-Premises Infrastructure
- 138.3K Analytics Software
- 38.6K Application Development Software
- 5.8K Cloud Platform
- 109.5K Database Software
- 17.5K Enterprise Manager
- 8.8K Hardware
- 71.1K Infrastructure Software
- 105.3K Integration
- 41.6K Security Software
Time traveling using OPA

717861
Member Posts: 11
Is it possible to use a form of time traveling using Oracle Policy Automation?
e.g.:
In 2006 we developed a rulebase for a company. We made backups of these rules.
In 2007 we used the 2006 as a basedocument for developing rules, a lot of the same variables are used but a lot of things in the calculation and rules are changed.
In 2008 a lot more is changed in the same way.
Is it possible to work with a variable 'ruleyear' and use a specific set of rules?
Gr.
e.g.:
In 2006 we developed a rulebase for a company. We made backups of these rules.
In 2007 we used the 2006 as a basedocument for developing rules, a lot of the same variables are used but a lot of things in the calculation and rules are changed.
In 2008 a lot more is changed in the same way.
Is it possible to work with a variable 'ruleyear' and use a specific set of rules?
Gr.
Answers
-
There are two aspects to this.
The first is simply which set of rules to use.
You can do that easily with rules like:
the claimant is eligible for the benefit if
the claimant is eligible for the 2006 benefit or
the claimant is eligible for the 2007 benefit
the claimant is eligible for the 2006 benefit if
the application date >= 2006-01-01 and
the application date <= 2006-12-31 and
<2006 eliigibility rules here>
the claimant is eligible for the 2007 benefit if
the application date >= 2007-01-01 and
the application date <= 2007-12-31 and
<2007 eliigibility rules here>
In other words, just splice in which set of rules you want to use based on application date.
If you have some rules in common across the 2006 and 2007 rules, you can just share those pieces of logic between the lower level rules.
If you actually need to perform calculations that span the boundary between the time periods where rules vary (e.g. if calculating the sum of benefits across the year boundary) then you can use the "temporal reasoning" feature to control which rules are applied to which date ranges. For this case, I'd suggest you search for "temporal" in the on-line help for Oracle Policy Modeling more information.
Davin Fifield
Edited by: davinfifield on 21/12/2009 21:03
Edited by: davinfifield on 21/12/2009 21:04
Edited by: davinfifield on 21/12/2009 21:05 -
The second might be what I'm looking for, I'll look in to it. Thanks
-
This is not a solution to what I meant.
I have an example that demonstrates my problem:
a family consists of parents with two children:
child 1 birthdate 2-1-2007
child 2 birthdate 1-1-2009
and the following pricingtable:
year age Pricing(per month)
2007 0- 2 100
2007 2 -4 150
2008 0- 2 110
2008 2 -4 160
2009 0- 2 120
2009 2 -4 170
This will be changed later on to:
2007 0- 3 105
2007 3 -5 150
2008 0- 3 115
2008 3 -5 160
2009 0- 3 125
2009 3 -5 170
As a consequense of these changes, the allowances have to be recalculated. The difference should be claimed or payed out starting from the year 2007
Can you solve this in a simple way in OPA. Or do you need to have a starting and ending period for all variables, or do I maybe need different versions of the project? -
Actually, temporal reasoning is well-suited to the part of this which requires you to calculate amounts across all time periods, without having to iterate and call the rules for multiple dates.
If you send me your email address, I can send you a small rulebase that has the two rate tables, and calculates the difference between the rates for the two periods. The rate tables are simply defined in Excel, with a "new" rate column for the changed rates. In the rulebase, I've assumed the calculation period is the full three year period from 2007 to 2009, inclusive - but you can change this easily.
To test this, open the Debugger, and import the ChildData.xds. I've defined the payment year as a temporal value that changes each year over this period, defined two children and set their birthdates (I used an earlier one for one of the children). You could easily define an InstanceSum over these children to get the grand total amount.
Davin Fifield
(first dot last at oracle dot com) -
Hi Davin,
Thank you for taking the trouble of making an example project.
This does seem to be what I need. I'll investigate this further today.
Thanks again,
Gr. Sake
This discussion has been closed.