Distributed Rule Responder Querying on the Semantic Web Harold Boley Institute for Information Technology National Research Council, Canada Fredericton,

Slides:



Advertisements
Similar presentations
Dr. Leo Obrst MITRE Information Semantics Information Discovery & Understanding Command & Control Center February 6, 2014February 6, 2014February 6, 2014.
Advertisements

Schema Matching and Query Rewriting in Ontology-based Data Integration Zdeňka Linková ICS AS CR Advisor: Július Štuller.
ARGUGRID Use Case using Instrumentation Mary Grammatikou National Technical University of Athens OGF 2009, Catania.
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
Sujit R Nair November 30,2009. Introduction Need / Requirement. Characteristics of current rule markup Languages. A sample Scenario of Rule Interchange.
Building and Analyzing Social Networks Web Data and Semantics in Social Network Applications Dr. Bhavani Thuraisingham February 15, 2013.
Web Service Standards Relevant to SOA
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
Deploying a Distributed Symposium Planner Through Rule Responder Harold Boley Benjamin Craig Institute for Information Technology National Research Council,
The WSMO / L / X Approach Michael Stollberg DERI – Digital Enterprise Research Institute Alternative Frameworks for Semantics in Web Services: Possibilities.
Data and Applications Security Developments and Directions Dr. Bhavani Thuraisingham The University of Texas at Dallas Secure Knowledge Management: and.
Audumbar Chormale Advisor: Dr. Anupam Joshi M.S. Thesis Defense
Distributed Semantic Web Knowledge Representation and Inferencing Harold Boley Harold Boley UNB, Faculty of Computer Science Keynote at ICDIM 2010ICDIM.
WellnessRules: The Activity Rule Responder Taylor Osmun Harold Boley Benjamin Craig Institute for Information Technology National Research Council, Canada.
1 Semantic Technologies: Diamond in the Rough? Unik Graduate Research Center Dr. Juan Miguel Gomez Universidad Carlos III de Madrid.
SOA, BPM, BPEL, jBPM.
Harold Boley, Adrian Paschke, and Tara Athan (RuleML Initiative)RuleML Initiative The 6th International Symposium on Rules: Research Based and Industry.
Evaluating Centralized, Hierarchical, and Networked Architectures for Rule Systems Benjamin Craig University of New Brunswick Faculty of Computer Science.
PEOPLE FRIEND ADVISOR BASED ON INTERESTS AND DAILY ROUTINES 1 By: Mehdi Rohaninezhad National University of Malaysia(UKM) Feb 10, 2012.
BiodiversityWorld GRID Workshop NeSC, Edinburgh – 30 June and 1 July 2005 Metadata Agents and Semantic Mediation Mikhaila Burgess Cardiff University.
SymposiumPlanner-2011: Querying Two Virtual Organization Committees Zhili Zhao, Adrian Paschke, Chaudhry Usman Ali, and Harold Boley Corporate Semantic.
Principles of the SymposiumPlanner Instantiations of Rule Responder Zhili Zhao, Adrian Paschke, Chaudhry Usman Ali, and Harold Boley Corporate Semantic.
1 Expert Finding for eCollaboration Using FOAF with RuleML Rules MCeTECH May 2006 Jie Li 1,2, Harold Boley 1,2, Virendrakumar C. Bhavsar 1, Jing.
Chapter Intranet Agents. Chapter Background Intranet: an internal corporate network based on Internet technology. Typically, an intranet can.
The 7th International Web Rule Symposium: Research Based and Industry Focused (RuleML 2013) July 11-13, 2013, Seattle, USA.
Expert Querying and Redirection with Rule Responder FEWS-2007, 12 Nov 2007 Harold Boley 1, Adrian Paschke 2 1 National Research Council of Canada University.
Social Semantic Rule Sharing and Querying in Wellness Communities Harold Boley, Taylor Osmun, Benjamin Craig Institute for Information Technology, National.
Computer Science Department UoC. Outline Emerald Framework Overview Communication pattern Software Requirements Setup sequence Cs566 project objective.
Interfacing Registry Systems December 2000.
1 Rule-based Social Networking for Expert Finding Presented by: Jie Li 1,2 Supervisors: Dr. Harold Boley 1,2 Dr. Virendrakumar C. Bhavsar 1 1 University.
Computer Science Department UoC. Outline Project Teams Key Points description Suggested Task Delegation Files Needed & previous work.
Task Achieving Agents on the World Wide Web An Introduction Sharif Univ. of Tech. Computer Eng. Dep. Semantic Web Course Mohsen Lesani 13 Ord 1374.
Distributed Information Retrieval Using a Multi-Agent System and The Role of Logic Programming.
Social Semantic Rule Sharing and Querying in Wellness Communities Harold Boley, Taylor Osmun, Benjamin Craig Institute for Information Technology, National.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Harold Boley 1, Omair Shafiq 2, Derek Smith 3, Taylor Osmun 3 1 Institute for Information Technology, National Research Council Canada, Fredericton, NB,
Rule Responder Agents in Virtual Organizations Harold Boley Benjamin Craig Institute for Information Technology National Research Council, Canada Fredericton,
©Ferenc Vajda 1 Semantic Grid Ferenc Vajda Computer and Automation Research Institute Hungarian Academy of Sciences.
1 The OO jDREW Reference Implementation of RuleML RuleML-2005, November 2005 Marcel Ball 1, Harold Boley 2, David Hirtle 1,2, Jing Mei 1,2, Bruce.
From POSL to d-POSL: Making the Positional-Slotted Language Defeasible Advisors: Nick Bassiliades, Efstratios Kontopoulos Instructor: Dr. Harold Boley.
SEMANTIC AGENT SYSTEMS Towards a Reference Architecture for Semantic Agent Systems Applied to Symposium Planning Usman Ali.
Rules, RIF and RuleML.
The future of the Web: Semantic Web 9/30/2004 Xiangming Mu.
Trustworthy Semantic Webs Dr. Bhavani Thuraisingham The University of Texas at Dallas Lecture #4 Vision for Semantic Web.
Wellness-Rules: A Web 3.0 Case Study in RuleML-Based Prolog-N3 Profile Interoperation Harold Boley Taylor Osmun Benjamin Craig Institute for Information.
Advanced Topics in the Semantic Web: Semantic Services for Business Process Management - Overview - Harold Boley Semantic Web Laboratory NRC-IIT and UNB-CS.
WG2 – Enabling Technologies Status of white paper Olaf Droegehorn, Klaus David University of Kassel Chair for Communication Technology (ComTec)
Rule Responder Agents for Distributed Query Answering Harold Boley Benjamin Craig Taylor Osmun Institute for Information Technology National Research Council,
Rule Responder: A Multi-Agent Web Platform for Collaborative Virtual Organizations Based on RuleML and OO jDREW Benjamin Craig University Of New Brunswick.
Rule Responder: An Intelligent Multi-Agent System for Collaborative Teams and Virtual Communities Benjamin Craig Harold Boley Institute for Information.
1 Open Ontology Repository initiative - Planning Meeting - Thu Co-conveners: PeterYim, LeoObrst & MikeDean ref.:
Dr. Bhavani Thuraisingham September 18, 2006 Building Trustworthy Semantic Webs Lecture #9: Logic and Inference Rules.
SEMANTIC AGENT SYSTEMS Towards a Reference Architecture for Semantic Agent Systems Applied to Symposium Planning Usman Ali UNB FCS,Fredericton, NB 1.
Deploying a Distributed Symposium Planner Through Rule Responder Benjamin Craig Harold Boley Institute for Information Technology National Research Council,
RuleML Query Answering with Personal OO jDREW Agents in Rule Responder Benjamin Craig Harold Boley Fredericton, NB National Research Council - IIT May.
From XML to DAML – giving meaning to the World Wide Web Katia Sycara The Robotics Institute
The International RuleML Symposium on Rule Interchange and Applications Visualization of Proofs in Defeasible Logic Ioannis Avguleas 1, Katerina Gkirtzou.
RuleML for the Semantic Web Harold Boley OntoWeb Kick-off WorkshopOntoWeb Kick-off Workshop, Heraklion, Greece, June 2001 Revised: 17 July 2001 (joint.
Taylor Osmun Institute for Information Technology National Research Council, Canada Fredericton, NB, Canada 1.
XML and Distributed Applications By Quddus Chong Presentation for CS551 – Fall 2001.
Social Semantic Rule Sharing and Querying in Wellness Communities Harold Boley, Taylor Osmun, Benjamin Craig, Derek Smith Institute for Information Technology,
Business Process Execution Language (BPEL) Pınar Tekin.
A Semi-Automated Digital Preservation System based on Semantic Web Services Jane Hunter Sharmin Choudhury DSTC PTY LTD, Brisbane, Australia Slides by Ananta.
OWL (Ontology Web Language and Applications) Maw-Sheng Horng Department of Mathematics and Information Education National Taipei University of Education.
Rules, RIF and RuleML.
Analyzing and Securing Social Networks
Orlando Florida RuleML 2007 Thursday, October 25, 2007
Semantic Markup for Semantic Web Tools:
Presentation transcript:

Distributed Rule Responder Querying on the Semantic Web Harold Boley Institute for Information Technology National Research Council, Canada Fredericton, NB, Canada Keynote at Keynote at ICDIM 2010ICDIM July 2010

1Outline Rule Responder Overview Rule Responder Overview Agent Types Agent Types Personal, Organizational, and External Personal, Organizational, and External Infrastructure for Realizing Agents Infrastructure for Realizing Agents Reaction RuleML Messages: Performatives Reaction RuleML Messages: Performatives Mule ESB: Communication Middleware Mule ESB: Communication Middleware Rule Engines: Prova, OO jDREW, and DR-Device Rule Engines: Prova, OO jDREW, and DR-Device Symposium Planner Use Case Symposium Planner Use Case Query Delegation and Answering Query Delegation and Answering Knowledge in Organizational and Personal Agents Knowledge in Organizational and Personal Agents Role Assignment Ontology: Topic  Personal Agent Role Assignment Ontology: Topic  Personal Agent Assisting the General, Publicity, and Program Chairs Assisting the General, Publicity, and Program Chairs Conclusion and Future Work Conclusion and Future Work

2 Overview of Rule Responder (I) Rule Responder is a multi-agent system for collaborative team and community support on the (Semantic) Web Rule Responder is a multi-agent system for collaborative team and community support on the (Semantic) Web Enables rule-based collaboration between the distributed human members  persons  of such a virtual organization Enables rule-based collaboration between the distributed human members  persons  of such a virtual organization Persons of an organization are assisted by semi-automated rule-based agents, which use rules (and various ontologies) to describe the decision and behavioral logic Persons of an organization are assisted by semi-automated rule-based agents, which use rules (and various ontologies) to describe the decision and behavioral logic

3 Overview of Rule Responder (II) Uses languages and engines of the RuleML family for rule serialization, based on logic and XML: Uses languages and engines of the RuleML family for rule serialization, based on logic and XML: Hornlog RuleML: Reasoning ( decision ) Hornlog RuleML: Reasoning ( decision ) Reaction RuleML: Interaction ( behavior ) Reaction RuleML: Interaction ( behavior ) Implemented on top of a Mule-based Enterprise Service Bus (ESB) as a Service Oriented Architecture (SOA) Implemented on top of a Mule-based Enterprise Service Bus (ESB) as a Service Oriented Architecture (SOA)

4 Personal Agents A personal agent assists a person  or a tight subteam  of an organization, semi-autonomously acting on their behalf A personal agent assists a person  or a tight subteam  of an organization, semi-autonomously acting on their behalf It works on a profile of FOAF*-like facts plus FOAF-extending rules that encode ‘routine’ knowledge of its human owner(s) It works on a profile of FOAF*-like facts plus FOAF-extending rules that encode ‘routine’ knowledge of its human owner(s) * The Friend of a Friend (FOAF) project:

5 Organizational Agents An organizational agent represents goals and strategies shared by each member of the organization An organizational agent represents goals and strategies shared by each member of the organization It contains rule* sets that describe the policies, regulations, opportunities, and expertise of its organization It contains rule* sets that describe the policies, regulations, opportunities, and expertise of its organization * For brevity the term ‘rule’ encompasses ‘fact’ (which is a rule without premises)

6 External Agents External agents exchange messages with (the public interface of) organizational agents, sending queries (requests), receiving answers (results), or interchanging complete rule sets External agents exchange messages with (the public interface of) organizational agents, sending queries (requests), receiving answers (results), or interchanging complete rule sets End users, via external agents, employ the Web (HTTP) interface of Rule Responder (currently an API-like browser interface) End users, via external agents, employ the Web (HTTP) interface of Rule Responder (currently an API-like browser interface) Support for simultaneous external agents: - Currently, end users (B2C) - Ultimately, other organizations (B2B) Support for simultaneous external agents: - Currently, end users (B2C) - Ultimately, other organizations (B2B)

7 Rule Responder as a Multi-Agent Infrastructure Rule Responder realizes virtual organizations in which an OA links between an EA and PAs Rule Responder realizes virtual organizations in which an OA links between an EA and PAs Built on top of the Mule ESB Built on top of the Mule ESB Each OA is realized with an instance of a Rule Engine Each OA is realized with an instance of a Rule Engine Each PA is realized with a Servlet using a Rule Engine  sometimes several Each PA is realized with a Servlet using a Rule Engine  sometimes several Combines ideas of multi-agent systems, distributed rule management systems, as well as service-oriented and event-driven architectures Combines ideas of multi-agent systems, distributed rule management systems, as well as service-oriented and event-driven architectures

8 Two Simple Rule Responder Virtual Organizations on ESB Infrastructure

9 Translation Between PAs' Native Languages and OA's Interchange Language Each rule engine can use its own rule language Each rule engine can use its own rule language Agents require an interchange language so they can communicate with each other Agents require an interchange language so they can communicate with each other Rule Responder uses RuleML as its interchange language Rule Responder uses RuleML as its interchange language Translations between the interchange language and the PA languages are done by the PAs Translations between the interchange language and the PA languages are done by the PAs

10 Reaction RuleML Reaction RuleML is a branch of the RuleML family that supports actions and events Reaction RuleML is a branch of the RuleML family that supports actions and events When two agents want to communicate, each others’ Reaction RuleML messages are sent through the ESB When two agents want to communicate, each others’ Reaction RuleML messages are sent through the ESB The ESB carries RuleML queries (requests), answers (results), and rule bases to/from agents The ESB carries RuleML queries (requests), answers (results), and rule bases to/from agents

11 Example Reaction RuleML Message <RuleML xmlns=" <RuleML xmlns=" xmlns:xsi=" xmlns:xsi=" xsi:schemaLocation=" xsi:schemaLocation=" xmlns:ruleml2010=" xmlns:ruleml2010=" RuleML-2010 RuleML-2010 esb esb User User getContact getContact ruleml2010_PanelChair ruleml2010_PanelChair update update Contact Contact

12 Message Performatives The attribute directive="..." specifies the pragmatic performative The attribute directive="..." specifies the pragmatic performative Message exchange/interaction protocols Message exchange/interaction protocols Rule Responder Performatives Rule Responder Performatives In tradition of KQML and FIPA-ACL In tradition of KQML and FIPA-ACL Currently implemented: Query and Answer Currently implemented: Query and Answer Retract and Update requests planned in collaboration with W3C RIF-PRD / OMG PRR Retract and Update requests planned in collaboration with W3C RIF-PRD / OMG PRR

13 Agent Communication Protocols WSDL-like communication protocols: In-Only In-Only Message is sent from agent 1 to agent 2 ; then agent 2 executes performative Message is sent from agent 1 to agent 2 ; then agent 2 executes performative Request-Response Request-Response Performs above In-Only; then agent 2 sends response to agent 1 Performs above In-Only; then agent 2 sends response to agent 1 Request-Response-Acknowledge Request-Response-Acknowledge Performs Request-Response; then agent 1 sends an acknowledgement to agent 2 Performs Request-Response; then agent 1 sends an acknowledgement to agent 2 Workflows Workflows Generalizes the above protocols to allow other compositions of message interchange between agents Generalizes the above protocols to allow other compositions of message interchange between agents

14 Communication Middleware Mule Enterprise Service Bus (ESB) Mule Enterprise Service Bus (ESB) Mule* is used to create communication end points at each personal and organizational agent of Rule Responder Mule* is used to create communication end points at each personal and organizational agent of Rule Responder Mule supports around 50 transport protocols (includingHTTP, JMS, JDBC,SOAP) Mule supports around 50 transport protocols (including HTTP, JMS, JDBC, and SOAP) Rule Responder currently uses HTTP and JMS as transport protocols Rule Responder currently uses HTTP and JMS as transport protocols * Mule – The open source SOA infrastructure:

15 Rule Engines Prova: Prolog + Java Prova: Prolog + Java OO jDREW: Object Oriented java Deductive Reasoning Engine for the Web OO jDREW: Object Oriented java Deductive Reasoning Engine for the Web DR-Device: Defeasible Logic Reasoner for the Semantic Web DR-Device: Defeasible Logic Reasoner for the Semantic Web

16 Prova Prova is mainly used to realize the organizational agents of Rule Responder Prova is mainly used to realize the organizational agents of Rule Responder It implements Reaction RuleML for agent interaction (event-condition-action rules) It implements Reaction RuleML for agent interaction (event-condition-action rules)

17 OO jDREW OO jDREW is used to realize the personal agents of Rule Responder OO jDREW is used to realize the personal agents of Rule Responder It implements Hornlog RuleML for agent reasoning (Horn logic rules) It implements Hornlog RuleML for agent reasoning (Horn logic rules) Supports rules in two formats: Supports rules in two formats: POSL: Positional Slotted presentation syntax POSL: Positional Slotted presentation syntax RuleML: XML interchange syntax (can be generated from POSL: ) RuleML: XML interchange syntax (can be generated from POSL: )

DR-Device Reasons about RDF metadata over multiple Web sources using defeasible logic rules Reasons about RDF metadata over multiple Web sources using defeasible logic rules Implemented on top of CLIPS production rule system (bottom-up execution, derives all conclusions as an extension of the rule base + fact base) Implemented on top of CLIPS production rule system (bottom-up execution, derives all conclusions as an extension of the rule base + fact base)CLIPS Three rule syntaxes Three rule syntaxes D-POSL, a defeasible extension of human-oriented POSL syntax D-POSL, a defeasible extension of human-oriented POSL syntax Native CLIPS-like (LISP-like) language Native CLIPS-like (LISP-like) language DR-RuleML, a defeasible extension of OO RuleML/XML serialization DR-RuleML, a defeasible extension of OO RuleML/XML serializationRuleML Highly expressive semantics Highly expressive semantics Multiple rule types of defeasible logic (strict, defeasible, defeaters) Multiple rule types of defeasible logic (strict, defeasible, defeaters) Both classical (strong) negation and negation-as-failure Both classical (strong) negation and negation-as-failure Conflicting literals, i.e. derived formulas that mutually exclude each other Conflicting literals, i.e. derived formulas that mutually exclude each other Import of RDF and RuleML from the Web Import of RDF and RuleML from the Web RDF taxonomies and instances as input facts for the defeasible logic program RDF taxonomies and instances as input facts for the defeasible logic program Defeasible logic programs in RuleML Defeasible logic programs in RuleML Export of answers and proofs to the Web Export of answers and proofs to the Web The answer sets of the defeasible logic program as an RDF document The answer sets of the defeasible logic program as an RDF document The proof tree of each answer in a RuleML extension for proofs The proof tree of each answer in a RuleML extension for proofs 18

19 Use Case: Symposium Planner RuleML-20xy Symposia RuleML-20xy Symposia An external agent linked to an organizational agent acts as the single point of entry to support the symposium organization: An external agent linked to an organizational agent acts as the single point of entry to support the symposium organization: Currently, query answering about the symposium Currently, query answering about the symposium Ultimately, preparing and running the symposium Ultimately, preparing and running the symposium Personal agents have assisted symposium chairs since 2007 (deployed as Q&A since 2008) Personal agents have assisted symposium chairs since 2007 (deployed as Q&A since 2008)Q&A General Chair, Publicity Chair, Program Chair, Panel Chair, etc. General Chair, Publicity Chair, Program Chair, Panel Chair, etc.

20 EA: External Agent OA General Chair PA Program Chair Profile User Challenge Chair Profile User Rule Responder Architecture PA: Personal Agent OA: Organizational Agent Virtual Organization Publicity Chair PA Liaison Chair PA Program Chair PA Challenge Chair PA Liaison Chair Profile User Publicity Chair Profile User General Chair Profile User Enquiry User

21 Online Use Case Demos Rule Responder: Rule Responder: Virtual organizations for RuleML-2007/.../2010 Symposia: Virtual organizations for RuleML-2007/.../2010 Symposia: External agents: Each an HTTP browser interface using Reaction RuleML: External agents: Each an HTTP browser interface using Reaction RuleML: Organizational agents: Each supporting one symposium as a whole Organizational agents: Each supporting one symposium as a whole Personal agents: Supporting all Chair subteams of a symposium Personal agents: Supporting all Chair subteams of a symposium Online

22 Query Delegation The organizational agent delegates queries to appropriate personal agents The organizational agent delegates queries to appropriate personal agents Tasks for the symposium organization are managed via a role assignment matrix Tasks for the symposium organization are managed via a role assignment matrix Defined here by an OWL Lite ontology (alternatives: RDFS, RuleML,...) Defined here by an OWL Lite ontology (alternatives: RDFS, RuleML,...) Assigns (meta)topics to PAs within the virtual organization:... see next slide... Assigns (meta)topics to PAs within the virtual organization:... see next slide...

23 Role Assignment Ontology Publicity Chair Topics Personal Agents Sponsoring Publicity Chair... Liaison Chair General Chair Challenge Chair Challenge Demos Media Partners Sponsors Responsible Accountable Press Release Challenge Chair Liaison Chair General Chair Metatopics Registration Visa Letter... Program Chair Submissions Presentations... Properties:

24 Multiple Query Answers by PAs Some queries have more than one answer Some queries have more than one answer The PA will send the answers one at a time to the OA The PA will send the answers one at a time to the OA Interleaving backtracking and transmission Interleaving backtracking and transmission When the PA finds no more answers, it sends an end-of-transmission message When the PA finds no more answers, it sends an end-of-transmission message

25 Knowledge Shared Between Personal Agents Rules can be shared among personal agents Rules can be shared among personal agents Rules that apply to all PAs can be lifted to the OA level Rules that apply to all PAs can be lifted to the OA level... see next slide see next slide...

26 Symposium OA Knowledge Base % Sample Prova rule stored in the OA: getContact(XID,Topic,Request, person(Role,Name,Title, ,Telephone)) :- person(Role,Name,Title, ,Telephone)) :- % Retrieve the responsible PA (Agent) for the Topic % Retrieve the responsible PA (Agent) for the Topic assigned(XID,Agent,Topic,ruleml2009_responsible), assigned(XID,Agent,Topic,ruleml2009_responsible), % Query contact information from that PA % Query contact information from that PA sendMsg(XID,esb,Agent,"query", sendMsg(XID,esb,Agent,"query", person(Role,Name,Title, ,Telephone) ), person(Role,Name,Title, ,Telephone) ), % Receive the answer(s) % Receive the answer(s) rcvMult(XID,esb,Agent,"answer", rcvMult(XID,esb,Agent,"answer", substitutions(Role,Name,Title, ,Telephone)). substitutions(Role,Name,Title, ,Telephone)).

