Your Federal Quarterly Tax Payments are due April 15th Get Help Now >>

Semantic Web Communication Currency Pair by MikeJenny


Semantic Web Communication Currency Pair

More Info
									“Realizing What Semantic Web Can Be…….”

       Anup Patel (07305042)
     Tanmay Mande (07305051)
      Sapan Shah (07305061)
     Nilesh Padariya (07305064)
                                                            Middle Agent

 2020 And Beyond ……..

                                    Prafful‟s Agent Contacts
                                    A Middle Agent to find
                                    out some hospital in powai
New Powai Hospital
                                    having a recently admitted “Your wife is
                                                         Agent:                 had
                                                           an “Yourat don‟t is
                                                           admitted meeting
                                    patient named Gita.Agent:accident Newis know
                                                           Prafful: “I stillshe
                                                            admitted at“Isome
                                                            re-scheduled have
                                                               Prafful: should
                                                        Powai Hospital“I admitted
                                                                 Prafful: to
                                                            where is sheWard
                   Prafful‟s Agent Negotiates With        tomorrow 5:00 PM”
                                                          hospitalmeeting with use
                                                          in powaiin 9” I should
                                                               informpowai …”
                                                                 No.…. agent
                                                                 a      my
                   Boss‟s Agent and re-schedule                  my boss and
                                                                 to rescheduleI
                                                                 my agent ….”
                   meeting to tomorrow.                             meeting”
                                                                 am late …….”
   Original driver: Automation
    - Make information on the Web more “machine-friendly”
    - Origins of the Semantic Web are in web metadata

   Short term goal: Interoperability
    - Combining information from multiple sources
    - Web Services: discovery, composition

   Long term goal: “Departure from the Tool Paradigm”
    - instead of using computers like tools, make them
      work on our behalf
    - removing humans from the loop to the extent possible
1.   Introduction to Semantic Web
2.   Knowledge Representation
3.   Agents in Semantic Web
4.   Multi-Agent System Communication
5.   Agent Communication Language
7.   Status of Semantic Web
8.   Conclusion
9.   Bibliography
1. Semantic Web

  The Semantic Web is an evolving extension of the
 World Wide Web in which web content can be
 expressed not only in natural language, but also in a
 format that can be read and used by software agents,
 thus permitting them to find, share and integrate
 information more easily.
                                              -- Wikipedia
1.1 Semantic Web Architecture



                        Knowledge Sharing

  1.2 Tree of Knowledge Technologies
  Semantic                      Management
Technology                      Languages
 AI Knowledge                   Languages
2. Ontologies in Semantic Web
   What? .. Is an ontology

   Why?    .. Do we need ontology

   How?    .. Do we use ontology
2.1 What?
   Ontology is a term borrowed from philosophy that refers to
    the science of describing the kinds of entities in the world
    and how they are related.

   An ontology is explicit specification of conceptualization

   An ontology defines the terms used to describe and
    represent an area of knowledge

   Ontology provides the to be used in a knowledge domain
2.2 Why?

 Does Web today understand information?
 No
 Can we make it understand the information?
 Yes.. First provide vocabulary!!
2.3 How?
   Web Ontology Language (owl)

     Goal is to provide machine-readable descriptions of the
      content and capabilities of Web accessible resources

     Ontology may include descriptions of classes, properties
      and their instances.

     Given such an ontology, the OWL formal semantics
      specifies how to derive its logical consequences, i.e. facts
      not literally present in the ontology, but entailed by the
2.4 OWL constructs
   Classes:
    <owl:Class rdf:ID=“man">
        <rdfs:subClassOf rdf:resource="#human" />
   Properties:
     Datatype properties: relates objects to datatype values
     Object Properties: relates objects to objects

   Example:
.   <owl:ObjectProperty rdf:ID=“isFatherOf">
      <rdfs:domain rdf:resource="#man"/>
      <rdfs:range rdf:resource="#man"/>
2.4 OWL constructs (Contd.)
   Property Restrictions: used when one requires to put some

   Example:
      <owl:onProperty rdf:resource="#isFatherOf"/>
      <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">

   Possible Use:
    A „is father of‟ X   &   B „is father of‟ X      „A = B‟
