Presentation is loading. Please wait.

Presentation is loading. Please wait.

Sujit R Nair November 30,2009. Introduction Need / Requirement. Characteristics of current rule markup Languages. A sample Scenario of Rule Interchange.

Similar presentations


Presentation on theme: "Sujit R Nair November 30,2009. Introduction Need / Requirement. Characteristics of current rule markup Languages. A sample Scenario of Rule Interchange."— Presentation transcript:

1 Sujit R Nair November 30,2009

2 Introduction Need / Requirement. Characteristics of current rule markup Languages. A sample Scenario of Rule Interchange Future Work. Conclusion.

3 Need / Requirement Expressiveness. Machine-interpretation. Automated Processing. Translation and Interchange. Publication and Serialization.

4 Current Rule Languages RuleML. SWRL. R2ML. W3C RIF. Triple. N3. Jena Rules. Prova.

5 RuleML Based on XML. Rules consists of derivation, integrity constraints, production, reaction, tools and transformation. Datalog RuleML and Hornlog RuleML.

6 SWRL Combining Sublanguages of OWL and RuleML. Union of DLP and Horn Logic. Adds rules at the cost of undecidability and lack of complete implementation. Protégé. Rules = Antecedent + Consequent.

7 R2ML Based on concept of RuleML and SWRL. Rules consists of derivation, integrity constraints, production, reaction. MOF/UML support.

8 W3C RIF Facilitate rule exchange. Dialects. Basic Logic Dialect(RIF-BLD) ↔ Horn Rule Language. Datatypes and Built-Ins(RIF-DTB). Core. Production Rule Dialect.

9 Jena Rules Java Rule object. Jena2 is much simpler, allows rules to be specified in compact form in text source files.

10 Prova Web rule language + Highly expressive distributed Web rule engine. Supports complex reaction rule-based workflow, rule- based event processing, distributed inference services, rule interchange, rule-based decision logic, dynamic access to external data, Web Services and JAVA APIs.

11 Rule Interchange Sample Using RIF to interchange F-Logic Rules and Drools. Scenario : To supply a vendor-neutral representation of rules, so that rule-system developers can do their work without concern about a vendor-specific format and in particular without concern about the compatibility with the technology of its business partners. Jane's e-commerce system uses Drools therefore the rules vocabulary is represented using Java beans John uses an OWL vocabulary and its rules are represented in F-Logic.

12 Rule Interchange (contd) The Two rules that are to be implemented : a. Rule R1: If an item is perishable and it is delivered more than 10 days after the scheduled delivery date then the item will be rejected. b. Rule R2: If an item is perishable and it is delivered more than 7 days after the scheduled delivery date but less than 14 days after the scheduled delivery date then a discount of 18.7% will be applied to this delivery.

13 Rule Interchange (contd) Points to be kept in mind: RIF needs to deal with different vocabularies. RIF needs an uniform mechanism to address vocabulary elements. The usage of URI's may be such a mechanism. Vocabulary and rules are separate layers

14 Rule Interchange (contd) John's OWL vocabulary:

15 Rule Interchange (contd)

16 Rule Interchange (contd) rejected accepted

17 Rule Interchange (contd) John Rules (F-Logic) //If an item is perishable and it is delivered more than 10 days after the scheduled delivery date then the item will be rejected RULE R1 I:item[status -> "rejected"] < - I:item[isPerishable -> true] AND I[actualDeliveryDate -> A] AND I[scheduledDeliveryDate -> S] AND R is (A - S) AND R > 10.

18 Rule Interchange (contd) //If an item is perishable and it is delivered more than 7 days after the scheduled delivery date but less than 14 days after the scheduled delivery date then a discount of 18.7% will be applied to this delivery. RULE R2 I:item[discount -> 18.7] <- D:delivery[hasItems->>Items] AND I:item[isPerishable -> true] AND I[actualDeliveryDate -> A] AND I[scheduledDeliveryDate-> S] AND member(I, Items) AND R is (A - S) AND R > 7.

19 Rule Interchange (contd) Jane's Rules (Drools) package com.sample import com.sample.Item; rule "R1" when i : Item( isPerishable==true, actualDeliveryDate : actualDeliveryDate, scheduledDeliveryDate : scheduledDeliveryDate ) eval( actualDeliveryDate.getDay() – scheduledDeliveryDate.getDay() > 10 ) then i.isRejected(true); modify(i); end

20 Rule Interchange (contd) rule "R2" when d:Delivery(hasItems: hasItems) i : Item(actualDeliveryDate : actualDeliveryDate, scheduledDeliveryDate : scheduledDeliveryDate ) eval( (actualDeliveryDate.getDay() – scheduledDeliveryDate.getDay() > 7) && hasItems.contains(i)) then i.setDiscount(18.7); modify(i); end

21 Rule Interchange (contd) Importing Jane's Rules in the John's rule system Translating from Drools into RIF Presentation Syntax proposed by RIF-BLD is used to perform the vocabulary interchange.

22 Rule Interchange (contd) Translation of Jane's Drools Rules rules into RIF rule "R1" when i : Item(isPerishable==true, actualDeliveryDate : actualDeliveryDate, scheduledDeliveryDate : scheduledDeliveryDate ) eval( actualDeliveryDate.getDay() – scheduledDeliveryDate.getDay() > 10) then i.isRejected(true); modify(i); end

23 Rule Interchange (contd) // Translation to RIF Rule ("http://jane.com/R1" ?i#Item[(isRejected- >"true"^^xs:boolean) :- And(?i#Item[(isPerishable- >"true"^^xs:boolean) (actualDeliveryDate- >?actualDeliveryDate ) (scheduledDeliveryDate - >?scheduledDeliveryDate)] op:numeric-greater-than( op:numeric-subtract( user- defined:getDay(?actualDeliveryDate), user- defined:getDay(?scheduledDeliveryDate) ), "10"^^xs:int ) ) )

24 Future Work On going research to develop a general rule mark up language. Most of the research is concentrating on RuleML and RIF. To cover the shortcomings such as – procedural call to external objects, operating systems, terminological descriptions for dealing with real world distributed Web Applications.

25 Conclusion Why is rule markup needed ? Currents rule markup languages. RuleML and RIF. W3C RIF BLD provides a robust core for the interchange of business rules among commercial and academic rule systems. Embodies both production rules and derivation rules.

26 References 1. Adrian Paschke, Harold Boley – Rule Markup Languages and SWRL. 2. W3C Rule Interchange Format, p 3. RIF Basic Logic Dialect, 4. W3C RIF Use Cases and Requirements, Gary Hallmark, Christian de Sainte Marie, Marcos Didonet Del Fabro, Patrick Albert, and Adrian Paschke - Please Pass the Rules: A Rule Interchange Demonstration

27 Contact Information Sujit Raveendran Nair. Phone:


Download ppt "Sujit R Nair November 30,2009. Introduction Need / Requirement. Characteristics of current rule markup Languages. A sample Scenario of Rule Interchange."

Similar presentations


Ads by Google