General Chair PA Knowledge Base: Facts % OA rule delegates queries to PAs that use FOAF-like facts % such as to the General Chair PA that uses this fact: person( symposiumChair[ ruleML_2009, general ], foafname[ firstName[ Adrian ], lastName[ Paschke ]], foaftitle[ title[ Dr ]], foafmbox[ [ adrianDOTpaschkeATbiotecDOTtuDASHdresdenDOTde ]], exphones[ telephoneNumbers[ office[ ]]]). % Sample query in RuleML syntax:... see next slide... 27

28 Sample Message to Organizational Agent <RuleML xmlns=" xmlns:xsi=" xmlns:xsi=" xsi:schemaLocation=" xsi:schemaLocation=" xmlns:ruleml2007=" xmlns:ruleml2007=" <oid><Ind>RuleML-2009</Ind></oid><protocol><Ind>esb</Ind></protocol><sender><Ind>User</Ind></sender><content><Atom><Rel>getContact</Rel><Ind>ruleml2009_GeneralChair</Ind><Ind>update</Ind><Var>Contact</Var></Atom></content></Message></RuleML> Online Query Selection: General Chair Contact

29 Architecture - Execution

30 Architecture - Execution

31 Architecture - Execution

32 Architecture - Execution

33 Architecture - Execution

