introduction to visual rules modeling
TRANSCRIPT
![Page 1: Introduction to visual rules modeling](https://reader036.vdocuments.site/reader036/viewer/2022062303/555ada6dd8b42a024a8b4f0b/html5/thumbnails/1.jpg)
Adrian Giurca, eBusiness Technologies, Craiova, March 2009
eBusiness Technologies (ebTech)
Introduction to visual rules modeling
Dr. Adrian GiurcaBrandenburg University of Technology
Cottbus, Germany
![Page 2: Introduction to visual rules modeling](https://reader036.vdocuments.site/reader036/viewer/2022062303/555ada6dd8b42a024a8b4f0b/html5/thumbnails/2.jpg)
Adrian Giurca, eBusiness Technologies, Craiova, March 2009
Rules in "real life"
• IF the customer is a gold customer and its current shopping cart is more than 150 EUR THEN set a 5% discount to the shopping cart.
• IF the customer is a platinum customer and its current shopping cart is more than 500 EUR THEN set a 15% discount to the shopping cart.
• All platinum customers are gold customers.
![Page 3: Introduction to visual rules modeling](https://reader036.vdocuments.site/reader036/viewer/2022062303/555ada6dd8b42a024a8b4f0b/html5/thumbnails/3.jpg)
Adrian Giurca, eBusiness Technologies, Craiova, March 2009
Real rules are based on vocabularies
• Classeso Customero Shopping cart
• Propertieso discounto customerName
• Q: How we discover them? • A: As in Software Engineering Design
![Page 4: Introduction to visual rules modeling](https://reader036.vdocuments.site/reader036/viewer/2022062303/555ada6dd8b42a024a8b4f0b/html5/thumbnails/4.jpg)
Adrian Giurca, eBusiness Technologies, Craiova, March 2009
Vocabularies (1)
• Software engineers represents vocabularies with the help of UML class diagrams
• Different constraints are expressed with OCL
![Page 5: Introduction to visual rules modeling](https://reader036.vdocuments.site/reader036/viewer/2022062303/555ada6dd8b42a024a8b4f0b/html5/thumbnails/5.jpg)
Adrian Giurca, eBusiness Technologies, Craiova, March 2009
Vocabularies (2)
• Semantic Web community represents vocabularies with RDFS and/or OWL
<rdf:RDF xmlns:rdf="..." xmlns:rdfs="..."><rdfs:Class rdf:ID="ex:Customer"/> <rdfs:Class rdf:ID="ex:GoldCustomer"><rdfs:subclassOf rdf:resource="ex:Customer"/></rdfs:Class><rdf:Property rdf:ID="yearSpending"><rdfs:domain rdf:resource="ex:Customer"/><rdfs:range rdf:datatype="xs:double"/></rdf:Property></rdf:RDF>
![Page 6: Introduction to visual rules modeling](https://reader036.vdocuments.site/reader036/viewer/2022062303/555ada6dd8b42a024a8b4f0b/html5/thumbnails/6.jpg)
Adrian Giurca, eBusiness Technologies, Craiova, March 2009
A Short Comparison
• UML provides a visual notation but a more complex XML serialization (XMI)
• RDFS/OWL provides XML syntax but no visual notation. The XML syntax is not based on XML Schema/RelaxNG therefore special validators are necessary
• UML provides support for packaging • RDFS/OWL use XML namespaces
![Page 7: Introduction to visual rules modeling](https://reader036.vdocuments.site/reader036/viewer/2022062303/555ada6dd8b42a024a8b4f0b/html5/thumbnails/7.jpg)
Adrian Giurca, eBusiness Technologies, Craiova, March 2009
Modeling Rules
• Q: Why to use a modeling language for rules?
• A: Simply because natural language is sometimes ambiguous and we don't know how to encode the rule
• Remember also the logic controversy...• Do you remember it?
![Page 8: Introduction to visual rules modeling](https://reader036.vdocuments.site/reader036/viewer/2022062303/555ada6dd8b42a024a8b4f0b/html5/thumbnails/8.jpg)
Adrian Giurca, eBusiness Technologies, Craiova, March 2009
Vocabularies and rules
Rule:If rental car is stored at the branch and rental car is not assigned to any rental and it is not a rental car scheduled for service then rental car is available at the branch.
![Page 9: Introduction to visual rules modeling](https://reader036.vdocuments.site/reader036/viewer/2022062303/555ada6dd8b42a024a8b4f0b/html5/thumbnails/9.jpg)
Adrian Giurca, eBusiness Technologies, Craiova, March 2009
UML-based Rule Modeling Language
• Any person being a male and is not a husband is a bachelor.
bachelor(X):- male(X), not(husband(X)).
![Page 10: Introduction to visual rules modeling](https://reader036.vdocuments.site/reader036/viewer/2022062303/555ada6dd8b42a024a8b4f0b/html5/thumbnails/10.jpg)
Adrian Giurca, eBusiness Technologies, Craiova, March 2009
If-Then-Else Rule
• If the order value is less than 1000 give a discount of 3% otherwise give 6%.
![Page 11: Introduction to visual rules modeling](https://reader036.vdocuments.site/reader036/viewer/2022062303/555ada6dd8b42a024a8b4f0b/html5/thumbnails/11.jpg)
Adrian Giurca, eBusiness Technologies, Craiova, March 2009
Derived Association Rule Example
![Page 12: Introduction to visual rules modeling](https://reader036.vdocuments.site/reader036/viewer/2022062303/555ada6dd8b42a024a8b4f0b/html5/thumbnails/12.jpg)
Adrian Giurca, eBusiness Technologies, Craiova, March 2009
Your knowledge on rules
• Do you know rule languages?
Drools?
• Do you use rule languages?
Drools?
• What rule-based applications you built?
Have you finished your first Drools example?
I will not work for you
![Page 13: Introduction to visual rules modeling](https://reader036.vdocuments.site/reader036/viewer/2022062303/555ada6dd8b42a024a8b4f0b/html5/thumbnails/13.jpg)
Adrian Giurca, eBusiness Technologies, Craiova, March 2009
Do you like rule-based applications?
Tower of Babel - Pieter Bruegel (1563)