Rules, RIF and RuleML

Similar documents
A Review and Comparison of Rule Languages and Rule-based Inference Engines for the Semantic Web

Supporting Rule System Interoperability on the Semantic Web with SWRL

The Semantic Web Rule Language. Martin O Connor Stanford Center for Biomedical Informatics Research, Stanford University

A model driven approach for bridging ILOG Rule Language and RIF

Semantic Web Rules. Adrian Paschke. Semantic. Web. Pragmatic. Web

K-SITE RULES: Integrating Business Rules in the mainstream software engineering practice

A Teaching Strategies Engine Using Translation from SWRL to Jess

II. PREVIOUS RELATED WORK

Production Rule Representation

An Approach to Eliminate Semantic Heterogenity Using Ontologies in Enterprise Data Integeration

Semantic Web Tool Landscape

XML for Manufacturing Systems Integration

Formalization of the CRM: Initial Thoughts

Programming the Semantic Web

Business Rule Standards -- Interoperability and Portability

Semantic Web Technologies and Data Management

Developing a Web-Based Application using OWL and SWRL

Semantic Business Process Management

Secure Semantic Web Service Using SAML

Data Validation with OWL Integrity Constraints

BUSINESS VALUE OF SEMANTIC TECHNOLOGY

Semantic Web OWL. Acknowledgements to Pascal Hitzler, York Sure. Steffen Staab ISWeb Lecture Semantic Web (1)

Big Data, Fast Data, Complex Data. Jans Aasman Franz Inc

Using SWRL for Rule-Driven Applications

Artificial Intelligence

Designing a Semantic Repository

Data Validation as a Service

Semantics and Ontology of Logistic Cloud Services*

Defining a benchmark suite for evaluating the import of OWL Lite ontologies

business transaction information management

Open-Source, Cross-Platform Java Tools Working Together on a Dialogue System

Semantic Interoperability

ONTOLOGY-BASED MULTIMEDIA AUTHORING AND INTERFACING TOOLS 3 rd Hellenic Conference on Artificial Intelligence, Samos, Greece, 5-8 May 2004

How To Write A Drupal Rdf Plugin For A Site Administrator To Write An Html Oracle Website In A Blog Post In A Flashdrupal.Org Blog Post

Encoding Library of Congress Subject Headings in SKOS: Authority Control for the Semantic Web

Confident Firewall Policy Configuration Management using Description Logic

A Proposal for a Description Logic Interface

BUSINESS RULES MANAGEMENT AND BPM

CpSc810 Goddard Notes Chapter 7. Expert Systems

Ontological Modeling: Part 6

MANDARAX + ORYX An Open-Source Rule Platform

Predicate logic Proofs Artificial intelligence. Predicate logic. SET07106 Mathematics for Software Engineering

Ontology and automatic code generation on modeling and simulation

A terminology model approach for defining and managing statistical metadata

Rules and Business Rules

Open Source egovernment Reference Architecture Osera.modeldriven.org. Copyright 2006 Data Access Technologies, Inc. Slide 1

Geospatial Information with Description Logics, OWL, and Rules

Using UML State Diagrams for Visual Modeling of Business Rules

OWL Ontology Translation for the Semantic Web

The OMG Business Process Related Standards

dcml Data Center Markup Language Data Center Markup Language Framework Specification

How To Write A Policy Based Networking System For Bgg

7. Classification. Business value. Structuring (repetition) Automation. Classification (after Leymann/Roller) Automation.

The Ontological Approach for SIEM Data Repository

Sex Female Date of birth 22/07/1984 Nationality Greek. Research Committee Associate

Introduction to Web Services

USAGE OF BUSINESS RULES IN SUPPLY CHAIN MANAGEMENT

Ontology, Taxonomy and Type in Artificial Intelligence

Ontology-based Classification of

A Secure Mediator for Integrating Multiple Level Access Control Policies

No More Keyword Search or FAQ: Innovative Ontology and Agent Based Dynamic User Interface