34

35

36 Sample Message to Publicity Chair PA (I) <content> sponsor sponsor contact contact Mark Mark JBoss JBoss results results Level Level Benefits Benefits DeadlineResults DeadlineResults performative performative Action Action </content> Online Query Selection: Publicity Chair Sponsoring English Description: Mark from JBoss would like to sponsor RuleML with $500. What level, benefits, and deadline results will this provide, and what kind of action should be taken ?

37

38 Publicity Chair PA Knowledge Base: Rules % Rule stored in the Publicity Chair’s PA: sponsor(contact[?Name,?Organization], ?Amount:integer, results[?Level,?Benefits,?DeadlineResults], performative[?Action]) :- requestSponsoringLevel(?Amount:integer,?Level), requestBenefits(?Level,?Benefits), checkDeadline(?DeadlineResults), checkAction(?Action,?Level,?Amount:integer). Yellow: Query other rules

Publicity Chair PA Knowledge Base: 1 st & 2 nd Rule Premise requestSponsoringLevel(?Amount:integer,?Level), % Satisfied by presponsor, bronze,..., emerald rule: requestSponsoringLevel(?Amount:integer,?Level) :- requestSponsoringLevel(?Amount:integer,?Level) :- sponsoringLevel(rank5,?Level,us$[?EmeraldAmount:integer]), greaterThanOrEqual(?Amount:integer, sponsoringLevel(rank5,?Level,us$[?EmeraldAmount:integer]), greaterThanOrEqual(?Amount:integer, ?EmeraldAmount:integer). ?EmeraldAmount:integer).requestBenefits(?Level,?Benefits), % Satisfied by rule: requestBenefits(?Level,?Benefits) :- benefits(?Level,?Benefits). 39 Pink: Query facts

