23
The RuleML Initiative, July/August 2001 International Semantic Web Working Symposium SWWS-01 30 July - 1 August 2001, Stanford, California, USA Harold Boley, Said Tabet and Gerd Wagner Design Rationale of RuleML: A Markup Language for Semantic Web Rules

The RuleML Initiative, July/August 2001 International Semantic Web Working Symposium SWWS-01 30 July - 1 August 2001, Stanford, California, USA Harold

Embed Size (px)

Citation preview

The RuleML Initiative, July/August 2001

International Semantic Web Working SymposiumSWWS-01

30 July - 1 August 2001, Stanford, California, USA

Harold Boley, Said Tabet and Gerd Wagner

Design Rationale of RuleML: A Markup Language for Semantic Web Rules

The RuleML Initiative, July/August 2001 2

Introduction and Background The RuleML Initiative as a Web Ontology Effort Modular Syntax & Semantics of RuleML RuleML DTDs: release 0.8 Negation Handling in RuleML Priorities/Evidences in RuleML RuleML Implementations via XSLT & Rule Engines Example: A Semantic Web Scenario in Insurance Conclusions

Agenda

The RuleML Initiative, July/August 2001 3

Introduction and Background

Semantic Web rules less studied than corresponding ontology (taxonomy) markup

Rule Markup Initiative fills this gap by exploring rule systems (e.g.,extended Horn logics) suitable for the Web:

Syntax (XML and RDF), semantics, tractability/efficiency, transformation, and compilation

• Derivation rules: may be evaluated bottom-up as in deductive databases, top-down as in logic programming, or by tabled resolution as in XSB• Reaction rules: also called "ECA" -- “Event-Condition-Action" -- or “Trigger" rules• Possible combinations

RuleML

The RuleML Initiative, July/August 2001 4

The RuleML Initiative as a Web Ontology Effort

RuleML Initiative: started in August 2000 during the Pacific Rim International Conference on Artificial Intelligence (PRICAI 2000)

February/March 2001: First RuleML BOF at W3C Plenary and WG Meeting event

Ontology ‘equation’: Ontology = Taxonomies + Axioms(with Axioms having the form of Rules) gives big picture

System of sublanguages: from RDF-like triples to a labeled Horn logic with equations plus URI individuals and relations

The RuleML Initiative, July/August 2001 5

Modular Syntax & Semantics of RuleML

Reaction Rules

1. 2.

Integrity Constraints Derivation Rules

3.

Facts

RuleML hierarchy top-level:

1. Integrity constraints: reaction rules that signal inconsistency when certain conditions are fulfilled

2. Derivation rules: reaction rules whose action happens to only 'assert' a conclusion when certain conditions (premises) are fulfilled

3. Facts: derivation rules with empty conjunction of premises

The RuleML Initiative, July/August 2001 6

Modular Syntax & Semantics of RuleML (Cont’d)

urc-bin-data-ground-facturc-bin-data-ground-log

urc-bin-datalog

bin-datalogurc-datalog

ur-datalog

ur-hornlog

ur-equalog

hornlog

equalog

datalog

ur

Rooted DAG will be extended withbranches for further sublanguages

URL/URI-like‘ur’-objects

derivation rules

RDF- like triples

ur-datalog = join(ur,datalog

)

Sublanguagehierarchy:

RDF Rules

The RuleML Initiative, July/August 2001 7

Modular Syntax & Semantics of RuleML (Cont’d)

Separation of concerns:Sublanguage hierarchy:

12 sublanguages together constitute modularized basic RuleML definition. Except 'UR' (URL/URI) group correspond to well-known rule systems, each with semantic (model- and proof-theoretic) characterizationConcrete markup:

In recent months, RuleML 0.7 DTDs have been developed into RuleML 0.8 DTDs without affecting the above semantics. The new markup uses XML in RDF's 'explicit role-markup' style, relativizing XML's positionality to places where RDF's Seq containers or DAML+OIL lists are used

The RuleML Initiative, July/August 2001 8

RuleML DTDs: release 0.8

