SlideShare a Scribd company logo
1 of 26
Download to read offline
Joshua Shinavier

  The Real-Time Web in the
       Age of Agents




2011 Semantic Technology Conference
             June 8th, 2011
Overview

•   real-time Semantic Web is emerging

    •   state of the art

    •   real-time interaction?

•   Semantic Web agents

•   use cases

•   the RDFAgents specification

    •   queries and subscriptions

    •   data model

    •   provenance and information discovery

                             2
Real-time interaction
with the Semantic Web

•   let’s mash up the “real-time” social Web
    with the Semantic Web

•   data sources are plentiful

    •   e.g. Twitter, Facebook, Glue, ActivityStreams

•   data integration is straightforward

    •   mapping into Semantic Web vocabularies

    •   linking into Semantic Web datasets

•   what about interaction?



                             3
Semantic Web “1.0” was

•   ...not “real-time”

    -   static RDF data, occasionally updated

•   ...not ubiquitous

    -   desktop model (browsers, keyword search)

    -   client-server model

•   ...not very interactive

    -   read-only content, monolithic triple stores

    -   little “bottom-up” user content


                              4
Getting closer to “real-time”

               static triple stores
      days
               web pages
     hours
               blogs
   minutes
               microblogs
                                              TwitLogic
   seconds
               instant messaging              sparqlPuSH
                                      C-SPARQL
milliseconds
               streaming media



    latency     technology            misc. examples


                              5
More ubiquitous, more interactive


•   mobile Semantic Web

    -   e.g. RDF On the Go, Android Semantic Web Core
        library, DBpedia/mSpace/OntoWiki Mobile

•   semantic sensor networks

•   semantic publishing and presence

    -   e.g. SMOB, Sharing Spaces

•   smart spaces, dialogue-based Semantic Web UI




                            6
The 10,000-foot view


•   real-time Semantic Web is growing organically

•   common themes:

    -   rapidly changing data

    -   two-way, peer-to-peer communication

    -   participation of “ubiquitous” devices large and
        small

•   we need shared frameworks for real-time interaction




                             7
Enter Semantic Web agents


“The real power of the Semantic Web will be
realized when people create many programs that
collect Web content from diverse sources,
process the information and exchange the results
with other programs.
The effectiveness of such software agents will
increase exponentially as more machine-readable
Web content and services becomes available.”

                — Tim Berners-Lee et al., 2001




                                     8
By “agent”, we mean:

•   peer-to-peer communication

•   proactive, event-driven information sharing

•   conventions for provenance tracking

•   support for a variety of interaction protocols

    -   e.g. for query answering, subscriptions, contracts




        (               not that kind of agent.   )
                             9
Use cases:
           basic query answering




•   Agent A → Agent B: “Who is Josh?”

•   Agent B → Agent A: “Josh is a presenter at
    SemTech.”




                           10
Use cases:
    query delegation with provenance

•   Agent A → Agent B: “Who is Josh?”

    -   Agent B → Agent C, Agent D: “Who is Josh?”

    -   Agent C → Agent B: “Josh is a presenter at
        SemTech.”

    -   Agent D → Agent B: “Josh has the Twitter handle
        @joshsh and has written these tweets: ...”

•   Agent B → Agent A: “Agent C says that Josh is a
    presenter at SemTech. Agent D says that Josh has
    the Twitter handle @joshsh and has written these
    tweets: ...”


                             11
Use cases:
           real-time data streams


•   Agent A → Agent B: “Keep me up to date about
    SemTech.”

•   Agent B → Agent A: “Will do!”

•   Agent B → Agent A: “Josh has just written this tweet
    about SemTech: ...”

•   Agent B → Agent A: “Craig has just posted this review
    of SemTech: ...”




                           12
Use cases:
        syndication with provenance

•   Agent A → Agent B: “Keep me up to date about
    SemTech.”

•   Agent B → Agent A: “Will do!”

    -   Agent B → Agent C: “Keep me up to date about
        SemTech.”

    -   Agent C → Agent B: “Will do!”

    -   Agent C → Agent B: “Josh has just written this
        tweet about SemTech: ...”

•   Agent B → Agent A: “Agent C says that Josh has just
    written this tweet about SemTech: ...”

                             13
Why agents? Extreme real-time

•   human limit of real-time ≈ 10 - 100ms

    -   these are simultaneity thresholds, central to
        human sensory integration

•   technical limits of real-time are similar

    -   134ms for a round-trip around the Earth (ideally)

    -   28ms from New York to San Francisco and back

    -   actual Internet latency is 2 to 3 times higher, but

•   TCP’s three-way handshake is a problem

    -    we need long-lived connections and
        bidirectional data flow, as in XMPP (Jabber)

                              14
Why agents? The                 standards


•   FIPA (Foundation for Intelligent Physical Agents)

•   most widely-adopted body of agent standards

•   supports peer-to-peer, asynchronous, and event-
    driven communication

•   transport agnostic

    -   compatible with HTTP, XMPP, etc.

•   easily coupled with Web APIs, Semantic Web data
    formats


                            15
RDFAgents =                 +         data streams
•   RDFAgents specification

    •   extends FIPA

    •   enables query answering and real-time data
        streams with provenance

•   includes:

    •   RDF content languages

    •   two interaction protocols: Query and Pub-Sub

    •   support for trust, privacy, information
        accountability

    •   conventions for peer-to-peer information
        discovery
                             16
Queries




   17
Subscriptions




      18
message type
                     Example: a message