Publicity Chair PA Knowledge Base: 3 rd & 4 th Rule Premise checkDeadline(?DeadlineResults), % Satisfied by rule: checkDeadline(passed[deadline]):-date(?X:integer),deadline(sponsoring,?D:integer),greaterThan(?X:integer,?D:integer).checkAction(?Action,?Level,?Amount:integer). checkAction(?Action,?Level,?Amount:integer) :- actionPerformed(?Action,?Level,?Amount:integer). What happens if we now provide a $5000 sponsorship?... see next slide... 40

41 Sample Message to Publicity Chair PA (II) sponsor sponsor contact contact Mary Mary Super Super results results Level Level Benefits Benefits DeadlineResults DeadlineResults performative performative Action Action Online Query Selection: Publicity Chair Sponsoring (edited) English Description: Mark from JBoss would like to sponsor RuleML with $5000. What level, benefits, and deadline results will this provide, and what kind of action should be taken?

42 42

Publicity Chair PA (RuleML-2010): DR-Device Knowledge in D-POSL Defeasible rules (with ‘:=’-infix, ‘:’-label, and ‘->’-slots) r1: suggested_level(sponsor->?X, level->preSponsor) := offer(sponsor->?X, amount->?Y), ?Y >= 1. r2: suggested_level(sponsor->?X, level->bronze) := offer(sponsor->?X, amount->?Y), ?Y >= 500. r3: suggested_level(sponsor->?X, level->silver) := offer(sponsor->?X, amount->?Y), ?Y >= r4: suggested_level(sponsor->?X, level->gold) := offer(sponsor->?X, amount->?Y), ?Y >= r5: suggested_level(sponsor->?X, level->platinum) := offer(sponsor->?X, amount->?Y), ?Y >= r6: suggested_level(sponsor->?X, level->emerald) := offer(sponsor->?X, amount->?Y), ?Y >= Integrity rule (denial of multiple levels) Integrity rule (denial of multiple levels) := suggested_level(sponsor->?X, level->?Y), suggested_level(sponsor->?X, level->?Z), ?Y \= ?Z. 43 Priority order (between labeled rules) r6 > r5 > r4 > r3 > r2 > r1.