<fact> <_head> <atom> <_opr><rel href="http://www.eeebizz.com/rdf-sch#Approval"/></_opr> <ind href="http://www.eeebico.org/docs/joint-mission.html"/> <ind>full</ind> </atom> </_head></fact>

RDF-like triple:

Advantage of roles is object-centered modeling: If some item is to be added to a fact or atom, then this is easy to attach, RDF-like

Item insertion, XML-like, into child sequence would cause all subsequent children to assume a new position (problem for XSLT)

roles

Concrete markup:

The RuleML Initiative, July/August 2001 9

Negation Handling in RuleML

IF isPresent(?someCar)

ANDNOT isAssignedToRentalOrder(?someCar)

ANDNOT requiresService(?someCar)

AND…

THEN isAvailable(?someCar)

The Closed-World Negation NOT

UML Diagram:

The RuleML Initiative, July/August 2001 10

Negation Handling in RuleML (Cont’d)

<_body> <and> <atom> <_opr><rel>isPresent</rel></_opr> <var>Car</var> </atom> <not> <atom> <_opr><rel>isAssignedToRentalOrder</rel></_opr> <var>Car</var> </atom> </not> . . . </and> </_body>

NOT in RuleML: an example

The RuleML Initiative, July/August 2001 11

Negation Handling in RuleML (Cont’d)

NOT = non-truth (or failure) NEG = falsity

Default rules:

IF NOT hasApproval(?URL)THEN NEG

isOfficialDocument(?URL)

Open-World Reasoning with NOT and NEG

The RuleML Initiative, July/August 2001 12

Priorities/Evidences in RuleML

Quantitative Priorities: Static numerical salience Dynamically calculated priorities

Qualitative PrioritiesUsing the Overrides Fact over rule labels

The RuleML Initiative, July/August 2001 13

Priorities/Evidences in RuleML (Cont’d)

<imp> <_rlab><ind>beginners</ind></_rlab> <_spriority><ind>0.75</ind></_spriority>

<_head> ....... </_head> <_body>

<atom> <_opr><rel>customerUnder25</rel></_opr>

<var>customer</var> </atom>

</_body></imp>

Static Salience Example:

The RuleML Initiative, July/August 2001 14

Priorities/Evidences in RuleML (Cont’d)

Dynamic Salience Example:

<imp> <_rlab><ind>beginners</ind></_rlab> <_dpriority><rel>calculateSalience</rel></_dpriority>

<_head> ....... </_head> <_body>

<atom><_opr><rel>customerUnder25</rel></_opr>

<var>customer</var> </atom>

</_body></imp>

The RuleML Initiative, July/August 2001 15

RuleML Implementations via XSLT & Rule

Engines

XSLT: is a Rule Based Language is a Transformation Tool for RuleML Knowledge

Bases (KB): Using Style sheets to exchange RuleML KBs

Implementations: With GEDCOM, Mike Dean created the first

operational RuleML (0.7) rulebase, where rules on family relationships (child, spouse, etc.) are run via XSLT translators to the XSB, JESS, and N3/cwm engines

With Mandarax RuleML, Jens Dietrich has implemented the first complete input-processing-output environment for RuleML (0.8)

The RuleML Initiative, July/August 2001 16

A Semantic Web Scenario in Insurance

A teenager after her first car accident:

how much will my premiums increase and how does this accident affect my insurance policy?

Principle: Uniform RuleML representation of derivation rules and underlying document metadata

The RuleML Initiative, July/August 2001 17

A Semantic Web Scenario in Insurance (Cont’d)

<imp> <_rlab><ind>beginners</ind></_rlab>

<_spriority><ind>0.75</ind></_spriority>

<_head> <atom> <_opr><rel>calculatePremium</rel></_opr> <var>customer</var> <ind>40</ind> </atom>

</_head> <_body><and>

<atom> <_opr><rel>InsurancePolicy</rel></_opr>

<var>customer</var><var>insurance</var>

</atom> <atom>

<_opr><rel>lifeEvent</rel></_opr> <var>customer</var><ind>accident</

ind><var>report</var> </atom>

<atom> <_opr><rel>customerUnder25</rel></_opr>

<var>customer</var>

