SlideShare a Scribd company logo
Rule Responder:
    RuleML-Based
    Semantic Web Ser ices
                 Services
    Talk at Dept. of Computer Science, NCCU
    Taipei, Taiwan, 7 March 2008

Harold Boley1, Benjamin Craig1, Adrian Paschke2
            y       j       g
1 National Research Council of Canada

University of New Brunswick, Canada
2 Bioinformatics, BIOTEC Center,
                ,               ,
Technical University Dresden, Germany
Introduction
  t oduct o
Topic of this talk
    Rule Responder: Extending the Semantic Web
    towards a Semantic-Pragmatic Web Service
    infrastructure for distributed rule-based
    human-computer collaboration

Rules employed for semi-automated
    decision support
    delegation/coordination
    negotiation flow
    reaction logic
                                                 1
Towards a Pragmatic Web
      o a ds     ag at c eb
1.    Explicit Meta-data
         vCard, PICS, Dublin
         Core, RDF IEEE LOM
         C     RDF,
         (Learning Objects
         Metadata), Micro
         Formats, FOAF, SIOC …
2.    Ontologies
         RDFS, OWL Lite|DL|Full
3.    Logic and Inference
         e.g. Logic Programming
         Rule/Inference Engines
4.    Software Agents and
      Web 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 quot;the relations of signs to their interpreters or
                                    the                                interpretersquot;
users. “
                            Eugen Halton, http://www.nd.edu/~ehalton/Morrisbio.htm, 1992
Pragmatic Web
     Utilize the heterogenous Semantic Web resources meta data and
                                               resources,
    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
                                                           e.g.    KQML-
    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
        learning and knowledge adaption / updates

                                                                                           4
Pragmatic
                              Agent Web




 R l R
 Rule Responder P j t
              d Project:
http://responder.ruleml.org
                                          5
Benefits of Rule-Based Decision and
 Reaction Logic
1.   Compact declarative representation of rules
        p                  p
       Clear semantics
       Global rules which might apply in several contexts (reusability)
       Separation of contract rules from the application code
          p                                     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
       Automated conflict resolution by rule prioritization

     Rules play an important role to automatically transform contextual data,
     derive new conclusions and decisions from existing knowledge and
     behaviourally act according to changed conditions or occurred events
                                                                            6