Program Chair PA (RuleML-2010) Contains knowledge about tracks of RuleML-2010 Contains knowledge about tracks of RuleML-2010 Track title, Track topics, Track chairs Track title, Track topics, Track chairs Answers queries for finding a relevant track for a paper Answers queries for finding a relevant track for a paper Uses a paper’s keywords within (the strings of) the track titles and topics Uses a paper’s keywords within (the strings of) the track titles and topics Rule-based heuristic scoring functions Rule-based heuristic scoring functions 44

Program Chair PA: Find Relevant Tracks … findTracks findTracks defeasibility; rule exceptions </Ind> ScoredTrack ScoredTrack </Message> 45 <Expr><Fun>track</Fun> Rules and Norms </Ind><Expr><Fun>relevance</Fun> </Expr></Expr> Query Answer CfP

Program Chair: OA-PA Interface findTracks(XID, KeywordString, ScoredTrack) :- % Parse string of keywords into a list of keywords string_to_keywords(KeywordString,Keywords), % Find the Program Chair Personal Agent assigned(XID,Agent,ruleml2010_ProgramChair,ruleml2010_responsible), % Send message querying for tracks relevant to a list of keywords sendMsg(XID,esb,Agent,"query",score_tracks(Keywords,ScoredTrack)), % Receive relevant tracks with a relevance score rcvMult(XID,esb,Agent,"answer",substitutions(ScoredTrack)). 46