</atom></and> </_body>

</imp>

The RuleML Initiative, July/August 2001 18

A Semantic Web Scenario in Insurance (Cont’d)

<imp> <_rlab><ind>family</ind></_rlab>

<_spriority><ind>0.9</ind></_spriority>

<_head> <atom> <_opr><rel>calculatePremium</rel></_opr> <var>customer</var><ind>0</ind> </atom>

</_head> <_body><and>

<atom> <_opr><rel>InsurancePolicy</rel></_opr>

<var>customer</var><var>insurance</var>

</atom> <atom>

<_opr><rel>lifeEvent</rel></_opr> <var>customer</var><ind>accident</

ind><var>report</var> </atom>

<atom> <_opr><rel>FamilyAutoPlan</rel></_opr>

<var>customer</var><var>familyauto</var>

</atom></and> </_body>

</imp>

The RuleML Initiative, July/August 2001 19

A Semantic Web Scenario in Insurance (Cont’d)

Formalizing the relevant facts

Olivia is under 25

Olivia has an insurance policy and this document has link .../IMA-0835:

Olivia is in a family auto plan and this document has link .../FMA-0142: Olivia's accident report is available at TrafficReport.biz : <fact>

<_head><atom> <_opr> <rel>FamilyAutoPlan</rel></_opr> <ind>Olivia</ind> <ind href = “http://www.BostonInsurance.com/policy/FMA-0142” /></atom>

</_head></fact>

<fact> <_head>

<atom> <_opr><rel>LifeEvent</rel></_opr> <ind>Olivia</ind> <ind>accident</ind> <ind href = “http://www.TrafficReport.biz/MA/report0712” /></atom>

</_head></fact>

<fact> <_head>

<atom> <_opr><rel>InsurancePolicy</rel></_opr> <ind>Olivia</ind> <ind href = “http://www.BostonInsurance.com/policy/IMA-0835” /></atom>

</_head></fact>

<fact> <_head>

<atom> <_opr><rel>customerUnder25</rel></_opr> <ind>Olivia</ind></atom>

</_head></fact>

The RuleML Initiative, July/August 2001 20

A Semantic Web Scenario in Insurance (Cont’d)

Conflict Resolution: using Meta facts (a la BRML)

<imp> <_rlab>

<ind>beginners</ind></_rlab>

. . .</imp>

<imp><_rlab>

<ind>family</ind></_rlab>

. . .</imp>

<fact> <_head>

<atom>

<_opr><rel>Overrides</rel></_opr> <ind>family</ind> <ind>beginners</ind></atom>

</_head></fact>

The RuleML Initiative, July/August 2001 21

A Semantic Web Scenario in Insurance (Cont’d)

Conflict Resolution: using Meta facts (a la BRML)

<imp> <_rlab>

<ind>beginners</ind></_rlab>

. . .</imp>

<imp> <_rlab>

<ind>family</ind></_rlab>

. . .</imp>

<fact> <_head>

<atom>

<_opr><rel>Overrides</rel></_opr> <ind>family</ind> <ind>beginners</ind></atom>

</_head></fact>

The RuleML Initiative, July/August 2001 22

Conclusions

RuleML rulebases embedded in, or referring to, XML and RDF documents.

Using RuleML in other XML namespaces (like for, say, MathML), incl.

RDF(S) namespaces (ruleml: namespace prefix)

RuleML rule premises could be DAML+OIL concept descriptions orUML object descriptions

RuleML derivation rules integrated with reaction rules, e.g. Situated LP or ECA Framework (see SpiritSoft Demo)

RuleML and RDF Query talking about a joint Rule and Query effort as part of W3C Ontology Working Group

Ontologies:The big Picture and future RuleML Versions

The RuleML Initiative, July/August 2001 23

Conclusions (Cont’d)

IJCAI 01: two tutorials, a workshop and an invited talk,August 2001, Seattle, USA

ICEC 01 (International Conference on Ecommerce) panel,November 2001, Vienna, Austria

Dagstuhl seminar on Rule Markup Techniques: February 2002, Schloss Dagstuhl, Germany

Some RuleML events