Analysis of the Specifics for a Business Rules Engine Based Projects

Design and Implementation of a Service-Oriented Business Rules Broker

Core Enterprise Services, SOA, and Semantic Technologies: Supporting Semantic Interoperability

Logic and Reasoning in the Semantic Web (part I RDF/RDFS)

Business Process Modeling and Standardization

Combining SAWSDL, OWL DL and UDDI for Semantically Enhanced Web Service Discovery

Information Management Metamodel

Sensor Information Representation for the Internet of Things

CHAPTER 7 GENERAL PROOF SYSTEMS

A Collaborative System Software Solution for Modeling Business Flows Based on Automated Semantic Web Service Composition

SNOMED-CT

Transcription:

Rules, RIF and RuleML Rule Knowledge l Rules generalize facts by making them conditional on other facts (often via chaining through further rules) l Rules generalize taxonomies via multiple premises, n-ary predicates, structured arguments, etc. l Two uses of rules - top-down (backward-chaining) and bottom-up (forward-chaining) - represented only once l To avoid n 2 n pairwise translators: Int'l standards with 2n 2 in-and-out translators: RuleML: Rule Markup Language (work with ISO, OMG, W3C, OASIS) l Deliberation RuleML 1.0 released as a de facto standard ISO: Common Logic (incl. CGs & KIF: Knowledge Interchange Format) l Collaboration on Relax NG schemas for XCL 2 / CL RuleML OMG: Production Rules Representation (PRR), SBVR, and API4KB W3C: Rule Interchange Format (RIF) l Gave rise to open-source and commercial RIF implementations OASIS: LegalRuleML 2 The interchange approach l W3C s RDF stack is an integrated solution for encoding & interchanging knowledge Supporting OWL (DL) constrains it quite a bit E.g., preventing adoption of an OWL rule standard l There are other approaches to standardizing rule languages for knowledge exchange RuleML: Rule Markup Language, an XML approach for representing rules RIF: Rule Interchange Format, a W3C standard for exchanging rules l Neither tries to be compatible with OWL Many different rule languages l There are rule languages families: logic, logic programming, production, procedural, etc. Instances in a family may differ in their syntax, semantics or other aspects l Jess production rule language (defrule r42 (parent?a?b) (male?a) => (assert (father?a?b))) l Prolog logic programming language father(a,b) :- parent(a,b), Male (A). l Common Logic logic format (=> (and (paent?a?b) (male?a)) (father?a?b)) 1

X Interchange Format RuleML l Rather than have N 2 translators for N languages, we could Develop a common rule interchange format Let each language do import/export mappings for it l Two modern interchange formats for rules RuleML: Rule Markup Language, an XML approach for representing rules RIF: Rule Interchange Format, a W3C standard for exchanging rules l RuleML's goal: express both forward (bottom-up) and backward (top-down) rules in XML l See http://ruleml.org/ l Effort began in 2001 and has informed and been informed by W3C efforts l An open network of individuals and groups from both industry and academia Taxonomy of RuleML rules RIF from Boley et. al., RuleML 1.0: The Overarching Specification of Web Rules, 2010. http://bit.ly/ruleml l W3C Rule Interchange Format l Three dialects: Core, BLD, and PRD Core: common subset of most rule engines, a "safe" positive datalog with builtins BLD (Basic Logic Dialect): adds logic functions, equality and named arguments, ~positive horn logic PRD (Production Rules Dialect): adds action with side effects in rule conclusion l Has a mapping to RDF 2

