rule responder nccu taipei mar2008 talk [compatibility mode]
Post on 18-Oct-2014
2.467 views
DESCRIPTION
Prof. Harold Boley Talk in NCCUTRANSCRIPT
Microsoft PowerPoint - RuleResponder-NCCU-Taipei-Mar2008-talk [Compatibility Mode]
Rule Responder:Rule Responder:RuleML-BasedSemantic Web Ser icesSemantic Web ServicesTalk at Dept. of Computer Science, NCCUTaipei, Taiwan, 7 March 2008
Harold Boley1, Benjamin Craig1, Adrian Paschke2y , j g ,1 National Research Council of Canada
University of New Brunswick, Canada2 Bioinformatics, BIOTEC Center,, ,Technical University Dresden, Germany
Introductiont oduct o
Topic of this talk Rule Responder: Extending the Semantic Web
towards a Semantic-Pragmatic Web Service infrastructure for distributed rule-basedinfrastructure for distributed rule-basedhuman-computer collaboration
Rules employed for semi-automated decision support delegation/coordination negotiation flow
1
reaction logic
Towards a Pragmatic Webo a ds a ag at c eb1. Explicit Meta-data
vCard, PICS, Dublin C RDF IEEE LOMCore, RDF, IEEE LOM
(Learning Objects Metadata), Micro Formats, FOAF, SIOC
2. Ontologies RDFS, OWL Lite|DL|Full
3. Logic and Inference e.g. Logic Programming
Rule/Inference Engines4. Software Agents and
Web ServicesWeb Services FIPA, Semantic Web
Services, RBSLA,
2
Pragmatic Web with Two Kinds of Collaborative Agents
Interaction
3
Pragmatic Web Semiotics, the study of sign processes, includes the study of how signs are
constructed, understood, disseminated, and acted upon. Pragmatics, a basic field of linguistics today, originally had its roots in Morris's idea of
a division of signs concerned with "the relations of signs to their interpreters" ora division of signs concerned with the relations of signs to their interpreters or users.
Eugen Halton, http://www.nd.edu/~ehalton/Morrisbio.htm, 1992
Pragmatic Web Utilize the heterogenous Semantic Web resources meta data and Utilize the heterogenous Semantic Web resources, meta data and
meaning representations with intelligent agents and web-based services with the ability to understand the others intended meaning (pragmatic
competence)p ) Collaborate in a communicative conversation-based process where
content and context is interchanged in terms of messages (relation of signs) between senders and receivers (interpreters/users).
Pragmatic layer/wrapper around semantic/content e g by KQML / ACL Pragmatic layer/wrapper around semantic/content e.g. by KQML- / ACL like speech-act primitives (e.g. assert(content), retract(content), query(kb),
known under the technical term performatives) Model, negotiate and control individual and shared meanings
4
learning and knowledge adaption / updates
Pragmatic Agent WebAgent Web
R l R d P j t
5
Rule Responder Project:http://responder.ruleml.org
Benefits of Rule-Based Decision and Reaction Logic
1. Compact declarative representation of rulesp p Clear semantics Global rules which might apply in several contexts (reusability) Separation of contract rules from the application codep pp Extensibility of the rule base (without changing the interpreter)
2. Efficient, generic interpreters (rule engines) for automated rule chaining and execution of reaction rules
3. Automated conflict detection of rule conflicts Traceable and verifiable results Integrity constraints are possible Integrity constraints are possible Automated conflict resolution by rule prioritization
Rules play an important role to automatically transform contextual data,
6
derive new conclusions and decisions from existing knowledge and behaviourally act according to changed conditions or occurred events
Rule Responder Architecture (MDA)Rule Responder Architecture (MDA)1. Computational independent model (CIM) with rules,
ti l fl ( i t l i lprocesses, conversational flows (e.g. in a natural or visual language)
2. Platform independent model (PIM) which represents the rules, events and ontologies in a common (standardized)
interchange format (e g a markup language)interchange format (e.g. a markup language)
3. Platform specific model (PSM) which encodes the rule statements in the language of a specific execution environment (e.g. a rule engine / inference service or compiled code)
7
compiled code)
RuleML / Reaction RuleMLRuleML / Reaction RuleMLPlatform Independent
Rule Interchange FormatRule Interchange Format
http://ruleml orghttp://ruleml.org
http://ibis.in.tum.de/research/ReactionRuleML/
8
RuleML: Common Rule Interchange Format Rule Markup and Modeling Initiative (RuleML) (www.ruleml.org)
Standardization effort for a rule markup and modelling language, tools and applications
RuleML is the de facto open language standard for rule interchange /rule markup on the Web
Reaction RuleML (http://ibis.in.tum.de/research/ReactionRuleML/) Language family for reaction rules and complex event messaging / processing
RuleML
Derivation Rules
Reaction Rules
Integrity Constraints
Transformation Rules
Reaction RuleML
RuleML TranslatorsHomogeneous Approach
9Derivation RuleML
Integrity RuleML
RuleML Enables ...u e ab es
modellingmodellingmarkup
t l tiUML
RDFRule
translationinterchange in
RDFXMLRule interchange
executionbli ti
in XMLASCII
publicationarchiving
10
g
RuleML Language Family Derivation RuleML
11
Schema Modularization XML Schema + EBNF Syntax Full RDF compatibility via type and
role tags (akin to triple syntax); XML Schema Modularization:
Layered and uniform design The layers are organized around
increasing expressiveness levelsB fi Benefits:
- easier to learn the language and to understand their relationships
- facilitates reusability and complex language assemblies from moduleslanguage assemblies from modules
- provides certain guidance to vendors who might be interested only in a particular subset of the features
i t i t i d- easier to maintain, manage and extend in a distributed environment
12
RuleML Business Rule Example''The discount for a customer buying a product is 5.0 percent if
the customer is premium and the product is regular.'' Implies
discount
customerproduct
Implieshead
Atomop Rel discount
Var customerproduct5.0 percent
Var productInd 5.0 percent
body
premiumcustomer
bodyAnd
Atomop Rel premium
Var customer
regularproduct
Atomopr Rel regular
Var product
13
Scope of Reaction RuleMLScope o eact o u e
14
General Syntax for Reaction Rules(R ti R l ML 0 2)(Reaction RuleML 0.2)
o d objec de e /o d
l D ! l / lt ti ti / l D
15
Messages in Reaction RuleMLessages eact o u e
@mode = inbound|outbound attribute defining the type of a message @directive attribute defining the pragmatic context of the message e g one @directive attribute defining the pragmatic context of the message, e.g. one
or more FIPA ACL performatives, KQML, OWL-QL, Standard Deontic Logic norms,
< oid > the conversation id used to distinguish multiple conversations and g pconversation states
< protocol > a transport protocol such as HTTP, JMS, SOAP, Jade, Enterprise Service Bus (ESB) ...
16
< sender >< receiver > the sender/receiver agent/service of the message < content > message payload transporting a RuleML / Reaction RuleML
query, answer, or rule base
Enterprise Service BusEnterprise Service BusCommunication Middleware
++Service Object Broker
17
Mule Enterprise Service Busu e te p se Se ce us Mule ESB Open
SourceM Pl tf d Message Platform and distributed Object Broker
Staged Event Driven Architecture (SEDA)
> 30 Protocols (JMS > 30 Protocols (JMS, HTTP, SOAP )
Synchronous and AsynchronousAsynchronous Communication
Complex Message-d i E t
18
driven Event Processing (CEP)
Mule Enterprise Service Busu e te p se Se ce us
19
Use Case: Symposium Question-Answering(b it Vi t l O i ti )(by its Virtual Organization)
20
21
Use Case: Symposium Question-Answering(b it Vi t l O i ti )(by its Virtual Organization)
22
Personal Agentse so a ge ts
A personal agent assists a single person A personal agent assists a single personof an organization, (semi-autonomously) acting on his/her behalfon his/her behalf
The personal agent contains a FOAF*-like profile plus FOAF-extending rules
23* The Friend of a Friend (FOAF) project: http://www.foaf-project.org
Organizational AgentsO ga at o a ge ts
Organizational agents are used to represent Organizational agents are used to represent goals and strategies shared
by each person in the organizationby each person in the organization
Organizational agents contain rule sets that describe their organizations policies, regulations, opportunities, etc.
24
External Agentste a ge ts
External agents communicate with the public interface of the organizational agents, exchanging messages that transport queriesexchanging messages that transport queries,
answers, or complete rule sets End users employ a Web (HTTP) interface as an End users employ a Web (HTTP) interface as an
external agent of Rule Responder (currently an API-like browser interface)
Support for multiple external agents (end users) at the same time
25
Architecture - Overview
26
Rule Enginesu e g es
Prova (Prolog + Java)( g )
OO jDREW (Object Oriented Java OO jDREW (Object Oriented Java Deductive Reasoning Engine for the Web)
27
Prova
Prova is used to implement the organizational agents of Rule Responderagents of Rule Responder
Prova is also used for some personal agents Prova is also used for some personal agents
28
OO jDREW
OO jDREW is used for implementing personal agents of Rule Responder
Two modes of Rule Execution: Bottom-up (fact-directed forward reasoning) Top-down (query-directed backward reasoning)
Rule Responder primarily uses top-down Supports rules in the following formats:
POSL (Positional Slotted presentation syntax)RuleML (XML syntax, can be generated from
POSL)
29
Use Case: Symposium Organizer Use Case Sy pos u O ga e
RuleML-200x SymposiumOne organizational agent acts as the
single point of entry to the symposium Assists with planning, preparing, and
running the symposium Personal agents support chairs of the
symposiumy pProgram Chair, Publicity Chair, Panel
Chair, General Chair, etc.
30
Online DemoO e e o
http://responder.ruleml.org/
Use Case Demo Link: http://ibis.in.tum.de/projects/paw/ruleml-2007/
31
Ex : Personal Agents Knowledge BaseEx.: Personal Agent s Knowledge Base
% Sample OO jDREW rule in POSL syntax:% p j yperson(?person, ?role, ?title, ?email, ?telephone) :-
mailphone(?person ?email ?telephone)mailphone(?person, ?email, ?telephone),role(?person, ?role),
title(?person ?title)title(?person, ?title).
% Sample OO jDREW facts used by the above rule:% Sample OO jDREW facts used by the above rule:mailphone(John, [email protected], 1-555-555-5555).
l (J h P l Ch i )32
role(John, Panel Chair).title(John, PHD).
Ex : Organizational Agents Knowledge Base (Abridged)Ex.: Organizational Agent s Knowledge Base (Abridged)
% Sample Prova-like rule in POSL syntax:getContact(?conference part ?info ?contact) :-getContact(?conference_part, ?info, ?contact) :-
person(?contact, ?role, ?title, ?email, ?telephone),... .
33
Sample Query to the Organizational Agent: getContact