2.5 Example
   Interested in Buying a Ticket?

   Scenario: I am interested in buying a ticket.
     start_point: Mumbai
     end_point: Delhi
     date_of_journey: xxx

   I launch my personal "Web agent" which crawls the Web
    looking for Web sites that can fulfill my request

   Assume that there exists an OWL „Travel‟ Ontology, which the
    Web agent can "consult" upon its travels across the Web.
 2.6 Example (Contd.)
The Web Agent finds this document at a Web site:
<TravelAgent rdf:ID=“TravelEasy"
   <catalog rdf:parseType="Collection">
      <airTicket rdf:ID=“AirIndia“ xmlns="">
            <source> Mumbai </source>
            <destination> Delhi </destination>
            <date> xxx </date>
            <cost rdf:parseType="Resource">           Is it relevant ?
2.6 Example (Contd.)
   Is there a match ?

   To answer this question, following questions must be

     Is there a match between airTicket and ticket?

     Is there a match between start-point and source?

     Is there a match between end-point and destination?
  2.6 Example (Contd.)
    Relationship between ticket and airTicket?
    The Web agent "consults" the OWL travel Ontology.
    This OWL statement tells the Web agent that a airTicket
     is a type of ticket:

                        <owl:Class rdf:ID=“airTicket">
                             <rdfs:subClassOf rdf:resource="#ticket"/>
<TravelAgent                                 between
  rdf:ID=“TravelEasy"                                                 <owl:Class
                                             ticket and airTicket?"     rdf:ID=“airTicket">
                                Web                                     <rdfs:subClassOf
                                Agent                                 rdf:resource="#ticket"/>
</TravelAgent>                               “airTicket is a type     </owl:Class>
                                             of ticket."                    Travel.owl
2.6 Example (Contd.)
 Relationship between start-point and source?
 This OWL statement tells the Web agent that Start-point is
  equivalent to source:

     <owl:DatatypeProperty rdf:ID=“start-point">
          <owl:equivalentProperty rdf:resource="#source"/>
          <rdfs:domain rdf:resource="#place"/>
          <rdfs:range rdf:resource="&xsd;#airplane"/>

             start-point is synonymous with source.
2.6 Example (Contd.)

 Relationship between date and date_of_journey?
 This OWL statement tells the Web agent that date
  is equivalent to date_of_journey:

    <owl:DatatypeProperty rdf:ID=“date">
         <owl:equivalentProperty rdf:resource="#date_of_journey"/>
         <rdfs:domain rdf:resource="#airplane"/>
         <rdfs:range rdf:resource="&xsd;#Date"/>
2.6 Example (Contd.)
   The Web agent now recognizes that the XML document it
    found at the Web site
      Is talking about tickets
      It does show the start-point and end-point
      It does show a date
      Values are matching

   Thus, the Web agent recognizes that the XML document is a
3. Agents in Semantic Web
   Agent in AI is any thing that can be viewed as perceiving its
    environment through sensors and acting upon that
    environment through effectors, showing a rational behavior.

    E.g. A human agent has eyes, ears and other organs as
         as sensors, and hands, legs, mouth, and other body
         parts for effectors.

   Agent = Architecture + Program.

   Semantic Web Agents are agents in the web environment.
3.1 Agent Definition
   The definition of agents has not been agreed upon universally
    but, we can have some good characteristic of such agents,
    which are :

          - Autonomy
          - Reasoning Ability
          - Learning Ability
          - Mobility
          - Sociability
          - Cooperation
          - Negotiation
3.1 Agent Definition (Contd..)
   From semantic web point of view agents can be thought
    of as intelligent software program that host a collection
    of web services.

   Unlike standard Web Services, an agent can reason

           - How to handle external request ?
           - Order in which to carry out the request ?
3.2 Multi-Agent System (MAS)
   MAS is distributed system which incorporates more than
    one independent agents.

   The collection of agents interact, and solve problems that
    are outside their individual capacities.

   Agents in MAS display a dual behavior: on the one hand
    they are goal directed programs that autonomously solve
    problems and on the other hand have a social dimension
    when they interoperate as part of MAS.

   Semantic web in future will be one large MAS containing
    millions of agents communicating with each other.