Program Chair PA: Knowledge Base track("Rules and Norms":string, % Track title [ % Track topics [ % Track topics "Methodologies for modeling regulations using "Methodologies for modeling regulations using both ontologies and rules":string, both ontologies and rules":string, "Defeasibility and norms - modeling rule exceptions "Defeasibility and norms - modeling rule exceptions and priority relations among rules":string, and priority relations among rules":string, …], …], [foafname[firstName[Thomas],lastName[Gordon]], % Track chairs [foafname[firstName[Thomas],lastName[Gordon]], % Track chairs foafname[firstName[Guido],lastName[Governatori]]]). foafname[firstName[Guido],lastName[Governatori]]]). score_tracks(?Keys,track[?Track,relevance[?Score]]) :- track(?Track,?Topics,?), % For each track (backtracking) track(?Track,?Topics,?), % For each track (backtracking) score_track(?Keys,?Track,?Topics,?Score), % Score track relevance score_track(?Keys,?Track,?Topics,?Score), % Score track relevance greaterThan(?Score,0:real). % Return track with positive score greaterThan(?Score,0:real). % Return track with positive score 47 Use a heuristic function See next slide

48 Program Chair PA: Scoring Function* * Slides courtesy of Nick Bassiliades, leading joint project:

49 Conclusion (I) Rule Responder was implemented & tested for various use cases ( ) and deployed for RuleML-2008/... /2010 Q&A Rule Responder was implemented & tested for various use cases ( ) and deployed for RuleML-2008/... /2010 Q&A Its organizational agents delegate external queries to topic-assigned personal agents Its organizational agents delegate external queries to topic-assigned personal agents It couples rule engines Prova & OO jDREW & DR-Device (& Euler) via Mule middleware and RuleML 0.91 XML interchange format It couples rule engines Prova & OO jDREW & DR-Device (& Euler) via Mule middleware and RuleML 0.91 XML interchange formatProvaOO jDREWDR-DeviceEulerRuleML 0.91ProvaOO jDREWDR-DeviceEulerRuleML 0.91 Without a Reaction Rule Dialect, W3C RIF could not be used for behavioral Responder logic Without a Reaction Rule Dialect, W3C RIF could not be used for behavioral Responder logic