(inform-ref                                                   sender and
    :sender (agent-identifier
        :name http://example.org/twitlogic                     receiver
!   :addresses (sequence xmpp:twitlogic@example.org))
    :receiver (set (agent-identifier
        :name http://example.org/consumer
!   :addresses (sequence xmpp:consumer@example.org)))
    :protocol fipa-subscribe
    :conversation-id c976b710a5
    :language rdf-trig
                                              “conversation”
    :content "                                   metadata
@prefix dc: <http://purl.org/dc/terms/> .
@prefix ex: <http://example.org/> .
@prefix sioc: <http://rdfs.org/sioc/ns#> .                 RDF dataset
@prefix sioct: <http://rdfs.org/sioc/types#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

{
      ex:post1785782813 a sioct:MicroblogPost ;
          dc:title "#SemTech begins again!" ;
          dc:created "2011-06-06T19:43:35.000Z"^^xsd:dateTime ;
          sioc:topic <http://twitlogic.fortytwo.net/hashtag/semtech> .
}")


                                      19
RDFAgents data model

•   agents exchange RDF Datasets, in the sense of
    SPARQL

    -   any number of Named Graphs

        -   may be annotated with provenance metadata

    -   a single default graph

        -   contains asserted (accepted) statements

•   agents identify themselves with Semantic Web URIs

    -   agent contact information in FOAF

•   Semantic Web Publishing vocabulary captures the
    provenance trail

                              20
Example: a dataset from a message
                a named graph                        generic content
<urn:uuid:be0c72c6-2b8f-4134-b309-690039f8c419> {
    ex:post1785782813 a sioct:MicroblogPost ;
        dc:title "#SemTech begins again!" ;
        dc:created "2011-06-06T19:43:35.000Z"^^xsd:dateTime ;
        sioc:topic <http://twitlogic.fortytwo.net/hashtag/semtech> .
}

             the default graph (accepted statements)
{
    <urn:uuid:be0c72c6-2b8f-4134-b309-690039f8c419> a rdfg:Graph ;
        swp:assertedBy <urn:uuid:be0c72c6-2b8f-4134-b309-690039f8c419> ;
        swp:authority ex:twitlogic .

    ex:twitlogic a foaf:Agent ;
        foaf:mbox <xmpp:twitlogic@example.org> .
}
                                                    graph metadata
    agent metadata                21
The provenance trail
•   keeping track of who said what

    -   publishers deserve credit for their content

    -   consumers need to decide what to believe

•   RDFAgents specifies a provenance-preserving
    transformation for each dataset received

    -   records “A said that B said X” relationships
        between agents and graphs

•   simple policies unravel the provenance trail to accept
    or reject RDF statements

•   provenance metadata also supports information
    discovery

                             22
What can you do with RDFAgents?


•   make real-time streams out of social data sources

    -   e.g. Twitter agents, ActivityStreams agents, etc.

•   combine streams from different sources

•   integrate with Web services, Linked Data and
    SPARQL endpoints

•   attach SPARQL-based filters for smart content feeds

•   pipe the data into a triple store, publish it as Linked
    Data, power your real-time applications



                              23
RDFAgents implementation


•   implemented in Java with JADE and Sesame

    -   LEAP kernel for mobile devices

    -   all of the usual RDF formats incl. TriG, N-Quads

    -   transport protocols: XMPP, HTTP, IIOP

•   open-source

•   in progress: high-throughput RDF data streams
    with AllegroGraph

•   in progress: Droidspeak library for Android OS
                                           (    )
                            24
Conclusion



•   Semantic Web is moving into real-time and ubiquitous
    environments, but

•   common interaction models are needed

•   Semantic Web agents are particularly appropriate

•   RDFAgents = Semantic Web + FIPA for transport-
    agnostic, peer-to-peer queries and data streams with
    provenance




                            25
Thanks!

•   RDFAgents:

    •   http://fortytwo.net/2011/rdfagents/spec

    •   https://github.com/joshsh/rdfagents

•   Tetherless World Constellation: http://tw.rpi.edu

•   Franz Inc: http://www.franz.com

•   Institute of Automation: http://english.ia.cas.cn

•   TinkerPop: http://tinkerpop.com

•   Contact:

    •   josh@fortytwo.net, @joshsh

                      26

More Related Content

What's hot

Performance comparison: Multi-Model vs. MongoDB and Neo4j
Performance comparison: Multi-Model vs. MongoDB and Neo4jPerformance comparison: Multi-Model vs. MongoDB and Neo4j
Performance comparison: Multi-Model vs. MongoDB and Neo4jArangoDB Database
 
Gerry McNicol Graph Databases
Gerry McNicol Graph DatabasesGerry McNicol Graph Databases
Gerry McNicol Graph DatabasesGerry McNicol
 
MongoDB & Hadoop - Understanding Your Big Data
MongoDB & Hadoop - Understanding Your Big DataMongoDB & Hadoop - Understanding Your Big Data
MongoDB & Hadoop - Understanding Your Big DataMongoDB
 
OrientDB & Node.js Overview - JS.Everywhere() KW
OrientDB & Node.js Overview - JS.Everywhere() KWOrientDB & Node.js Overview - JS.Everywhere() KW
OrientDB & Node.js Overview - JS.Everywhere() KWgmccarvell
 
Big Data: Guidelines and Examples for the Enterprise Decision Maker
Big Data: Guidelines and Examples for the Enterprise Decision MakerBig Data: Guidelines and Examples for the Enterprise Decision Maker
Big Data: Guidelines and Examples for the Enterprise Decision MakerMongoDB
 
Neo4j Fundamentals
Neo4j FundamentalsNeo4j Fundamentals
Neo4j FundamentalsMax De Marzi
 
Using MongoDB + Hadoop Together
Using MongoDB + Hadoop TogetherUsing MongoDB + Hadoop Together
Using MongoDB + Hadoop TogetherMongoDB
 
Mining a Large Web Corpus
Mining a Large Web CorpusMining a Large Web Corpus
Mining a Large Web CorpusRobert Meusel
 
Intro to-technologies-Green-City-Hackathon-Athens
Intro to-technologies-Green-City-Hackathon-AthensIntro to-technologies-Green-City-Hackathon-Athens
Intro to-technologies-Green-City-Hackathon-AthensStoitsis Giannis
 
Polyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4jPolyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4jCorie Pollock
 
The web of interlinked data and knowledge stripped
The web of interlinked data and knowledge strippedThe web of interlinked data and knowledge stripped
The web of interlinked data and knowledge strippedSören Auer
 
RDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use itRDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use itJose Luis Lopez Pino
 
An Introduction to Graph Databases
An Introduction to Graph DatabasesAn Introduction to Graph Databases
An Introduction to Graph DatabasesInfiniteGraph
 
Scaling up Linked Data
Scaling up Linked DataScaling up Linked Data
Scaling up Linked DataEUCLID project
 
Microtask Crowdsourcing Applications for Linked Data
Microtask Crowdsourcing Applications for Linked DataMicrotask Crowdsourcing Applications for Linked Data
Microtask Crowdsourcing Applications for Linked DataEUCLID project
 
DubJug: Neo4J and Open Data
DubJug: Neo4J and Open DataDubJug: Neo4J and Open Data
DubJug: Neo4J and Open DataScott Sosna
 

What's hot (20)

Performance comparison: Multi-Model vs. MongoDB and Neo4j
Performance comparison: Multi-Model vs. MongoDB and Neo4jPerformance comparison: Multi-Model vs. MongoDB and Neo4j
Performance comparison: Multi-Model vs. MongoDB and Neo4j
 
Graph databases
Graph databasesGraph databases
Graph databases
 
Gerry McNicol Graph Databases
Gerry McNicol Graph DatabasesGerry McNicol Graph Databases
Gerry McNicol Graph Databases
 
MongoDB & Hadoop - Understanding Your Big Data
MongoDB & Hadoop - Understanding Your Big DataMongoDB & Hadoop - Understanding Your Big Data
MongoDB & Hadoop - Understanding Your Big Data
 
OrientDB & Node.js Overview - JS.Everywhere() KW
OrientDB & Node.js Overview - JS.Everywhere() KWOrientDB & Node.js Overview - JS.Everywhere() KW
OrientDB & Node.js Overview - JS.Everywhere() KW
 
Big Data: Guidelines and Examples for the Enterprise Decision Maker
Big Data: Guidelines and Examples for the Enterprise Decision MakerBig Data: Guidelines and Examples for the Enterprise Decision Maker
Big Data: Guidelines and Examples for the Enterprise Decision Maker
 
Graph database
Graph database Graph database
Graph database
 
Neo4j Fundamentals
Neo4j FundamentalsNeo4j Fundamentals
Neo4j Fundamentals
 
Using MongoDB + Hadoop Together
Using MongoDB + Hadoop TogetherUsing MongoDB + Hadoop Together
Using MongoDB + Hadoop Together
 
Graph Database
Graph DatabaseGraph Database
Graph Database
 
Mining a Large Web Corpus
Mining a Large Web CorpusMining a Large Web Corpus
Mining a Large Web Corpus
 
Graph Databases
Graph DatabasesGraph Databases
Graph Databases
 
Intro to-technologies-Green-City-Hackathon-Athens
Intro to-technologies-Green-City-Hackathon-AthensIntro to-technologies-Green-City-Hackathon-Athens
Intro to-technologies-Green-City-Hackathon-Athens
 
Polyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4jPolyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4j
 
The web of interlinked data and knowledge stripped
The web of interlinked data and knowledge strippedThe web of interlinked data and knowledge stripped
The web of interlinked data and knowledge stripped
 
RDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use itRDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use it
 
An Introduction to Graph Databases
An Introduction to Graph DatabasesAn Introduction to Graph Databases
An Introduction to Graph Databases
 
Scaling up Linked Data
Scaling up Linked DataScaling up Linked Data
Scaling up Linked Data
 
Microtask Crowdsourcing Applications for Linked Data
Microtask Crowdsourcing Applications for Linked DataMicrotask Crowdsourcing Applications for Linked Data
Microtask Crowdsourcing Applications for Linked Data
 
DubJug: Neo4J and Open Data
DubJug: Neo4J and Open DataDubJug: Neo4J and Open Data
DubJug: Neo4J and Open Data
 

Viewers also liked

Why You Should Shop And Donate To Goodwill
Why You Should Shop And Donate To GoodwillWhy You Should Shop And Donate To Goodwill
Why You Should Shop And Donate To Goodwillsilver920
 
Food advertising: An essential guide for advertisers and agencies
Food advertising: An essential guide for advertisers and agenciesFood advertising: An essential guide for advertisers and agencies
Food advertising: An essential guide for advertisers and agenciesNewsworks
 
PaulBoosey-BeatBox-final-project-upload2
PaulBoosey-BeatBox-final-project-upload2PaulBoosey-BeatBox-final-project-upload2
PaulBoosey-BeatBox-final-project-upload2Paul Boosey
 
82839826 premium-services-on-cc
82839826 premium-services-on-cc82839826 premium-services-on-cc
82839826 premium-services-on-cchomeworkping3
 
Reach out and touch the future: Accenture connected vehicle solutions
Reach out and touch the future: Accenture connected vehicle solutionsReach out and touch the future: Accenture connected vehicle solutions
Reach out and touch the future: Accenture connected vehicle solutionsaccenture
 
Tarea seminario 5
Tarea seminario 5Tarea seminario 5
Tarea seminario 5checolid
 
Metrología y Calibración de Equipo Biomédico
Metrología y Calibración de Equipo BiomédicoMetrología y Calibración de Equipo Biomédico
Metrología y Calibración de Equipo BiomédicoINBIOCOP SAS
 
بيان خدمة شركة الساحل مترجم
بيان خدمة شركة الساحل مترجمبيان خدمة شركة الساحل مترجم
بيان خدمة شركة الساحل مترجمHousam Mkhallati
 
2011 Kickoff Event Presentation Materials: Community in the Enterprise
2011 Kickoff Event Presentation Materials: Community in the Enterprise2011 Kickoff Event Presentation Materials: Community in the Enterprise
2011 Kickoff Event Presentation Materials: Community in the Enterprise7Summits
 
Recommandations SEO/SEM/SMO
Recommandations SEO/SEM/SMORecommandations SEO/SEM/SMO
Recommandations SEO/SEM/SMODanièle Attias
 
脱Java初心者を目指すときに読むといいと思う本を考える会
脱Java初心者を目指すときに読むといいと思う本を考える会脱Java初心者を目指すときに読むといいと思う本を考える会
脱Java初心者を目指すときに読むといいと思う本を考える会terahide
 
Startup Marketing: A Systems Approach
Startup Marketing: A Systems ApproachStartup Marketing: A Systems Approach
Startup Marketing: A Systems ApproachApril Dunford
 
Jml.nameraka.nihongo.kaiwa vietnamese
Jml.nameraka.nihongo.kaiwa vietnameseJml.nameraka.nihongo.kaiwa vietnamese
Jml.nameraka.nihongo.kaiwa vietnameseNấm Storm
 

Viewers also liked (20)

Why You Should Shop And Donate To Goodwill
Why You Should Shop And Donate To GoodwillWhy You Should Shop And Donate To Goodwill
Why You Should Shop And Donate To Goodwill
 
Food advertising: An essential guide for advertisers and agencies
Food advertising: An essential guide for advertisers and agenciesFood advertising: An essential guide for advertisers and agencies
Food advertising: An essential guide for advertisers and agencies
 
PaulBoosey-BeatBox-final-project-upload2
PaulBoosey-BeatBox-final-project-upload2PaulBoosey-BeatBox-final-project-upload2
PaulBoosey-BeatBox-final-project-upload2
 
Tmg Apresentação Corporativa
Tmg   Apresentação CorporativaTmg   Apresentação Corporativa
Tmg Apresentação Corporativa
 
82839826 premium-services-on-cc
82839826 premium-services-on-cc82839826 premium-services-on-cc
82839826 premium-services-on-cc
 
Newport Beach
Newport BeachNewport Beach
Newport Beach
 
1
11
1
 
Reach out and touch the future: Accenture connected vehicle solutions
Reach out and touch the future: Accenture connected vehicle solutionsReach out and touch the future: Accenture connected vehicle solutions
Reach out and touch the future: Accenture connected vehicle solutions
 
EPA CAA Email 12.6.02
EPA CAA Email 12.6.02EPA CAA Email 12.6.02
EPA CAA Email 12.6.02
 
Tarea seminario 5
Tarea seminario 5Tarea seminario 5
Tarea seminario 5
 
E Burbidge #idealab12
E Burbidge #idealab12E Burbidge #idealab12
E Burbidge #idealab12
 
Metrología y Calibración de Equipo Biomédico
Metrología y Calibración de Equipo BiomédicoMetrología y Calibración de Equipo Biomédico
Metrología y Calibración de Equipo Biomédico
 
بيان خدمة شركة الساحل مترجم
بيان خدمة شركة الساحل مترجمبيان خدمة شركة الساحل مترجم
بيان خدمة شركة الساحل مترجم
 
2011 Kickoff Event Presentation Materials: Community in the Enterprise
2011 Kickoff Event Presentation Materials: Community in the Enterprise2011 Kickoff Event Presentation Materials: Community in the Enterprise
2011 Kickoff Event Presentation Materials: Community in the Enterprise
 
Recommandations SEO/SEM/SMO
Recommandations SEO/SEM/SMORecommandations SEO/SEM/SMO
Recommandations SEO/SEM/SMO
 
Revista Orange Nov 2016
Revista Orange Nov 2016Revista Orange Nov 2016
Revista Orange Nov 2016
 
Ap chem unit 6
Ap chem unit 6 Ap chem unit 6
Ap chem unit 6
 
脱Java初心者を目指すときに読むといいと思う本を考える会
脱Java初心者を目指すときに読むといいと思う本を考える会脱Java初心者を目指すときに読むといいと思う本を考える会
脱Java初心者を目指すときに読むといいと思う本を考える会
 
Startup Marketing: A Systems Approach
Startup Marketing: A Systems ApproachStartup Marketing: A Systems Approach
Startup Marketing: A Systems Approach
 
Jml.nameraka.nihongo.kaiwa vietnamese
Jml.nameraka.nihongo.kaiwa vietnameseJml.nameraka.nihongo.kaiwa vietnamese
Jml.nameraka.nihongo.kaiwa vietnamese
 

Similar to The Real-time Web in the Age of Agents

Social Media, Cloud Computing, Machine Learning, Open Source, and Big Data An...
Social Media, Cloud Computing, Machine Learning, Open Source, and Big Data An...Social Media, Cloud Computing, Machine Learning, Open Source, and Big Data An...
Social Media, Cloud Computing, Machine Learning, Open Source, and Big Data An...Open Analytics
 
Open Data Summit Presentation by Joe Olsen
Open Data Summit Presentation by Joe OlsenOpen Data Summit Presentation by Joe Olsen
Open Data Summit Presentation by Joe OlsenChristopher Whitaker
 
Introduction to APIs and Linked Data
Introduction to APIs and Linked DataIntroduction to APIs and Linked Data
Introduction to APIs and Linked DataAdrian Stevenson
 
Filtering From the Firehose: Real Time Social Media Streaming
Filtering From the Firehose: Real Time Social Media StreamingFiltering From the Firehose: Real Time Social Media Streaming
Filtering From the Firehose: Real Time Social Media StreamingCloud Elements
 
Big Data to SMART Data : Process Scenario
Big Data to SMART Data : Process ScenarioBig Data to SMART Data : Process Scenario
Big Data to SMART Data : Process ScenarioCHAKER ALLAOUI
 
Strategies for integrating semantic and blockchain technologies
Strategies for integrating semantic and blockchain technologiesStrategies for integrating semantic and blockchain technologies
Strategies for integrating semantic and blockchain technologiesHéctor Ugarte
 
Contextual Computing - Knowledge Graphs & Web of Entities
Contextual Computing - Knowledge Graphs & Web of EntitiesContextual Computing - Knowledge Graphs & Web of Entities
Contextual Computing - Knowledge Graphs & Web of EntitiesRichard Wallis
 
Contextual Computing: Laying a Global Data Foundation
Contextual Computing: Laying a Global Data FoundationContextual Computing: Laying a Global Data Foundation
Contextual Computing: Laying a Global Data FoundationRichard Wallis
 
IoT Interoperability: a Hub-based Approach
IoT Interoperability: a Hub-based ApproachIoT Interoperability: a Hub-based Approach
IoT Interoperability: a Hub-based ApproachMichael Blackstock
 
10 Big Data Technologies you Didn't Know About
10 Big Data Technologies you Didn't Know About 10 Big Data Technologies you Didn't Know About
10 Big Data Technologies you Didn't Know About Jesus Rodriguez
 
data-mesh-101.pptx
data-mesh-101.pptxdata-mesh-101.pptx
data-mesh-101.pptxTarekHamdi8
 
Microblogging: A Semantic Web and Distributed Approach
Microblogging: A Semantic Web and Distributed ApproachMicroblogging: A Semantic Web and Distributed Approach
Microblogging: A Semantic Web and Distributed ApproachAlexandre Passant
 
What do we want computers to do for us?
What do we want computers to do for us? What do we want computers to do for us?
What do we want computers to do for us? Andrea Volpini
 
Reactive Fast Data & the Data Lake with Akka, Kafka, Spark
Reactive Fast Data & the Data Lake with Akka, Kafka, SparkReactive Fast Data & the Data Lake with Akka, Kafka, Spark
Reactive Fast Data & the Data Lake with Akka, Kafka, SparkTodd Fritz
 
WebGUI And The Semantic Web
WebGUI And The Semantic WebWebGUI And The Semantic Web
WebGUI And The Semantic WebWilliam McKee
 
A Real-World Implementation of Linked Data
A Real-World Implementation of Linked DataA Real-World Implementation of Linked Data
A Real-World Implementation of Linked DataDimitri van Hees
 
Why Your MongoDB Needs Redis
Why Your MongoDB Needs RedisWhy Your MongoDB Needs Redis
Why Your MongoDB Needs RedisItamar Haber
 

Similar to The Real-time Web in the Age of Agents (20)

Social Media, Cloud Computing, Machine Learning, Open Source, and Big Data An...
Social Media, Cloud Computing, Machine Learning, Open Source, and Big Data An...Social Media, Cloud Computing, Machine Learning, Open Source, and Big Data An...
Social Media, Cloud Computing, Machine Learning, Open Source, and Big Data An...
 
Open Data Summit Presentation by Joe Olsen
Open Data Summit Presentation by Joe OlsenOpen Data Summit Presentation by Joe Olsen
Open Data Summit Presentation by Joe Olsen
 
Introduction to APIs and Linked Data
Introduction to APIs and Linked DataIntroduction to APIs and Linked Data
Introduction to APIs and Linked Data
 
Filtering From the Firehose: Real Time Social Media Streaming
Filtering From the Firehose: Real Time Social Media StreamingFiltering From the Firehose: Real Time Social Media Streaming
Filtering From the Firehose: Real Time Social Media Streaming
 
Big Data to SMART Data : Process Scenario
Big Data to SMART Data : Process ScenarioBig Data to SMART Data : Process Scenario
Big Data to SMART Data : Process Scenario
 
Strategies for integrating semantic and blockchain technologies
Strategies for integrating semantic and blockchain technologiesStrategies for integrating semantic and blockchain technologies
Strategies for integrating semantic and blockchain technologies
 
Contextual Computing - Knowledge Graphs & Web of Entities
Contextual Computing - Knowledge Graphs & Web of EntitiesContextual Computing - Knowledge Graphs & Web of Entities
Contextual Computing - Knowledge Graphs & Web of Entities
 
Contextual Computing: Laying a Global Data Foundation
Contextual Computing: Laying a Global Data FoundationContextual Computing: Laying a Global Data Foundation
Contextual Computing: Laying a Global Data Foundation
 
IoT Interoperability: a Hub-based Approach
IoT Interoperability: a Hub-based ApproachIoT Interoperability: a Hub-based Approach
IoT Interoperability: a Hub-based Approach
 
10 Big Data Technologies you Didn't Know About
10 Big Data Technologies you Didn't Know About 10 Big Data Technologies you Didn't Know About
10 Big Data Technologies you Didn't Know About
 
data-mesh-101.pptx
data-mesh-101.pptxdata-mesh-101.pptx
data-mesh-101.pptx
 
Microblogging: A Semantic Web and Distributed Approach
Microblogging: A Semantic Web and Distributed ApproachMicroblogging: A Semantic Web and Distributed Approach
Microblogging: A Semantic Web and Distributed Approach
 
Design patternsforiot
Design patternsforiotDesign patternsforiot
Design patternsforiot
 
What do we want computers to do for us?
What do we want computers to do for us? What do we want computers to do for us?
What do we want computers to do for us?
 
Semantics and Machine Learning
Semantics and Machine LearningSemantics and Machine Learning
Semantics and Machine Learning
 
Reactive Fast Data & the Data Lake with Akka, Kafka, Spark
Reactive Fast Data & the Data Lake with Akka, Kafka, SparkReactive Fast Data & the Data Lake with Akka, Kafka, Spark
Reactive Fast Data & the Data Lake with Akka, Kafka, Spark
 
WebGUI And The Semantic Web
WebGUI And The Semantic WebWebGUI And The Semantic Web
WebGUI And The Semantic Web
 
Mesoscon 2015
Mesoscon 2015Mesoscon 2015
Mesoscon 2015
 
A Real-World Implementation of Linked Data
A Real-World Implementation of Linked DataA Real-World Implementation of Linked Data
A Real-World Implementation of Linked Data
 
Why Your MongoDB Needs Redis
Why Your MongoDB Needs RedisWhy Your MongoDB Needs Redis
Why Your MongoDB Needs Redis
 

More from Joshua Shinavier

Transpilers Gone Wild: Introducing Hydra
Transpilers Gone Wild: Introducing HydraTranspilers Gone Wild: Introducing Hydra
Transpilers Gone Wild: Introducing HydraJoshua Shinavier
 
An Algebraic Data Model for Graphs and Hypergraphs (Category Theory meetup, N...
An Algebraic Data Model for Graphs and Hypergraphs (Category Theory meetup, N...An Algebraic Data Model for Graphs and Hypergraphs (Category Theory meetup, N...
An Algebraic Data Model for Graphs and Hypergraphs (Category Theory meetup, N...Joshua Shinavier
 
In Search of the Universal Data Model (ISWC 2019 Minute Madness)
In Search of the Universal Data Model (ISWC 2019 Minute Madness)In Search of the Universal Data Model (ISWC 2019 Minute Madness)
In Search of the Universal Data Model (ISWC 2019 Minute Madness)Joshua Shinavier
 
In Search of the Universal Data Model (Connected Data London 2019)
In Search of the Universal Data Model (Connected Data London 2019)In Search of the Universal Data Model (Connected Data London 2019)
In Search of the Universal Data Model (Connected Data London 2019)Joshua Shinavier
 
Algebraic Property Graphs (GQL Community Update, oct. 9, 2019)
Algebraic Property Graphs (GQL Community Update, oct. 9, 2019)Algebraic Property Graphs (GQL Community Update, oct. 9, 2019)
Algebraic Property Graphs (GQL Community Update, oct. 9, 2019)Joshua Shinavier
 
Building an Enterprise Knowledge Graph @Uber: Lessons from Reality
Building an Enterprise Knowledge Graph @Uber: Lessons from RealityBuilding an Enterprise Knowledge Graph @Uber: Lessons from Reality
Building an Enterprise Knowledge Graph @Uber: Lessons from RealityJoshua Shinavier
 
A Graph is a Graph is a Graph: Equivalence, Transformation, and Composition o...
A Graph is a Graph is a Graph: Equivalence, Transformation, and Composition o...A Graph is a Graph is a Graph: Equivalence, Transformation, and Composition o...
A Graph is a Graph is a Graph: Equivalence, Transformation, and Composition o...Joshua Shinavier
 
Evolution of the Graph Schema
Evolution of the Graph SchemaEvolution of the Graph Schema
Evolution of the Graph SchemaJoshua Shinavier
 
TinkerPop: a story of graphs, DBs, and graph DBs
TinkerPop: a story of graphs, DBs, and graph DBsTinkerPop: a story of graphs, DBs, and graph DBs
TinkerPop: a story of graphs, DBs, and graph DBsJoshua Shinavier
 
semantic markup using schema.org
semantic markup using schema.orgsemantic markup using schema.org
semantic markup using schema.orgJoshua Shinavier
 
Real-time Semantic Web with Twitter Annotations
Real-time Semantic Web with Twitter AnnotationsReal-time Semantic Web with Twitter Annotations
Real-time Semantic Web with Twitter AnnotationsJoshua Shinavier
 
Real-time #SemanticWeb in 140 chars
Real-time #SemanticWeb in 140 charsReal-time #SemanticWeb in 140 chars
Real-time #SemanticWeb in 140 charsJoshua Shinavier
 

More from Joshua Shinavier (16)

Anything-to-Graph
Anything-to-GraphAnything-to-Graph
Anything-to-Graph
 
Transpilers Gone Wild: Introducing Hydra
Transpilers Gone Wild: Introducing HydraTranspilers Gone Wild: Introducing Hydra
Transpilers Gone Wild: Introducing Hydra
 
TinkerPop 2020
TinkerPop 2020TinkerPop 2020
TinkerPop 2020
 
An Algebraic Data Model for Graphs and Hypergraphs (Category Theory meetup, N...
An Algebraic Data Model for Graphs and Hypergraphs (Category Theory meetup, N...An Algebraic Data Model for Graphs and Hypergraphs (Category Theory meetup, N...
An Algebraic Data Model for Graphs and Hypergraphs (Category Theory meetup, N...
 
In Search of the Universal Data Model (ISWC 2019 Minute Madness)
In Search of the Universal Data Model (ISWC 2019 Minute Madness)In Search of the Universal Data Model (ISWC 2019 Minute Madness)
In Search of the Universal Data Model (ISWC 2019 Minute Madness)
 
In Search of the Universal Data Model (Connected Data London 2019)
In Search of the Universal Data Model (Connected Data London 2019)In Search of the Universal Data Model (Connected Data London 2019)
In Search of the Universal Data Model (Connected Data London 2019)
 
Algebraic Property Graphs (GQL Community Update, oct. 9, 2019)
Algebraic Property Graphs (GQL Community Update, oct. 9, 2019)Algebraic Property Graphs (GQL Community Update, oct. 9, 2019)
Algebraic Property Graphs (GQL Community Update, oct. 9, 2019)
 
Building an Enterprise Knowledge Graph @Uber: Lessons from Reality
Building an Enterprise Knowledge Graph @Uber: Lessons from RealityBuilding an Enterprise Knowledge Graph @Uber: Lessons from Reality
Building an Enterprise Knowledge Graph @Uber: Lessons from Reality
 
A Graph is a Graph is a Graph: Equivalence, Transformation, and Composition o...
A Graph is a Graph is a Graph: Equivalence, Transformation, and Composition o...A Graph is a Graph is a Graph: Equivalence, Transformation, and Composition o...
A Graph is a Graph is a Graph: Equivalence, Transformation, and Composition o...
 
Evolution of the Graph Schema
Evolution of the Graph SchemaEvolution of the Graph Schema
Evolution of the Graph Schema
 
TinkerPop: a story of graphs, DBs, and graph DBs
TinkerPop: a story of graphs, DBs, and graph DBsTinkerPop: a story of graphs, DBs, and graph DBs
TinkerPop: a story of graphs, DBs, and graph DBs
 
Semantics and Sensors
Semantics and SensorsSemantics and Sensors
Semantics and Sensors
 
semantic markup using schema.org
semantic markup using schema.orgsemantic markup using schema.org
semantic markup using schema.org
 
Linked Process
Linked ProcessLinked Process
Linked Process
 
Real-time Semantic Web with Twitter Annotations
Real-time Semantic Web with Twitter AnnotationsReal-time Semantic Web with Twitter Annotations
Real-time Semantic Web with Twitter Annotations
 
Real-time #SemanticWeb in 140 chars
Real-time #SemanticWeb in 140 charsReal-time #SemanticWeb in 140 chars
Real-time #SemanticWeb in 140 chars
 

The Real-time Web in the Age of Agents

  • 1. Joshua Shinavier The Real-Time Web in the Age of Agents 2011 Semantic Technology Conference June 8th, 2011
  • 2. Overview • real-time Semantic Web is emerging • state of the art • real-time interaction? • Semantic Web agents • use cases • the RDFAgents specification • queries and subscriptions • data model • provenance and information discovery 2
  • 3. Real-time interaction with the Semantic Web • let’s mash up the “real-time” social Web with the Semantic Web • data sources are plentiful • e.g. Twitter, Facebook, Glue, ActivityStreams • data integration is straightforward • mapping into Semantic Web vocabularies • linking into Semantic Web datasets • what about interaction? 3
  • 4. Semantic Web “1.0” was • ...not “real-time” - static RDF data, occasionally updated • ...not ubiquitous - desktop model (browsers, keyword search) - client-server model • ...not very interactive - read-only content, monolithic triple stores - little “bottom-up” user content 4
  • 5. Getting closer to “real-time” static triple stores days web pages hours blogs minutes microblogs TwitLogic seconds instant messaging sparqlPuSH C-SPARQL milliseconds streaming media latency technology misc. examples 5
  • 6. More ubiquitous, more interactive • mobile Semantic Web - e.g. RDF On the Go, Android Semantic Web Core library, DBpedia/mSpace/OntoWiki Mobile • semantic sensor networks • semantic publishing and presence - e.g. SMOB, Sharing Spaces • smart spaces, dialogue-based Semantic Web UI 6
  • 7. The 10,000-foot view • real-time Semantic Web is growing organically • common themes: - rapidly changing data - two-way, peer-to-peer communication - participation of “ubiquitous” devices large and small • we need shared frameworks for real-time interaction 7
  • 8. Enter Semantic Web agents “The real power of the Semantic Web will be realized when people create many programs that collect Web content from diverse sources, process the information and exchange the results with other programs. The effectiveness of such software agents will increase exponentially as more machine-readable Web content and services becomes available.” — Tim Berners-Lee et al., 2001 8
  • 9. By “agent”, we mean: • peer-to-peer communication • proactive, event-driven information sharing • conventions for provenance tracking • support for a variety of interaction protocols - e.g. for query answering, subscriptions, contracts ( not that kind of agent. ) 9
  • 10. Use cases: basic query answering • Agent A → Agent B: “Who is Josh?” • Agent B → Agent A: “Josh is a presenter at SemTech.” 10
  • 11. Use cases: query delegation with provenance • Agent A → Agent B: “Who is Josh?” - Agent B → Agent C, Agent D: “Who is Josh?” - Agent C → Agent B: “Josh is a presenter at SemTech.” - Agent D → Agent B: “Josh has the Twitter handle @joshsh and has written these tweets: ...” • Agent B → Agent A: “Agent C says that Josh is a presenter at SemTech. Agent D says that Josh has the Twitter handle @joshsh and has written these tweets: ...” 11
  • 12. Use cases: real-time data streams • Agent A → Agent B: “Keep me up to date about SemTech.” • Agent B → Agent A: “Will do!” • Agent B → Agent A: “Josh has just written this tweet about SemTech: ...” • Agent B → Agent A: “Craig has just posted this review of SemTech: ...” 12
  • 13. Use cases: syndication with provenance • Agent A → Agent B: “Keep me up to date about SemTech.” • Agent B → Agent A: “Will do!” - Agent B → Agent C: “Keep me up to date about SemTech.” - Agent C → Agent B: “Will do!” - Agent C → Agent B: “Josh has just written this tweet about SemTech: ...” • Agent B → Agent A: “Agent C says that Josh has just written this tweet about SemTech: ...” 13
  • 14. Why agents? Extreme real-time • human limit of real-time ≈ 10 - 100ms - these are simultaneity thresholds, central to human sensory integration • technical limits of real-time are similar - 134ms for a round-trip around the Earth (ideally) - 28ms from New York to San Francisco and back - actual Internet latency is 2 to 3 times higher, but • TCP’s three-way handshake is a problem - we need long-lived connections and bidirectional data flow, as in XMPP (Jabber) 14
  • 15. Why agents? The standards • FIPA (Foundation for Intelligent Physical Agents) • most widely-adopted body of agent standards • supports peer-to-peer, asynchronous, and event- driven communication • transport agnostic - compatible with HTTP, XMPP, etc. • easily coupled with Web APIs, Semantic Web data formats 15
  • 16. RDFAgents = + data streams • RDFAgents specification • extends FIPA • enables query answering and real-time data streams with provenance • includes: • RDF content languages • two interaction protocols: Query and Pub-Sub • support for trust, privacy, information accountability • conventions for peer-to-peer information discovery 16
  • 17. Queries 17
  • 19. message type Example: a message (inform-ref sender and :sender (agent-identifier :name http://example.org/twitlogic receiver ! :addresses (sequence xmpp:twitlogic@example.org)) :receiver (set (agent-identifier :name http://example.org/consumer ! :addresses (sequence xmpp:consumer@example.org))) :protocol fipa-subscribe :conversation-id c976b710a5 :language rdf-trig “conversation” :content " metadata @prefix dc: <http://purl.org/dc/terms/> . @prefix ex: <http://example.org/> . @prefix sioc: <http://rdfs.org/sioc/ns#> . RDF dataset @prefix sioct: <http://rdfs.org/sioc/types#> . @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . { ex:post1785782813 a sioct:MicroblogPost ; dc:title "#SemTech begins again!" ; dc:created "2011-06-06T19:43:35.000Z"^^xsd:dateTime ; sioc:topic <http://twitlogic.fortytwo.net/hashtag/semtech> . }") 19
  • 20. RDFAgents data model • agents exchange RDF Datasets, in the sense of SPARQL - any number of Named Graphs - may be annotated with provenance metadata - a single default graph - contains asserted (accepted) statements • agents identify themselves with Semantic Web URIs - agent contact information in FOAF • Semantic Web Publishing vocabulary captures the provenance trail 20
  • 21. Example: a dataset from a message a named graph generic content <urn:uuid:be0c72c6-2b8f-4134-b309-690039f8c419> { ex:post1785782813 a sioct:MicroblogPost ; dc:title "#SemTech begins again!" ; dc:created "2011-06-06T19:43:35.000Z"^^xsd:dateTime ; sioc:topic <http://twitlogic.fortytwo.net/hashtag/semtech> . } the default graph (accepted statements) { <urn:uuid:be0c72c6-2b8f-4134-b309-690039f8c419> a rdfg:Graph ; swp:assertedBy <urn:uuid:be0c72c6-2b8f-4134-b309-690039f8c419> ; swp:authority ex:twitlogic . ex:twitlogic a foaf:Agent ; foaf:mbox <xmpp:twitlogic@example.org> . } graph metadata agent metadata 21
  • 22. The provenance trail • keeping track of who said what - publishers deserve credit for their content - consumers need to decide what to believe • RDFAgents specifies a provenance-preserving transformation for each dataset received - records “A said that B said X” relationships between agents and graphs • simple policies unravel the provenance trail to accept or reject RDF statements • provenance metadata also supports information discovery 22
  • 23. What can you do with RDFAgents? • make real-time streams out of social data sources - e.g. Twitter agents, ActivityStreams agents, etc. • combine streams from different sources • integrate with Web services, Linked Data and SPARQL endpoints • attach SPARQL-based filters for smart content feeds • pipe the data into a triple store, publish it as Linked Data, power your real-time applications 23
  • 24. RDFAgents implementation • implemented in Java with JADE and Sesame - LEAP kernel for mobile devices - all of the usual RDF formats incl. TriG, N-Quads - transport protocols: XMPP, HTTP, IIOP • open-source • in progress: high-throughput RDF data streams with AllegroGraph • in progress: Droidspeak library for Android OS ( ) 24
  • 25. Conclusion • Semantic Web is moving into real-time and ubiquitous environments, but • common interaction models are needed • Semantic Web agents are particularly appropriate • RDFAgents = Semantic Web + FIPA for transport- agnostic, peer-to-peer queries and data streams with provenance 25
  • 26. Thanks! • RDFAgents: • http://fortytwo.net/2011/rdfagents/spec • https://github.com/joshsh/rdfagents • Tetherless World Constellation: http://tw.rpi.edu • Franz Inc: http://www.franz.com • Institute of Automation: http://english.ia.cas.cn • TinkerPop: http://tinkerpop.com • Contact: • josh@fortytwo.net, @joshsh 26