3.2 Multi-Agent System (Contd.)
   Ontologies in MAS provide agents :

    - The basic representation that allows them to reason about
      interactions with other agents.
    - Shared knowledge that they can use to communicate and
      work together.

   In general we can distinguish between Private Ontologies
    that allow the agent to organize its own problem solving and
    reasoning, and Public Ontologies that the agent shares with
    the rest of the agents in the MAS.

   Private ontologies are used to represent Private Knowledge
    whereas, public ontologies are used to represent
    Public Knowledge of an semantic web agent.
3.2 Multi-Agent System (Contd.)
   Example to illustrate use of private and public knowledge.

    Private Knowledge                        Private Knowledge

    Public Knowledge                         Public Knowledge
4. MAS Communication
   In MAS communication we are effectively seeking to mimic
    the process of (verbal) communication between humans,
    which by itself is very ambitious task.

   At the lowest level, there are two main techniques that
    facilitate communication:

    - Message Passing: The agents communicate by the direct
      exchange of messages that encapsulate knowledge.
    - Shared State: The Agents communicate by asserting and
      retracting facts in a shared knowledge base.

   The web uses a message passing approach (TCP + UDP)
    so, semantic web communication also have based on
    message passing approach (HTTP + XML).
4. MAS Communication (Contd.)
   For communication on semantic web some issues must be
    promptly addressed, like:

    - Automatic discovery of agents.
    - Effectively manage the shared knowledge.
    - It must be coordinated, correct, and robust to failure.

   To solve the problem of automatic discovery of agents we
    have Middle-Agent architectures.

   To solve the problem of managing shared knowledge we
    have network architectures.
4.1 Middle Agent Architecture
   Middle-agents assist in locating service providers, and
    connecting service providers with service requesters.

   A variety of middle agent types based on privacy
    considerations of service providers capabilities and
    requesters preferences are possible.

   Middle Agent Architectures are techniques to solve
    problem of automated discovery of agents in MAS.
4.1 Middle Agent Architecture (Contd.)
   Two important types of middle-agent have been identified.

   Service Matchmaker:

    The Matchmaker serves as a "yellow pages" of agent
    capabilities, matching service providers with service
    requestors based on agent capability descriptions.

    The Matchmaker system allows agents to find each other by
    providing a mechanism for registering each agent's

    For each query it searches its dynamic database of
    "advertisements" for a registered agent that can fulfill the
    incoming request.
4.1 Middle Agent Architecture (Contd.)

            Service Matchmaker
4.1 Middle Agent Architecture (Contd.)
   Service Broker:

    Service Broker is similar to matchmaker, but also
    processes the requests.

     Service Broker
4.1 Middle Agent Architecture (Contd.)
    A variety of middle agent types based on privacy considerations
     of service providers capabilities and requesters preferences are

                                   Capabilities Initially Known By
    Initially Known By                    Provider &      Provider & Middle
                         Provider Only
                                         Middle Agent     Agent & Requestor
                                                             Matchmaker /
     Requestor Only      Broadcaster     “Front-Agent”
                                                             Yellow Pages
Requestor & Middle                                         Personal Assistant
                         Anonymizer         Broker
     Agent                                                  / Recommender

Requestor & Middle                        Introducer /
                          Blackboard                           Arbitrator
 Agent & Provider                        “Bodyguard”
4.2 Network Architecture
   Network Architectures so far, mainly assumed some kind of
    centralized client/server architecture. But Service Oriented
    Architectures can equally well be decentralized.

   Network Architectures are techniques to effectively store
    and retrieve shared knowledge of all agents in MAS.

   We can three types of architectures possible here:

     - Centralized (Client-Server)
     - Decentralized (Peer-to-Peer)
     - Hybrid (Client-Server and Peer-to-Peer)
4.2 Network Architecture (Contd.)
   Centralized (Client-Server):