50 Conclusion (II) Current system is reusable on all levels: Symposium Planner, Rule Responder, (D-)POSL, RuleML, OO jDREW, DR-Device, Prova, and Mule Current system is reusable on all levels: Symposium Planner, Rule Responder, (D-)POSL, RuleML, OO jDREW, DR-Device, Prova, and Mule RuleML Responder Technical Group jointly with Adrian Paschke, Alexander Kozlenkov, Ben Craig, Taylor Osmun, Derek Smith, Irfan ul Haq, Omair Shafiq, Mahsa Kiani, Nick Bassiliades, Stratos Kontopoulos, and Kalliopi Kravari RuleML Responder Technical Group jointly with Adrian Paschke, Alexander Kozlenkov, Ben Craig, Taylor Osmun, Derek Smith, Irfan ul Haq, Omair Shafiq, Mahsa Kiani, Nick Bassiliades, Stratos Kontopoulos, and Kalliopi Kravari Adrian PaschkeAlexander KozlenkovNick Bassiliades Adrian PaschkeAlexander KozlenkovNick Bassiliades Integrated another ‘partner engine’, Euler, for recent use cases, e.g. in WellnessRules2 and PatientSupporter (generating RuleML/XML from query menus for POSL and N3). More welcome! Integrated another ‘partner engine’, Euler, for recent use cases, e.g. in WellnessRules2 and PatientSupporter (generating RuleML/XML from query menus for POSL and N3). More welcome!EulerWellnessRules PatientSupporterEulerWellnessRules PatientSupporter