Rule Responder Architecture (MDA)
1.   Computational independent model (CIM) with rules,
                        ti
     processes, conversational fl
                             l flows (     in
                                     (e.g. i a natural or visual
                                                 t l       i   l
     language)

2.   Platform independent model (PIM) which represents the
     rules, events and ontologies in a common (standardized)
     interchange format (e g a markup language)
                        (e.g.

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
RuleML / Reaction RuleML
    Platform Independent
    Rule Interchange Format

               http://ruleml.org
               http://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           Reaction           Integrity          Transformation
          Rules               Rules            Constraints             Rules

                                          RuleML
                                        Translators
    Homogeneous Approach
                                    Reaction RuleML
                                         Integrity
                                          RuleML
                                   Derivation RuleML
                                                                                  9
RuleML Enables ...
 ue      ab es

         modelling
           markup        UML
         translation
         t    l ti       RDF
Rule    interchange in   XML
          execution      ASCII
         publication
            bli ti
          archivingg
                                 10
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 levels
      Benefits:
      B      fi
  -   easier to learn the language and to
      understand their relationships
  -   facilitates reusability and complex
      language assemblies from modules
  -   provides certain guidance to
      vendors who might be interested
      only in a particular subset of the
      features
  -   easier t maintain, manage and
          i to      i t i              d
      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>
                                    Implies
   <head>
                                      head
     <Atom>
                                            Atom
        <op><Rel>discount</Rel></op>
                                                op       Rel     discount
         <Var>customer</Var>
                                                         Var     customer
         <Var>product</Var>
                                                         Var     product
         <Ind>5.0 percent</Ind>
                                                         Ind     5.0 percent
     </Atom>
   </head>
   <body>
                                      body
     <And>
                                            And
       <Atom>
                                                Atom
         <op><Rel>premium</Rel></op>
                                                   op      Rel     premium
         <Var>customer</Var>
                                                           Var     customer
       </Atom>
       <Atom>
                                                Atom
         <op><Rel>regular</Rel></op>
                                                   opr     Rel     regular
         <Var>product</Var>
                                                           Var     product
       </Atom>
     </And>
     </A d>
   </body>
 </Implies>
                                                                            13
Scope o Reaction RuleML
      of eact o   ue




                          14
General Syntax for Reaction Rules
(Reaction R l ML 0 2)
(R   ti RuleML 0.2)
          <Rule style=quot;activequot; evaluation=quot;strongquot;>
             <label> <!-- metadata --> </label>
             <scope> <!-- scope --> </scope>
             <qualification> <!-- qualifications --> </qualification>
             <oid> <!-- object identifier --> </oid>
              od         objec de      e       /o d
             <on> <!-- event --> </on>
             <if> <!-- condition --> </if>
             <then> <!-- conclusion --> </then>
             <do> <!-- action --> </do>
             <after> <!-- postcondition --> </after>
             <else> <!-- else conclusion --> </else>
             <elseDo> <!-- else/alternative action --> </elseDo>
                l D       ! l / lt        ti     ti      / l D
             <elseAfter> <!-- else postcondition --> </elseAfter>
          </Rule>


                                                                  15
Messages in Reaction RuleML
 essages     eact o   ue
<Message mode=quot;outboundquot; directive=quot;ACL:informquot;>
       <oid> <!-- conversation ID--> </oid>
       <protocol> <!-- transport protocol --> </protocol>
       <sender> <!-- sender agent/service --> </sender>
       <content> <!-- message payload --> </content>
</Message>

  @mode = inbound|outbound – attribute defining the type of a message
  @directive – attribute defining the pragmatic context of the message, e g one
                                                               message e.g.
  or more FIPA ACL performatives, KQML, OWL-QL, Standard Deontic Logic
  norms, …
  < oid > – the conversation id used to distinguish multiple conversations and
                                              g          p
  conversation states
  < protocol > – a transport protocol such as HTTP, JMS, SOAP, Jade,
  Enterprise Service Bus (ESB) ...
  < sender >< receiver > – the sender/receiver agent/service of the message
  < content > – message payload transporting a RuleML / Reaction RuleML
  query, answer, or rule base                                                  16
Enterprise Service Bus
Communication Middleware
             +
   Service Object Broker




                           17
Mule Enterprise Se ce Bus
 u e te p se Service us
                            Mule ESB Open
                            Source
                            Message Pl tf
                            M          Platform and
                                                  d
                            distributed Object
                            Broker
                            Staged Event Driven
                            Architecture (SEDA)
                            > 30 Protocols (JMS,
                                             (JMS
                            HTTP, SOAP …)
                            Synchronous and
                            Asynchronous
                            Communication
                            Complex Message-
                            driven E
                            di      Eventt
                            Processing (CEP)
                                              18
Mule Enterprise Se ce Bus
 u e te p se Service us




                            19
Use Case: Symposium Question-Answering
(by it Vi t l Organization)
(b its Virtual O   i ti )




                                     20
21
Use Case: Symposium Question-Answering
(by it Vi t l Organization)
(b its Virtual O   i ti )




                                     22
Personal Agents
 e so a ge ts

 A personal agent assists a single person
 of an organization, (semi-autonomously) acting
 on his/her behalf


 The personal agent contains a FOAF*-like profile
 plus FOAF-extending rules



 * The Friend of a Friend (FOAF) project: http://www.foaf-project.org
                                                                 23
Organizational Agents
O ga at o a ge ts

 Organizational agents are used to represent
 goals and strategies shared
 by each person in the organization


 Organizational agents contain rule sets that
 describe their organizations’ policies,
 regulations, opportunities, etc.


                                                24
External Agents
  te a ge ts


 External agents communicate with the public
 interface of the organizational agents,
 exchanging messages that transport queries
                                       queries,
 answers, or complete rule sets
 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 Engines
 ue    g es

 Prova (Prolog + Java)
       (     g       )

 OO jDREW (Object Oriented Java
 Deductive Reasoning Engine for the Web)




                                       27
Prova

 Prova is used to implement the organizational
 agents of Rule Responder

 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 Sy pos u O ga e
    Case: Symposium Organizer
 RuleML-200x Symposium
   One 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
    y p
   symposium
     Program Chair, Publicity Chair, Panel
     Chair, General Chair, etc.

                                             30
Online Demo
O    e e o
 http://responder.ruleml.org/

 Use Case Demo Link:
 http://ibis.in.tum.de/projects/paw/ruleml-2007/




                                                   31
Ex : Personal Agent’s Knowledge Base
 Ex.:          Agent s


% Sample OO j
        p      jDREW rule in POSL syntax:
                                      y
person(?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:
mailphone(John, john@email.com, 1-555-555-5555).
role(John, P
    l (J h Panel Ch i )
                l Chair).
title(John, PHD).                             32
Ex.:
 Ex : Organizational Agent’s Knowledge Base (Abridged)
                     Agent s



% Sample Prova-like rule in POSL syntax:
getContact(?conference_part, ?info,
getContact(?conference part ?info ?contact) :-
person(?contact, ?role, ?title, ?email, ?telephone),
... .




                                                         33
Sample Query to the Organizational Agent: getContact
 <RuleML xmlns=quot;http://www.ruleml.org/0.91/xsdquot;
 xmlns:xsi=quot;http://www.w3.org/2001/XMLSchema-instancequot;
 xsi:schemaLocation=quot;http://www.ruleml.org/0.91/xsd
 http://ibis.in.tum.de/research/ReactionRuleML/0.2/rr.xsdquot;
 htt //ibi i t      d /       h/R   ti R l ML/0 2/      dquot;
 xmlns:ruleml2007=quot;http://ibis.in.tum.de/projects/paw#quot;>

      <Message mode=quot;outboundquot; directive=quot;query-syncquot;>
            g                             q y y
             <oid><Ind>RuleML-2007</Ind></oid>
             <protocol><Ind>esb</Ind></protocol>
             <sender><Ind>user</Ind></sender>
               <content>
                      <Atom>
                            <Rel>getContact</Rel>
                            <Ind>ruleml2007_Challenge</Ind>
                            <Ind>ruleml2007 Challenge</Ind>
                            <Ind>update</Ind>
                            <Var>Contact</Var>
                      </Atom>
               </content>
      </Message>
                                                              34
 </RuleML>
Architecture - Execution




                           35
Architecture - Execution




                           36
Architecture - Execution




                           37
Architecture - Execution




                           38
Architecture - Execution




                           39
40
41
Sample Query to the Publicity Chair: sponsor (1)
 <content>
     t t
  <Atom>
     <Rel>sponsor</Rel>
     <Expr>
       Expr
       <Fun>contact</Fun>
       <Ind>ben</Ind>
       <Ind>nrc</Ind>
     </Expr>
     </E    >
      <Ind type=quot;integerquot;>500</Ind>
      <Expr>
        <Fun>results</Fun>
        <Var>Level</Var>
        <Var>Benefits</Var>
        <Var>DeadlineResults</Var>
      </Expr>
      <Expr>
        <Fun>performative</Fun>
        <Var>Action</Var>
      </Expr>
  </Atom>
                                                   42
 </content>
43
Sample Query to the Publicity Chair: sponsor (2)
<content>
    t t
 <Atom>
    <Rel>sponsor</Rel>
    <Expr>
        p
      <Fun>contact</Fun>
      <Ind>ben</Ind>
      <Ind>nrc</Ind>
    </Expr>
     <Ind type=quot;integerquot;>5000</Ind>
     <Expr>
       <Fun>results</Fun>
       <Var>Level</Var>
       <Var>Benefits</Var>
       <Var>DeadlineResults</Var>
     </Expr>
      /E
     <Expr>
       <Fun>performative</Fun>
       <Var>Action</Var>
        Var Action /Var
     </Expr>
 </Atom>
                                                   44
</content>
45
Conclusion ( )
Co c us o (1)

 Rule Responder can be used to implement
 a wide range of use cases that require an
 intelligent, semi-automated decision layer
              semi automated
 The middleware of Rule Responder allows
 deployment of multiple use cases running
 concurrently
 Reusability on all levels:
 Symposium Organizer, Rule Responder,
 POSL, RuleML, OO jDREW, Prova, Mule
                       j

                                         46
Conclusion ( )
Co c us o (2)
 Develops an effective methodology and an efficient infrastructure to
 interchange and reuse knowledge on the Web (
          g                    g              (ontologies and rules)
                                                      g               )
 and communicate contextual actions
 Adds a pragmatic rule-based layer (Pragmatic Web),
    defines the rules for using information resources and ontologies to support
                              g                                  g
    human agents in their decisions and react partially self-autonomously by
    means of automated agents or services
 Blends and tightly combines the ideas of multi-agent systems,
 distributed rule management systems, and service oriented and event
                               systems
 driven architectures
 Addresses real-world software engineering needs for a highly
 distributed, open, interoperable,
 distributed open interoperable efficient and scalable Semantic Web
 service and agent infrastructure
     Design Science Research Approach



                                                                            47
Conclusion (3)
Co c us o
 Demonstrates the interoperation of various distributed platform-specific
 rule execution environments based on Reaction RuleML as a platform-
                                                                p
 independent rule interchange format interchanged over an enterprise
 service bus as transport middleware
 Applies rule-based technologies to the management of virtual
 organizations and collaborative teams
 Applies negotiation and distributed coordination mechanisms of rule-
 based complex event processing and rule-based workflow like reaction
 rule patterns
   l    tt
 Demonstrates the integration and interoperation of rule standards
 (RuleML), Object-Oriented programming (Java) and Semantic Web
 (RDF, RDFS
 (RDF RDFS, OWL) and metadata standards (e g iCal vCard FOAF)
                                               (e.g. iCal, vCard,




                                                                      48
Applications and Next Steps
Applications of the Pragmatic Agent Web and the Rule Responder
middleware in different projects
   Rule Responder: http://responder.ruleml.org/
   Reaction RuleML: http://ibis.in.tum.de/research/ReactionRuleML/
   Prova Agent Architecture: http://www.prova.ws/
   Prova Workflow Patterns: http://www.prova.ws/csp/?q=taxonomy/term/11
   Rule Based Service Level Agreements: http://ibis.in.tum.de/projects/rbsla/
Next steps
   Integration of further rule engines into the middleware (Rule Responder project)
   Extending the Pragmatic Foundations of Rule Responder
   Syntactical standardization issues (Reaction RuleML, Rule Interchange Format)
   Running projects:
      FungalWeb project with Rule Responder agents to answer queries on chemical
      compunds (Chebi), enzymes (Mesh, EC classificaiton), species; Chebi and enzyme
      classification (EC)
      DILP (Distributed Inductive Logic Programming) for Mining Multi-Relation Data in
                                                                Multi Relation
      Bioinformatics
      DoReMoPat: Domain-specific Reference Models for Complex Event Patterns
                                                                                   49
      Rule Responder: Symposium Organizer, Expert Finder, ...

More Related Content

Viewers also liked

Life
LifeLife
Global Warming Listening Activity
Global Warming Listening ActivityGlobal Warming Listening Activity
Global Warming Listening ActivityRændy Urtubia
 
Mtn Types[1]
Mtn Types[1]Mtn Types[1]
Mtn Types[1]ssandblom
 
Web Quest Baseball
Web Quest BaseballWeb Quest Baseball
Web Quest Baseballcubsfan3371
 
070517 Jena
070517 Jena070517 Jena
070517 Jenayuhana
 
04.Plate Tectonics[1]
04.Plate Tectonics[1]04.Plate Tectonics[1]
04.Plate Tectonics[1]ssandblom
 
Tutorial Jsp (Java Server Page) Bagian 1
Tutorial Jsp (Java Server Page) Bagian 1Tutorial Jsp (Java Server Page) Bagian 1
Tutorial Jsp (Java Server Page) Bagian 1yuhana
 
Tutorial Jsp (Java Server Page) Bagian 1
Tutorial Jsp (Java Server Page) Bagian 1Tutorial Jsp (Java Server Page) Bagian 1
Tutorial Jsp (Java Server Page) Bagian 1yuhana
 
Code review drinking game
Code review drinking gameCode review drinking game
Code review drinking game
Martijn Dashorst
 
types of simple machines
types of simple machinestypes of simple machines
types of simple machinesssandblom
 
Java Serialization Deep Dive
Java Serialization Deep DiveJava Serialization Deep Dive
Java Serialization Deep Dive
Martijn Dashorst
 
Code review drinking game
Code review drinking gameCode review drinking game
Code review drinking game
Martijn Dashorst
 

Viewers also liked (15)

Life
LifeLife
Life
 
Jena Six
Jena SixJena Six
Jena Six
 
Global Warming Listening Activity
Global Warming Listening ActivityGlobal Warming Listening Activity
Global Warming Listening Activity
 
Mtn Types[1]
Mtn Types[1]Mtn Types[1]
Mtn Types[1]
 
Web Quest Baseball
Web Quest BaseballWeb Quest Baseball
Web Quest Baseball
 
070517 Jena
070517 Jena070517 Jena
070517 Jena
 
Jena
JenaJena
Jena
 
04.Plate Tectonics[1]
04.Plate Tectonics[1]04.Plate Tectonics[1]
04.Plate Tectonics[1]
 
Tutorial Jsp (Java Server Page) Bagian 1
Tutorial Jsp (Java Server Page) Bagian 1Tutorial Jsp (Java Server Page) Bagian 1
Tutorial Jsp (Java Server Page) Bagian 1
 
Tutorial Jsp (Java Server Page) Bagian 1
Tutorial Jsp (Java Server Page) Bagian 1Tutorial Jsp (Java Server Page) Bagian 1
Tutorial Jsp (Java Server Page) Bagian 1
 
Phes Ch11
Phes Ch11Phes Ch11
Phes Ch11
 
Code review drinking game
Code review drinking gameCode review drinking game
Code review drinking game
 
types of simple machines
types of simple machinestypes of simple machines
types of simple machines
 
Java Serialization Deep Dive
Java Serialization Deep DiveJava Serialization Deep Dive
Java Serialization Deep Dive
 
Code review drinking game
Code review drinking gameCode review drinking game
Code review drinking game
 

Similar to Rule Responder Nccu Taipei Mar2008 Talk [Compatibility Mode]

Four ways to represent computer executable rules
Four ways to represent computer executable rulesFour ways to represent computer executable rules
Four ways to represent computer executable rules
Jeff Long
 
Hibernate interview questions
Hibernate interview questionsHibernate interview questions
Hibernate interview questions
venkata52
 
Hibernate reference1
Hibernate reference1Hibernate reference1
Hibernate reference1chandra mouli
 
Hibernate Interview Questions
Hibernate Interview QuestionsHibernate Interview Questions
Hibernate Interview QuestionsSyed Shahul
 
Software architectural patterns - A Quick Understanding Guide
Software architectural patterns - A Quick Understanding GuideSoftware architectural patterns - A Quick Understanding Guide
Software architectural patterns - A Quick Understanding Guide
Mohammed Fazuluddin
 
STATICMOCK : A Mock Object Framework for Compiled Languages
STATICMOCK : A Mock Object Framework for Compiled Languages STATICMOCK : A Mock Object Framework for Compiled Languages
STATICMOCK : A Mock Object Framework for Compiled Languages
ijseajournal
 
E041131823
E041131823E041131823
E041131823
IOSR-JEN
 
Object- Relational Persistence in Smalltalk
Object- Relational Persistence in SmalltalkObject- Relational Persistence in Smalltalk
Object- Relational Persistence in Smalltalk
ESUG
 
Chapter 9 & chapter 10 solutions
Chapter 9 & chapter 10 solutionsChapter 9 & chapter 10 solutions
Chapter 9 & chapter 10 solutions
Saeed Iqbal
 
Ontologies and semantic web
Ontologies and semantic webOntologies and semantic web
Ontologies and semantic web
Stanley Wang
 
2008 Industry Standards for C2 CDM and Framework
2008 Industry Standards for C2 CDM and Framework2008 Industry Standards for C2 CDM and Framework
2008 Industry Standards for C2 CDM and Framework
Bob Marcus
 
Reactive Stream Processing for Data-centric Publish/Subscribe
Reactive Stream Processing for Data-centric Publish/SubscribeReactive Stream Processing for Data-centric Publish/Subscribe
Reactive Stream Processing for Data-centric Publish/Subscribe
Sumant Tambe
 
Scalable architectures for phenotype libraries
Scalable architectures for phenotype librariesScalable architectures for phenotype libraries
Scalable architectures for phenotype libraries
Martin Chapman
 
A Wiki for Rules in Executable English
A Wiki for Rules in Executable English A Wiki for Rules in Executable English
A Wiki for Rules in Executable English Adrian Walker
 
Mc0077 – advanced database systems
Mc0077 – advanced database systemsMc0077 – advanced database systems
Mc0077 – advanced database systems
Rabby Bhatt
 
Drools & jBPM Info Sheet
Drools & jBPM Info SheetDrools & jBPM Info Sheet
Drools & jBPM Info Sheet
Mark Proctor
 
An Approach to Recover Feature Models From Object-Oriented Source Code
An Approach to Recover Feature Models From Object-Oriented Source CodeAn Approach to Recover Feature Models From Object-Oriented Source Code
An Approach to Recover Feature Models From Object-Oriented Source Code
Ra'Fat Al-Msie'deen
 
Semantic Complex Event Processing with Reaction RuleML 1.0 and Prova 3.0
Semantic Complex Event Processing with Reaction RuleML 1.0 and Prova 3.0Semantic Complex Event Processing with Reaction RuleML 1.0 and Prova 3.0
Semantic Complex Event Processing with Reaction RuleML 1.0 and Prova 3.0
Adrian Paschke
 

Similar to Rule Responder Nccu Taipei Mar2008 Talk [Compatibility Mode] (20)

Four ways to represent computer executable rules
Four ways to represent computer executable rulesFour ways to represent computer executable rules
Four ways to represent computer executable rules
 
Hibernate interview questions
Hibernate interview questionsHibernate interview questions
Hibernate interview questions
 
java
javajava
java
 
Hibernate reference1
Hibernate reference1Hibernate reference1
Hibernate reference1
 
Hibernate Interview Questions
Hibernate Interview QuestionsHibernate Interview Questions
Hibernate Interview Questions
 
Software architectural patterns - A Quick Understanding Guide
Software architectural patterns - A Quick Understanding GuideSoftware architectural patterns - A Quick Understanding Guide
Software architectural patterns - A Quick Understanding Guide
 
STATICMOCK : A Mock Object Framework for Compiled Languages
STATICMOCK : A Mock Object Framework for Compiled Languages STATICMOCK : A Mock Object Framework for Compiled Languages
STATICMOCK : A Mock Object Framework for Compiled Languages
 
E041131823
E041131823E041131823
E041131823
 
Object- Relational Persistence in Smalltalk
Object- Relational Persistence in SmalltalkObject- Relational Persistence in Smalltalk
Object- Relational Persistence in Smalltalk
 
Chapter 9 & chapter 10 solutions
Chapter 9 & chapter 10 solutionsChapter 9 & chapter 10 solutions
Chapter 9 & chapter 10 solutions
 
Ontologies and semantic web
Ontologies and semantic webOntologies and semantic web
Ontologies and semantic web
 
2008 Industry Standards for C2 CDM and Framework
2008 Industry Standards for C2 CDM and Framework2008 Industry Standards for C2 CDM and Framework
2008 Industry Standards for C2 CDM and Framework
 
Reactive Stream Processing for Data-centric Publish/Subscribe
Reactive Stream Processing for Data-centric Publish/SubscribeReactive Stream Processing for Data-centric Publish/Subscribe
Reactive Stream Processing for Data-centric Publish/Subscribe
 
Scalable architectures for phenotype libraries
Scalable architectures for phenotype librariesScalable architectures for phenotype libraries
Scalable architectures for phenotype libraries
 
A Wiki for Rules in Executable English
A Wiki for Rules in Executable English A Wiki for Rules in Executable English
A Wiki for Rules in Executable English
 
Mc0077 – advanced database systems
Mc0077 – advanced database systemsMc0077 – advanced database systems
Mc0077 – advanced database systems
 
Ruby On Rails
Ruby On RailsRuby On Rails
Ruby On Rails
 
Drools & jBPM Info Sheet
Drools & jBPM Info SheetDrools & jBPM Info Sheet
Drools & jBPM Info Sheet
 
An Approach to Recover Feature Models From Object-Oriented Source Code
An Approach to Recover Feature Models From Object-Oriented Source CodeAn Approach to Recover Feature Models From Object-Oriented Source Code
An Approach to Recover Feature Models From Object-Oriented Source Code
 
Semantic Complex Event Processing with Reaction RuleML 1.0 and Prova 3.0
Semantic Complex Event Processing with Reaction RuleML 1.0 and Prova 3.0Semantic Complex Event Processing with Reaction RuleML 1.0 and Prova 3.0
Semantic Complex Event Processing with Reaction RuleML 1.0 and Prova 3.0
 

Recently uploaded

FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.
ViralQR
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
UiPathCommunity
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
Peter Spielvogel
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 

Recently uploaded (20)

FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 

Rule Responder Nccu Taipei Mar2008 Talk [Compatibility Mode]

  • 1. Rule Responder: RuleML-Based Semantic Web Ser ices Services Talk at Dept. of Computer Science, NCCU Taipei, Taiwan, 7 March 2008 Harold Boley1, Benjamin Craig1, Adrian Paschke2 y j g 1 National Research Council of Canada University of New Brunswick, Canada 2 Bioinformatics, BIOTEC Center, , , Technical University Dresden, Germany
  • 2. Introduction t oduct o Topic of this talk Rule Responder: Extending the Semantic Web towards a Semantic-Pragmatic Web Service infrastructure for distributed rule-based human-computer collaboration Rules employed for semi-automated decision support delegation/coordination negotiation flow reaction logic 1
  • 3. Towards a Pragmatic Web o a ds ag at c eb 1. Explicit Meta-data vCard, PICS, Dublin Core, RDF IEEE LOM C RDF, (Learning Objects Metadata), Micro Formats, FOAF, SIOC … 2. Ontologies RDFS, OWL Lite|DL|Full 3. Logic and Inference e.g. Logic Programming Rule/Inference Engines 4. Software Agents and Web Services FIPA, Semantic Web Services, RBSLA, … 2
  • 4. Pragmatic Web with Two Kinds of Collaborative Agents Interaction 3
  • 5. 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 quot;the relations of signs to their interpreters or the interpretersquot; users. “ Eugen Halton, http://www.nd.edu/~ehalton/Morrisbio.htm, 1992 Pragmatic Web Utilize the heterogenous Semantic Web resources meta data and resources, 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 e.g. KQML- 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 learning and knowledge adaption / updates 4
  • 6. Pragmatic Agent Web R l R Rule Responder P j t d Project: http://responder.ruleml.org 5
  • 7. Benefits of Rule-Based Decision and Reaction Logic 1. Compact declarative representation of rules p p Clear semantics Global rules which might apply in several contexts (reusability) Separation of contract rules from the application code p 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 Automated conflict resolution by rule prioritization Rules play an important role to automatically transform contextual data, derive new conclusions and decisions from existing knowledge and behaviourally act according to changed conditions or occurred events 6
  • 8. Rule Responder Architecture (MDA) 1. Computational independent model (CIM) with rules, ti processes, conversational fl l flows ( in (e.g. i a natural or visual t l i l language) 2. Platform independent model (PIM) which represents the rules, events and ontologies in a common (standardized) interchange format (e g a markup language) (e.g. 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
  • 9. RuleML / Reaction RuleML Platform Independent Rule Interchange Format http://ruleml.org http://ruleml org http://ibis.in.tum.de/research/ReactionRuleML/ 8
  • 10. 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 Reaction Integrity Transformation Rules Rules Constraints Rules RuleML Translators Homogeneous Approach Reaction RuleML Integrity RuleML Derivation RuleML 9
  • 11. RuleML Enables ... ue ab es modelling markup UML translation t l ti RDF Rule interchange in XML execution ASCII publication bli ti archivingg 10
  • 12. RuleML Language Family – Derivation RuleML 11
  • 13. 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 levels Benefits: B fi - easier to learn the language and to understand their relationships - facilitates reusability and complex language assemblies from modules - provides certain guidance to vendors who might be interested only in a particular subset of the features - easier t maintain, manage and i to i t i d extend in a distributed environment 12
  • 14. 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> Implies <head> head <Atom> Atom <op><Rel>discount</Rel></op> op Rel discount <Var>customer</Var> Var customer <Var>product</Var> Var product <Ind>5.0 percent</Ind> Ind 5.0 percent </Atom> </head> <body> body <And> And <Atom> Atom <op><Rel>premium</Rel></op> op Rel premium <Var>customer</Var> Var customer </Atom> <Atom> Atom <op><Rel>regular</Rel></op> opr Rel regular <Var>product</Var> Var product </Atom> </And> </A d> </body> </Implies> 13
  • 15. Scope o Reaction RuleML of eact o ue 14
  • 16. General Syntax for Reaction Rules (Reaction R l ML 0 2) (R ti RuleML 0.2) <Rule style=quot;activequot; evaluation=quot;strongquot;> <label> <!-- metadata --> </label> <scope> <!-- scope --> </scope> <qualification> <!-- qualifications --> </qualification> <oid> <!-- object identifier --> </oid> od objec de e /o d <on> <!-- event --> </on> <if> <!-- condition --> </if> <then> <!-- conclusion --> </then> <do> <!-- action --> </do> <after> <!-- postcondition --> </after> <else> <!-- else conclusion --> </else> <elseDo> <!-- else/alternative action --> </elseDo> l D ! l / lt ti ti / l D <elseAfter> <!-- else postcondition --> </elseAfter> </Rule> 15
  • 17. Messages in Reaction RuleML essages eact o ue <Message mode=quot;outboundquot; directive=quot;ACL:informquot;> <oid> <!-- conversation ID--> </oid> <protocol> <!-- transport protocol --> </protocol> <sender> <!-- sender agent/service --> </sender> <content> <!-- message payload --> </content> </Message> @mode = inbound|outbound – attribute defining the type of a message @directive – attribute defining the pragmatic context of the message, e g one message e.g. or more FIPA ACL performatives, KQML, OWL-QL, Standard Deontic Logic norms, … < oid > – the conversation id used to distinguish multiple conversations and g p conversation states < protocol > – a transport protocol such as HTTP, JMS, SOAP, Jade, Enterprise Service Bus (ESB) ... < sender >< receiver > – the sender/receiver agent/service of the message < content > – message payload transporting a RuleML / Reaction RuleML query, answer, or rule base 16
  • 18. Enterprise Service Bus Communication Middleware + Service Object Broker 17
  • 19. Mule Enterprise Se ce Bus u e te p se Service us Mule ESB Open Source Message Pl tf M Platform and d distributed Object Broker Staged Event Driven Architecture (SEDA) > 30 Protocols (JMS, (JMS HTTP, SOAP …) Synchronous and Asynchronous Communication Complex Message- driven E di Eventt Processing (CEP) 18
  • 20. Mule Enterprise Se ce Bus u e te p se Service us 19
  • 21. Use Case: Symposium Question-Answering (by it Vi t l Organization) (b its Virtual O i ti ) 20
  • 22. 21
  • 23. Use Case: Symposium Question-Answering (by it Vi t l Organization) (b its Virtual O i ti ) 22
  • 24. Personal Agents e so a ge ts A personal agent assists a single person of an organization, (semi-autonomously) acting on his/her behalf The personal agent contains a FOAF*-like profile plus FOAF-extending rules * The Friend of a Friend (FOAF) project: http://www.foaf-project.org 23
  • 25. Organizational Agents O ga at o a ge ts Organizational agents are used to represent goals and strategies shared by each person in the organization Organizational agents contain rule sets that describe their organizations’ policies, regulations, opportunities, etc. 24
  • 26. External Agents te a ge ts External agents communicate with the public interface of the organizational agents, exchanging messages that transport queries queries, answers, or complete rule sets 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
  • 28. Rule Engines ue g es Prova (Prolog + Java) ( g ) OO jDREW (Object Oriented Java Deductive Reasoning Engine for the Web) 27
  • 29. Prova Prova is used to implement the organizational agents of Rule Responder Prova is also used for some personal agents 28
  • 30. 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
  • 31. Use Case Sy pos u O ga e Case: Symposium Organizer RuleML-200x Symposium One 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 y p symposium Program Chair, Publicity Chair, Panel Chair, General Chair, etc. 30
  • 32. Online Demo O e e o http://responder.ruleml.org/ Use Case Demo Link: http://ibis.in.tum.de/projects/paw/ruleml-2007/ 31
  • 33. Ex : Personal Agent’s Knowledge Base Ex.: Agent s % Sample OO j p jDREW rule in POSL syntax: y person(?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: mailphone(John, john@email.com, 1-555-555-5555). role(John, P l (J h Panel Ch i ) l Chair). title(John, PHD). 32
  • 34. Ex.: Ex : Organizational Agent’s Knowledge Base (Abridged) Agent s % Sample Prova-like rule in POSL syntax: getContact(?conference_part, ?info, getContact(?conference part ?info ?contact) :- person(?contact, ?role, ?title, ?email, ?telephone), ... . 33
  • 35. Sample Query to the Organizational Agent: getContact <RuleML xmlns=quot;http://www.ruleml.org/0.91/xsdquot; xmlns:xsi=quot;http://www.w3.org/2001/XMLSchema-instancequot; xsi:schemaLocation=quot;http://www.ruleml.org/0.91/xsd http://ibis.in.tum.de/research/ReactionRuleML/0.2/rr.xsdquot; htt //ibi i t d / h/R ti R l ML/0 2/ dquot; xmlns:ruleml2007=quot;http://ibis.in.tum.de/projects/paw#quot;> <Message mode=quot;outboundquot; directive=quot;query-syncquot;> g q y y <oid><Ind>RuleML-2007</Ind></oid> <protocol><Ind>esb</Ind></protocol> <sender><Ind>user</Ind></sender> <content> <Atom> <Rel>getContact</Rel> <Ind>ruleml2007_Challenge</Ind> <Ind>ruleml2007 Challenge</Ind> <Ind>update</Ind> <Var>Contact</Var> </Atom> </content> </Message> 34 </RuleML>
  • 41. 40
  • 42. 41
  • 43. Sample Query to the Publicity Chair: sponsor (1) <content> t t <Atom> <Rel>sponsor</Rel> <Expr> Expr <Fun>contact</Fun> <Ind>ben</Ind> <Ind>nrc</Ind> </Expr> </E > <Ind type=quot;integerquot;>500</Ind> <Expr> <Fun>results</Fun> <Var>Level</Var> <Var>Benefits</Var> <Var>DeadlineResults</Var> </Expr> <Expr> <Fun>performative</Fun> <Var>Action</Var> </Expr> </Atom> 42 </content>
  • 44. 43
  • 45. Sample Query to the Publicity Chair: sponsor (2) <content> t t <Atom> <Rel>sponsor</Rel> <Expr> p <Fun>contact</Fun> <Ind>ben</Ind> <Ind>nrc</Ind> </Expr> <Ind type=quot;integerquot;>5000</Ind> <Expr> <Fun>results</Fun> <Var>Level</Var> <Var>Benefits</Var> <Var>DeadlineResults</Var> </Expr> /E <Expr> <Fun>performative</Fun> <Var>Action</Var> Var Action /Var </Expr> </Atom> 44 </content>
  • 46. 45
  • 47. Conclusion ( ) Co c us o (1) Rule Responder can be used to implement a wide range of use cases that require an intelligent, semi-automated decision layer semi automated The middleware of Rule Responder allows deployment of multiple use cases running concurrently Reusability on all levels: Symposium Organizer, Rule Responder, POSL, RuleML, OO jDREW, Prova, Mule j 46
  • 48. Conclusion ( ) Co c us o (2) Develops an effective methodology and an efficient infrastructure to interchange and reuse knowledge on the Web ( g g (ontologies and rules) g ) and communicate contextual actions Adds a pragmatic rule-based layer (Pragmatic Web), defines the rules for using information resources and ontologies to support g g human agents in their decisions and react partially self-autonomously by means of automated agents or services Blends and tightly combines the ideas of multi-agent systems, distributed rule management systems, and service oriented and event systems driven architectures Addresses real-world software engineering needs for a highly distributed, open, interoperable, distributed open interoperable efficient and scalable Semantic Web service and agent infrastructure Design Science Research Approach 47
  • 49. Conclusion (3) Co c us o Demonstrates the interoperation of various distributed platform-specific rule execution environments based on Reaction RuleML as a platform- p independent rule interchange format interchanged over an enterprise service bus as transport middleware Applies rule-based technologies to the management of virtual organizations and collaborative teams Applies negotiation and distributed coordination mechanisms of rule- based complex event processing and rule-based workflow like reaction rule patterns l tt Demonstrates the integration and interoperation of rule standards (RuleML), Object-Oriented programming (Java) and Semantic Web (RDF, RDFS (RDF RDFS, OWL) and metadata standards (e g iCal vCard FOAF) (e.g. iCal, vCard, 48
  • 50. Applications and Next Steps Applications of the Pragmatic Agent Web and the Rule Responder middleware in different projects Rule Responder: http://responder.ruleml.org/ Reaction RuleML: http://ibis.in.tum.de/research/ReactionRuleML/ Prova Agent Architecture: http://www.prova.ws/ Prova Workflow Patterns: http://www.prova.ws/csp/?q=taxonomy/term/11 Rule Based Service Level Agreements: http://ibis.in.tum.de/projects/rbsla/ Next steps Integration of further rule engines into the middleware (Rule Responder project) Extending the Pragmatic Foundations of Rule Responder Syntactical standardization issues (Reaction RuleML, Rule Interchange Format) Running projects: FungalWeb project with Rule Responder agents to answer queries on chemical compunds (Chebi), enzymes (Mesh, EC classificaiton), species; Chebi and enzyme classification (EC) DILP (Distributed Inductive Logic Programming) for Mining Multi-Relation Data in Multi Relation Bioinformatics DoReMoPat: Domain-specific Reference Models for Complex Event Patterns 49 Rule Responder: Symposium Organizer, Expert Finder, ...