4.2 Network Architecture (Contd.)
   In Client-Server system, a centralized server is used to
    manage the shared resources.

   Servers works as central repository of the shared resources
    or the shared knowledge.

   It is very easy to adapt current knowledge representation
    like owl and rdf for client-server system.

   There are hard limits to number of clients that can be served
    from a single server or a cluster of servers. This limits are
    primarily a function of available network bandwidth.
4.2 Network Architecture (Contd.)
   Decentralized (Peer-to-Peer):
4.2 Network Architecture (Contd.)
   P2P is a self-organizing system of equal, autonomous
    entities (peers) which aims for the shared usage of
    distributed resources in a networked environment avoiding
    central services.

   Peers interact directly with each other, usually without
    central coordination. Each peer has autonomy over its own

   Peers can act as both clients and servers; i.e., no intrinsic
    asymmetry of role.

   The network saturation problem does not occur to
    decentralized P2P network.
4.2 Network Architecture (Contd.)
   In this approach information is copied and distributed
    throughout network. Thus, when a client wish to obtain
    some information it can retrieve it from multiple sources
    and thereby avoid overloading at one node.
    For Example: Bit Torrent, DC++

   Construction of P2P architecture for semantic web has
    important design implications :

    - The communicative process must be adapted to work with
      specific P2P technique.
    - The reasoning process must make decisions on what
      information to share and how to retrieve information
      required for reasoning.
4.2 Network Architecture (Contd.)
   Hybrid (Client-Server and Peer-to-Peer):
5. Agent Communication Language
   Abbreviated as „ACL‟ for short.

   In agent communication our source of inspiration in
    human communication.

   We try to mimic human communication in ACL.

   The foundation of ACL lies in the Speech Act Theory.
5.1 Speech Act
   Proposed by John Austin extended by John Searle.

   How language is used by people everyday to achieve
    their goals and intentions.

   Certain natural language utterances have the
    characteristics of physical actions.

   Certain performative verbs in speech act changes the
    state of the world like physical actions.
5.2 Types of Speech Acts
   Representative: which commits the speaker to the truth of
    what is being asserted. e.g. inform

   Directive: attempts to get the hearer to do something
    e.g., „please make the tea‟

   Commisives: which commit the speaker for doing
    something, e.g., „I promise to…‟

   Expressive: whereby a speaker expresses a mental state,
    e.g., „thank you!‟

   Declarative: effect some change on the state of affairs.
    e.g. declaring war.
5.3 Components of Speech Act
   In general Two Components:

    – Performative Verb (e.g., request, inform, promise, … )
    – Propositional Content (e.g., “the door is closed”)

   More Examples:

        performative = request
        content = “the door is closed”
        speech act = “please close the door”

        performative = inquire
        content = “the door is closed”
        speech act = “is the door closed ?”
5.4 ACL Examples
   Communication is performed by exchanging messages
    where each message has an associated performative-
    message types.

   Agent Communication Languages define common sets of

   Two Popular ACLs

    - KQML
    - FIPA-ACL.
5.5 FIPA-ACL Performative Ontology
5.6 Basic Problem of FIPA-ACL
   Semantics Verification Problem
    Sincerity Assumption – agent always acts in accordance
    with their intentions.

   Too restrictive in open environment – web.

   Despite these FIPA-ACL remained popular
    - e.g. JADE multi agent platform – performatives are used
    to facilitate the exchange of message but compliance with
    formal model is not enforce.
5.7 Dialogue

   Communication rarely consists of a single act of
    speech in isolation.

   It typically consists of sequence of messages
    exchanges between participants such as Conversation.

   This type of communication is termed as Dialogue.
5.8 Categories of Dialogues
5.9 Dialogue frames
   Key construct – Dialogue Type
    identifies dialogue type & kind of values over which it

   Different Dialogues can take different kind of values.
    e.g. Beliefs, Contract, Plans

   Frame F is a tuple with four elements ( T, V , t, U)
    T = Dialogue Type
    V = Value over which the dialogue operates
    t = Topic of the Dialogue
    U = list of utterances which define the actual dialogue
        steps between the participants x & y e.g. {U}