51 Future Work (I) Communication between Personal Agent and Human Owner Communication between Personal Agent and Human Owner The PA may need to interact with its Human Owner The PA may need to interact with its Human Owner Formal interaction between PAs and their owners can employ Reaction RuleML s (SMTP) Formal interaction between PAs and their owners can employ Reaction RuleML s (SMTP) Semi-formal interaction could use Controlled English Semi-formal interaction could use Controlled English Query Decomposition Query Decomposition Queries decomposed into subqueries, delegated to multiple PAs, and partial answers re-integrated Queries decomposed into subqueries, delegated to multiple PAs, and partial answers re-integrated Applications in information (data and knowledge) integration Applications in information (data and knowledge) integration

52 Future Work (II) Centralized, Distributed-Hierarchical (here), and Distributed-Networked (future) query answering Centralized, Distributed-Hierarchical (here), and Distributed-Networked (future) query answering Centralized: Avoids all communication overhead Centralized: Avoids all communication overhead Distributed: More fault-tolerant and typically faster Distributed: More fault-tolerant and typically faster Alternative agents when an agent becomes defunct Alternative agents when an agent becomes defunct Hierarchical: OA may sometime become a bottleneck Hierarchical: OA may sometime become a bottleneck Networked: Peer-to-peer exchange between PAs Networked: Peer-to-peer exchange between PAs From centralized to distributed knowledge maintenance From centralized to distributed knowledge maintenance Easier to keep distributed rules up-to-date Easier to keep distributed rules up-to-date Discussed in Technical Report by Ben Craig and explored in PhD project by Mahsa Kiani Discussed in Technical Report by Ben Craig and explored in PhD project by Mahsa KianiTechnical ReportTechnical Report