An example of a RIF rule From http://w3.org/2005/rules/wiki/primer Prefix(rdfs <http://www.w3.org/2000/01/rdf-schema#>) Prefix(imdbrel <http://example.com/imdbrelations#>) Prefix(dbpedia <http://dbpedia.org/ontology/>) Forall?Actor?Film?Role ( If And(imdbrel:playsRole(?Actor?Role) imdbrel:roleinfilm(?role?film)) Then dbpedia:starring(?film?actor) ) ) ) Another RIF example, with guards From http://w3.org/2005/rules/wiki/primer Prefix(rdf <http://www.w3.org/1999/02/22-rdf-syntax-ns#>) Prefix(rdfs <http://www.w3.org/2000/01/rdf-schema#>) Prefix(imdbrel <http://example.com/imdbrelations#>) Prefix(dbpedia http://dbpedia.org/ontology/) Forall?Actor?Film?Role ( If And(?Actor # imdbrel:actor?film # imdbrel:film?role # imdbrel:character imdbrel:playsrole(?actor?role) imdbrel:roleinfilm(?role?film)) Then dbpedia:starring(?film?actor) ))) Rif document can contain facts Another RIF example (PRD) The following will conclude bio:mortal(phil:socrates) Prefix(bio <http://example.com/biology#>) Prefix(phil <http://example.com/philosophers#>) If bio:human(?x) Then bio:mortal(?x) ) bio:human(phil:socrates) )) From http://w3.org/2005/rules/wiki/primer Prefix(rdfs <http://www.w3.org/2000/01/rdf-schema#>) Prefix(imdbrelf <http://example.com/fauximdbrelations#>) Prefix(dbpediaf <http://example.com/fauxibdbrelations>) Prefix(ibdbrelf <http://example.com/fauxibdbrelations#>) Forall?Actor ( If Or(Exists?Film (imdbrelf:winaward(?actor?film)) Exists?Play (ibdbrelf:winaward(?actor?play)) ) Then assert(dbpediaf:awardwinner(?actor)) ) imdbrelf:winaward(robertobenigni LifeIsBeautiful) )) 3

Why do we need YAKL Non-monotonic rules l YAKL: Yet another knowledge language l Rules are good for representing knowledge l Rule idioms have powerful features that are not and can not be supported by OWL Non-monotonic rules Default reasoning Arbitrary functions, including some with with side effects etc. l Non-monotonic rules use an unprovable operator l This can be used to implement default reasoning, e.g., assume P(X) is true for some X unless you can prove hat it is not Assume that a bird can fly unless you know it can not monotonic Non-monotonic canfly(x) :- bird (X) bird(x) :- eagle(x) bird(x) :- penguin(x) eagle(sam) penguin(tux) canfly(x) :- bird (X), \+ not(canfly(x)) bird(x) :- eagle(x) bird(x) :- penguin(x) not(canfly(x)) :- penguin(x) eagle(sam) penguin(tux) 4

Default rules in Prolog l In prolog it s easy to have Default(?head :-?body ). l Expand to?head :-?body, +\ not(?head). l So default(canfly(x) :- bird(x)) l Expands to canfly(x) :- bird(x), \+(not(canfly(x))). Rule priorities l This approach can be extended to implement systems where rules have priorities l This seems to be intuitive to people used in many human systems E.g., University policy overrules Department policy The Ten Commandments can not be contravened Two Semantic Webs? Limitations l The rule inference support not integrated with OWL classifier New assertions by rules may violate existing restrictions in ontology New inferred knowledge from classification may produce knowledge useful for rules Inferred Knowledge 1 2 Ontology Classification Rule Inference 4 Inferred 3 Knowledge 5

Limitations l Existing solution: solve possible conflicts manually l Ideal solution: a single module for both ontology classification and rule inference l What if we want to combine nonmonotonic features with classical logic? l Partial Solutions: Answer set programming Externally via appropriate rule engines Summary l Horn logic is a subset of predicate logic that allows efficient reasoning, orthogonal to description logics l Horn logic is the basis of monotonic rules l DLP and SWRL are two important ways of combining OWL with Horn rules. DLP is essentially the intersection of OWL and Horn logic SWRL is a much richer language Summary (2) l Nonmonotonic rules are useful in situations where the available information is incomplete l They are rules that may be overridden by contrary evidence l Priorities are sometimes used to resolve some conflicts between rules l Representation XML-like languages is straightforward 6