5.10 Protocols in FIPA-ACL
   It refers to the stereotyped pattern of conversation between
    the agents.

   The protocols are generally pre-specified by the agent
    designer & agents needs to discover which protocols to
    follow during Dialogue.

   Choice of protocols to be followed can be negotiated by the

   In FIPA-ACL the convention is to put the name of the
    protocol in the :protocol parameter of the message.
5.11 FIPA-Query-Protocol
5.12 ACL in MAS
   Reduce the complexity to pair wise interaction between
    agents. Has limitations in terms of multicast & broadcast

   As the size of the MAS increases, the ability to
    communicate reliably deteriorates. MAS operating over
    web has to face some basic problems such as delay in
    message passing, messages may be lost. So
    Asynchronous agents are required.

   An open MAS is designed to enable interoperability
    between agents from many different sources. These may
    introduce problems like malicious, untrustworthy agents.
   Simple Protocol And Rdf Query Language

   SPARQL = Query Language + Protocol + XML Results Format

   It‟s a Query language for RDF Data, and it involves:

    - Basic graph pattern matching.
    - No inference in the query language itself.

   As a Protocol it uses:

    - HTTP binding
    - SOAP binding

   XML Results Format are:

    - Easy to transform (XSLT, XQuery)
6.1 It’s Turtles all the way down
Turtle (Terse RDF Triple Language ):
  − An RDF serialization
  − Triple representation of <Subject, Predicate, Object>
   <http://example/person/A> <> “Nilesh”
  − Human-friendly alternative to RDF/XML
    @prefix person: <http://example/person/> .
    @prefix foaf: <> .
    person: A foaf:name “Nilesh" .
    person: A foaf:mbox <> .
    person: B foaf:name “Sapan" .                -------------
    _:b foaf:name “Vishal" .                     | name |
    _:b foaf:mbox <> ========
                                                 | “Nilesh” |
                                                 | ”Sapan”|
    A "hello world" of queries                   | ”Vishal” |
    SELECT ?name                                 -------------
    { ?x foaf:name ?name }
  6.2 Matching RDF Literals
   @prefix dt: <> .
   @prefix ns: <> .
   @prefix : <> .
   @prefix xsd: <> .

   :x ns:p "cat"@en .                ---------
                                     | v |         ----------------------------------
   :y ns:p "42"^^xsd:integer .                     |           v                   |
   :z ns:p "abc"^^dt:specialDatatype .       ----------------------------------
                                             |         ----------------------------------
                                                   | ||
   SELECT ?v WHERE { ?v ?p "cat" }                     |           V
                                                   ---------------------------------- |
   SELECT ?v WHERE { ?v ?p "cat“@en }                  ===================
                                             | |
                                                       | |
   SELECT ?v WHERE { ?v ?p 42 }                        ----------------------------------

SELECT ?v WHERE { ?v ?p "abc"^^<> }
6.3 Filter
@prefix dc: <> .
@prefix stock: <> .
@prefix inv: <> .
stock:book1 dc:title "SPARQL Query Language Tutorial" .
stock:book1 dc:edition “First”
                      | 10 .
stock:book1 inv:price book               | title                                           |
stock:book1 inv:quantity 3 .
                      | stock:book1 | "SPARQL Query ed)" .
stock:book2 dc:title "SPARQL Query Language (2nd Language Tutorial" |
stock:book2 inv:price 20 ; inv:quantity 5 .
stock:book3 dc:title "Applying XQuery“; dc:edition “Second” .
stock:book3 inv:price 20 ; inv:quantity 8 .
PREFIX dc: <>
PREFIX stock: <>
PREFIX inv: <>
SELECT ?book ?title
?book dc:title ?title .
?book inv:price ?price . FILTER ( ?price < 15 )
?book inv:quantity ?num . FILTER ( ?num > 0 ) }
6.4 Other Solution Modifiers
PREFIX dc: <>
SELECT ?title ?edition
{ ?x dc:title ?title .
OPTIONAL {?x dc:edition ?edition }

PREFIX foaf: <>
SELECT ?name
WHERE { ?x foaf:name ?name } ORDER BY ?name

PREFIX foaf: <>
?x foaf:name ?name }
ORDER BY ?name
@prefix foaf: <> .
_:a foaf:givenname "Alice" .
_:a foaf:family_name "Hacker" .
_:b foaf:firstname "Bob" .
_:b foaf:surname "Hacker" .
PREFIX foaf: <>
PREFIX vcard: <>
CONSTRUCT { ?x vcard:N _:v .
                  _:v vcard:givenName ?gname .
                  _:v vcard:familyName ?fname }
WHERE { { ?x foaf:firstname ?gname } UNION { ?x foaf:givenname ?gname } .
         { ?x foaf:surname ?fname } UNION { ?x foaf:family_name ?fname } .}
@prefix vcard: <> .
_:v1 vcard:N          _:x .
_:x vcard:givenName "Alice" .
_:x vcard:familyName "Hacker" .
_:v2 vcard:N           _:z .
_:z vcard:givenName "Bob" .
_:z vcard:familyName "Hacker" .
PREFIX books: <>
PREFIX dc:       <>
 { ?book dc:title "Harry Potter and the Prisoner Of Azkaban" }
     <rdf:Description rdf:about="">
         <dc:creator rdf:parseType="Resource">
             <vcard:N rdf:parseType="Resource">
            <vcard:FN>J.K. Rowling</vcard:FN>
         <dc:title>Harry Potter and the Prisoner Of Azkaban</dc:title>
 6.7 XML Result Set
                          | name                          | mbox                                   |
                          | "Johnny Lee Outlaw" | <> |
                          |                              | <> |
<sparql xmlns="">
      <variable name=“name"/>
      <variable name=“mbox"/>
  <results ordered="false" distinct="false">
          <binding name=“name"><literal>Johnny Lee Outlaw</literal></binding>
          <binding name=“mbox"><uri></uri></binding>
          <binding name="mbox"><uri></uri></binding>
 6.8 ASK
@prefix foaf: <> .
_:a foaf:name "Alice" .
_:a foaf:homepage <> .
_:b foaf:name "Bob" .
_:b foaf:mbox <mailto:bob@work.example> .              Yes

PREFIX foaf: <>
ASK { ?x foaf:name "Alice" }

<?xml version="1.0"?>
<sparql xmlns="">
6.9 More Features
   RDF Dataset
    - Collection of RDF Graphs
    - use FROM <>
        & FROM NAMED <>

   Inbuilt functions for testing values
    - IsLiteral
    - IsBlank
    - str
    - regex
6.10 Limitation of SPARQL
   No nested queries

   No Insert, Update, Delete queries

   No aggregation functions
7. Semantic Web Status
                Communication   Standard ?            Applications
 Web Layer
                                             - Used for interoperability
    XML                           YES          Within application.
                                             - Web services.
                                             - To and from converter
    RDF           SPARQL          YES          and many editors
                                             - Over 107 RDF Documents
                                             - FOAF, DOAP, Dublin
    OWL            OWLQL           NO          Core, Music Ontology, etc
                                               are some famous ontology
  Rules /                                    ????
                   SWRL           YES
                                             - Jena, Racer, and Pellet
Logic & Proof       DIG            NO
                                               are some of the projects

    Trust          TriQL.P         NO        ????
8. Conclusion
 Knowledge representation is very well developed in
  semantic web.
 Agent communication is still an active area of
  research, though we have standardized language
  like SPARQL, still lot of research is required in
  applying languages like FIPA-ACL to semantic web.
 Semantic web trust still remains the least explored of
  all the layers of semantic web. Named graphs laid
  an important foundation in this area.
 All in all semantic web is still a research field in
9. Bibliography
   Introduction

    - Agency and Semantic Web, By Christopher Walton,
      Oxford Press.
    - Explorers Guide To Semantic Web, By Thomas B. P.,
      Manning Publication.
9. Bibliography (Contd.)
   Agent Communication

    - Agency and Semantic Web, By Christopher Walton,
      Oxford Press.
    - Explorers Guide To Semantic Web, By Thomas B. P.,
      Manning Publication.
    - Lecture Notes of Multi-agent Semantic Web Systems,
      University of Edinburgh.


Questions ……..??
Thank You ……..

To top