SlideShare uma empresa Scribd logo
1 de 149
Baixar para ler offline
Creating Semantic Mashups:

  Bridging Web 2.0 and the
       Semantic Web


   Jamie Taylor, Colin Evans, Toby Segaran
Why is Semantic Data Interesting?
Why is Semantic Data Interesting?


•Walmart demo
Why is Semantic Data Interesting?


•Walmart demo
 • http://blog.kiwitobes.com/?p=51
Why is Semantic Data Interesting?


•Walmart demo
 • http://blog.kiwitobes.com/?p=51

•Political Query
Why is Semantic Data Interesting?


•Walmart demo
 • http://blog.kiwitobes.com/?p=51

•Political Query
 • http://www.freebase.com/view/guid/9202a8c04000641f8000000008053940
Why is Semantic Data Interesting?


•Walmart demo
 • http://blog.kiwitobes.com/?p=51

•Political Query
 • http://www.freebase.com/view/guid/9202a8c04000641f8000000008053940

•Venture Spin
Why is Semantic Data Interesting?


•Walmart demo
 • http://blog.kiwitobes.com/?p=51

•Political Query
 • http://www.freebase.com/view/guid/9202a8c04000641f8000000008053940

•Venture Spin
 • http://www.perlgoddess.com/FreeSpin/FreeSpin.swf
Semantic Data is Flexible Data

•   The data for these demos all used structured semantics

•   The data was not specifically designed for the demo

•   The demos can utilize any data set with shared
    semantics (e.g., Venture Spin)
Overview
Overview

•Introduction to semantic ideas
Overview

•Introduction to semantic ideas

•Technologies and Architectural techniques
Overview

•Introduction to semantic ideas

•Technologies and Architectural techniques

•Build something now looking to the Future
Goals
Goals
•Enough to get you started with semantic
 technologies
Goals
•Enough to get you started with semantic
 technologies

•Understand advantages and issues with
 semantic architectures
Goals
•Enough to get you started with semantic
 technologies

•Understand advantages and issues with
 semantic architectures

•Basic understanding of semantic
 representation
Goals
•Enough to get you started with semantic
 technologies

•Understand advantages and issues with
 semantic architectures

•Basic understanding of semantic
 representation

•Ability to use basic semantic repository
Goals
•Enough to get you started with semantic
 technologies

•Understand advantages and issues with
 semantic architectures

•Basic understanding of semantic
 representation

•Ability to use basic semantic repository

•Working overview of a semantic system
Semantics: Why do we care?


 As web developers we want to:
 • Increase the utility of our applications
      e.g., help users get stuff done
 • Build applications with greater efficiency
Web 1.0
Web 1.0



           •Single function applications
           •Publishing large private databases
Web 1.0: Stovepipes
                Diner and a Movie
Web 1.0: Stovepipes

•   Data is in silos
•   No information sharing except in the user’s head
•   The end user drives system and data integration
            ...usually through “copy & paste”
Web 2.0
Web 2.0
            •Leverage silos of content
            •User-generated content
            •Open APIs facilitate mash-ups
            •The “Social Web”
Web 2.0: UI Mashups
Web 2.0: UI Mashups


• Mash-ups only allow shallow integration at the UI
• Data is still in silos
• User-generated content is also in silos
   Data doesn’t stray far
   from its point of creation
Today
• Even with open APIs and mash-ups, users still do
  most of the system integration
• With the proliferation of user-generated content,
  system integration is more important than ever!
• Data, whether user-generated, or proprietary, is
  not easily accessible or transferable
• We’re still fighting with stovepipe systems
History of Web Integration




Users’ Brain
 Web 1.0



               Point of Integration
History of Web Integration




Users’ Brain   UI (Mash-up)
 Web 1.0         Web 2.0



                Point of Integration
History of Web Integration




Users’ Brain   UI (Mash-up)            Semantic
 Web 1.0         Web 2.0               Mash-ups



                Point of Integration
Integration Scaling          Users benefit as
                                 more data is
                                 made available
Web 2.0 Mashup                   in application



                 Utility increase as number
                 of sources increases
Integration Scaling          Easy to integrate
                                 first few sources,

                                but complexity
                                increases as

Web 2.0 Mashup                  number of sources
                                increases



                 Integration effort grows
                 with number of sources
Integration Scaling        Pay a slightly higher
                                start-up cost, but

Semantic Mashup
                                quickly benefit.

                                Note: red line is
                                should somewhat
                                sloping up :-)


                  Treat sources uniformly
Why Semantics
Why Semantics


•Developing Content is expensive
Why Semantics


•Developing Content is expensive

•Developing Web applications is expensive
Why Semantics


•Developing Content is expensive

•Developing Web applications is expensive

•Use existing systems/sources where possible
Cracking the Stovepipe

• Semantics facilitate shared meaning through
 • Subject Identity
 • Strong Semantics
 • Open APIS + Open Data
• These principles make it much easier to combine
  stovepipe systems and integrate data
Creating Meaning




Ridley Scott directed Blade Runner
Creating Meaning




Ridley Scott directed Blade Runner

   subject
Creating Meaning




Ridley Scott directed Blade Runner

   subject    predicate
Creating Meaning




Ridley Scott directed Blade Runner

   subject    predicate   object
Creating Meaning
Creating Meaning




Ridley
Scott
Creating Meaning




Ridley
         directed
Scott
Creating Meaning




Ridley               Blade
         directed
Scott               Runner
Creating Meaning




 Ridley                 Blade
          directed
 Scott                 Runner



subject    predicate    object
Using Shared Meaning

         Creating Triples in Javascript:

myRDF = new RDF()
t1 = new Triple('A', 'geo', '37.44, -122.14')
t2 = new Triple('B', 'company', 'Wal-mart')
myRDF.addTriples([t1, t2])




                                           http://rdflib.net/
Using Shared Meaning




              http://kiwitobes.com/maptest/
                                              http://rdflib.net/
Using Shared Meaning
Example of a service (Freebase):
function businessindustry(store) {
   at=store.Match(null,null,'industry',null)
   for (i=0;i<at.length;i++) {
      subject=at[i].subject
      industry=at[i].object

      
      query=[{'type':'/business/company',
      
              'name':null,
      
              'industry':industry}]
      
      
      
      Metaweb.read(query,
      
                   function(r) {
      
                      t=[]
      
                      for (i=0;i<r.length;i++) {
      
                         t.push(new Triple(subject,
                                 'company',r[i].name,'','','en'))
                      }
                      store.addTriples(t)
                   })  
   }
}
Using Shared Meaning
Example of a service (Upcoming):

function eventsearch(store) {
    at=store.Match(null,null,'event',null)
    for (i=0;i<at.length;i++) {
       subject=at[i].subject
       event=at[i].object
       
       var request = new XMLHttpRequest(); 
       request.open(quot;GETquot;, 'upcomingread.php?query='+event, true);
       request.onreadystatechange = function()
       {
           if (request.readyState == 4) {
              var items = request.responseXML.getElementsByTagName(quot;eventquot;);
              t=[]
              for (j=0;j<items.length;j++) {
               address=items[j].getAttribute('venue_address')+', '+
                      items[j].getAttribute('venue_city')+', '+
                      items[j].getAttribute('venue_state_code')+' '+
                      items[j].getAttribute('venue_zip')
              
               t.push(new Triple(subject,'address',address))
              }
              store.addTriples(t)
           }

       };
       request.send(null);
    }
}
Identifying Shared Meaning
The Meaning of “is” is
http://dbpedia.org/resource/IS
The Meaning of “is” is
     http://dbpedia.org/resource/IS
•URI’s provide strong
 references
The Meaning of “is” is
     http://dbpedia.org/resource/IS
•URI’s provide strong
 references
 •Much like pointing in the
  physical world
The Meaning of “is” is
     http://dbpedia.org/resource/IS
•URI’s provide strong
 references
 •Much like pointing in the
  physical world
         “this is red”
The Meaning of “is” is
     http://dbpedia.org/resource/IS
•URI’s provide strong
 references
 •Much like pointing in the
  physical world
        “this is red”
       “this is a pen”
The Meaning of “is” is
     http://dbpedia.org/resource/IS
•URI’s provide strong
 references
 •Much like pointing in the
  physical world
        “this is red”
       “this is a pen”
 •a URIref is an unambiguous
  pointer to something of
  meaning
Creating Meaning




  http://...         http://...
ridley_scott      blade_runner
Creating Meaning




  http://...         http://...
ridley_scott      blade_runner
Creating Meaning




  http://...                           http://...
ridley_scott   http://...directed   blade_runner
Creating Meaning




  http://...                           http://...
ridley_scott   http://...directed   blade_runner
Creating Meaning




  http://...                           http://...
ridley_scott   http://...directed   blade_runner




subject              predicate          object
Creating Meaning


fb = Namespace(quot;http://www.freebase.com/view/en/quot;)
graph.add(
 ( fb(quot;blade_runnerquot;),
   fb(quot;directed_byquot;),
   fb(quot;ridley_scottquot;) )
Two Types of URIrefs
Two Types of URIrefs
•Things/states (subjects, objects)
Two Types of URIrefs
•Things/states (subjects, objects)
 •Blade Runner
Two Types of URIrefs
•Things/states (subjects, objects)
 •Blade Runner
 •Ridley Scott
Two Types of URIrefs
•Things/states (subjects, objects)
 •Blade Runner
 •Ridley Scott
 •Movies
Two Types of URIrefs
•Things/states (subjects, objects)
 •Blade Runner
 •Ridley Scott
 •Movies
•Relations (predicates)
Two Types of URIrefs
•Things/states (subjects, objects)
 •Blade Runner
 •Ridley Scott
 •Movies
•Relations (predicates)
 •directed by
Two Types of URIrefs
•Things/states (subjects, objects)
 •Blade Runner
 •Ridley Scott
 •Movies
•Relations (predicates)
 •directed by
 •acted in
Graph Data Models
Graph Data Models


      quot;Blade Runnerquot;

     name
Graph Data Models


       quot;Blade Runnerquot;

     name           Jun 25, 1982
     release date
Graph Data Models


       quot;Blade Runnerquot;

     name           1981
     release date
       actor
                    quot;Harrison Fordquot;
Graph Data Models


        quot;Blade Runnerquot;

     name           Jun 25, 1982
     release date
                              quot;Harrison Fordquot;
     actor
                       name
Graph Data Models


        quot;Blade Runnerquot;

     name           Jun 25, 1982
     release date
                                 quot;Harrison Fordquot;
     actor
                       name
                         birth
                         date
                                    Jul 13, 1942
Graph Data Models
from rdflib import *

fb = Namespace(quot;http://www.freebase.com/view/en/quot;)
graph = ConjunctiveGraph()

br = fb(quot;blade_runnerquot;)
graph.add((br, fb(quot;namequot;), Literal(“Blade Runner”))
graph.add((br, fb(quot;release_datequot;), Literal(“Jun 25, 1982”))

hf = fb(“harrison_ford”)
graph.add((hf, fb(quot;namequot;), Literal(“Harrison Ford”))
graph.add((hf, fb(quot;birth_datequot;), Literal(“Jul 13, 1942”))

graph.add((br, fb(quot;actorquot;), hf))
Graph Integration
Graph Integration
        B



A


        C



            D



    E
Graph Integration
        B                   B



A                   A


        C                   C



            D



    E                   E
                F
Graph Integration
              B               B



      A               A


              C               C



                  D



          E               E
                  F
Graph Integration
                B



        A


                C



                    D



            E
    F
W3C Vision

   Tim Berners-Lee’s
   Giant Global Graph
Stack Attack: Semantic Web




            taken from http://www.w3.org/2007/Talks/0130-sb-W3CTechSemWeb/layerCake-4.png
Stack Attack: J2EE
Take What You Need




        taken from http://www.w3.org/2007/Talks/0130-sb-W3CTechSemWeb/layerCake-4.png
Take What You Need




        taken from http://www.w3.org/2007/Talks/0130-sb-W3CTechSemWeb/layerCake-4.png
Linked Open Data
•Web of Open Data (“global graph”)
•Expressed in RDF
•Lack of ontological agreement
 •how many ways are there to express lat/lon?!
•Canonical references are problematic
•Closest thing we have to the Semantic Web
   ...more like a test bed
Tabulator
          Browsing the Global Graph




http://dig.csail.mit.edu/2005/ajar/ajaw/data#Tabulator
Open Data




            http://demo.openlibrary.org/dev/docs/data




    R Data
                     http://theinfo.org/

                    http://theinfo.org/get/data
Just Enough RDF
              Don’t get caught up in the
              serial representation - any
              RDF library will take care
              of that for you
              transparently.

              Focus on the data model
Just Enough RDF
                       Don’t get caught up in the
                       serial representation - any
                       RDF library will take care
                       of that for you
                       transparently.

•RDF is a Data Model   Focus on the data model
Just Enough RDF
                         Don’t get caught up in the
                         serial representation - any
                         RDF library will take care
                         of that for you
                         transparently.

•RDF is a Data Model     Focus on the data model


 •A very simple model!
Just Enough RDF
                                 Don’t get caught up in the
                                 serial representation - any
                                 RDF library will take care
                                 of that for you
                                 transparently.

•RDF is a Data Model             Focus on the data model


 •A very simple model!
•RDF has many (inconvenient) serializations
Just Enough RDF
                                 Don’t get caught up in the
                                 serial representation - any
                                 RDF library will take care
                                 of that for you
                                 transparently.

•RDF is a Data Model             Focus on the data model


 •A very simple model!
•RDF has many (inconvenient) serializations
 •RDF-XML
Just Enough RDF
                                 Don’t get caught up in the
                                 serial representation - any
                                 RDF library will take care
                                 of that for you
                                 transparently.

•RDF is a Data Model             Focus on the data model


 •A very simple model!
•RDF has many (inconvenient) serializations
 •RDF-XML
 •N3
Just Enough RDF
                                 Don’t get caught up in the
                                 serial representation - any
                                 RDF library will take care
                                 of that for you
                                 transparently.

•RDF is a Data Model             Focus on the data model


 •A very simple model!
•RDF has many (inconvenient) serializations
 •RDF-XML
 •N3
 •Turtle
RDF Data Model

• Nodes (“Subjects”)
• connect via Links (“Predicates”)
• to Objects
 • either Nodes or Literals
RDF Data Model

• Nodes are referenced by URIs (http://foo/bar/)
• Links are referenced by URIs
• Literals are text strings, sometimes with a URI
  type and a language attached
• Literal types typically are XML Schema URIs
  (examples)
RDF Data Model

• RDF is typically expressed in statements or triples
• Triples are composed of a node, a link, and either
    another node or a literal
•   <http://www.w3.org/People/Berners-Lee/card#i>
    <http://www.w3.org/2000/01/rdf-schema#label>
    “Tim Berners-Lee”
RDF Graphs

• RDF triples are typically grouped into graphs
• Graph Query
 • Triple (s, p, o)
 • Graph query languages (RDQL, SPARQL)
Query Graph
from rdflib import *



fb = Namespace(quot;http://www.freebase.com/view/en/quot;)

graph = ConjunctiveGraph()



starredin = fb[quot;starred_inquot;]

graph.add((fb[quot;carrie_fisherquot;], starredin, fb[quot;star_warsquot;]))

graph.add((fb[quot;harrison_fordquot;], starredin, fb[quot;star_warsquot;]))

graph.add((fb[quot;harrison_fordquot;], starredin, fb[quot;blade_runnerquot;]))

graph.add((fb[quot;daryl_hannahquot;], starredin, fb[quot;blade_runnerquot;]))
Triple Query


for triple in graph.triples((None, starredin, fb[quot;star_warsquot;])): print triple



for subject in graph.subjects(predicate=starredin, object=fb[quot;star_warsquot;]): print subject
SPARQL Query
SELECT ?costar WHERE {
    fb:carrie_fisher fb:starred_in ?movie .
    ?actor fb:starred_in ?movie .
    ?actor fb:starred_in ?othermovie .
    ?costar fb:starred_in ?othermovie .
    FILTER (?othermovie != ?movie && ?actor != ?costar)
}
RDFLib SPARQL Query
print list(graph.query(

quot;quot;quot;SELECT ?costar WHERE {

  fb:carrie_fisher fb:starred_in ?movie .

  ?actor fb:starred_in ?movie .

  ?actor fb:starred_in ?othermovie .

  ?costar fb:starred_in ?othermovie .

  FILTER (?othermovie != ?movie && ?actor != ?costar)

} quot;quot;quot;,

initNs=dict(fb=Namespace(quot;http://www.freebase.com/view/en/quot;))))
μformats
    •Semantics embedded in display markup (XHTML)
    •Strong (predefined) semantics
     •Each μformat defines an “ontology”
<div class=quot;hreviewquot;>
<span><span class=quot;ratingquot;>5</span> out of 5 stars</span>
<h4 class=quot;summaryquot;>Crepes on Cole is awesome</h4>
<span class=quot;reviewer vcardquot;>Reviewer: <span class=quot;fnquot;>Tantek</span> -
<abbr class=quot;dtreviewedquot; title=quot;20050418T2300-0700quot;>April 18, 2005</abbr></span>
<div class=quot;description item vcardquot;><p>
 <span class=quot;fn orgquot;>Crepes on Cole</span> is one of the best little
 creperies in <span class=quot;adrquot;><span class=quot;localityquot;>San Francisco</span></span>.
 Excellent food and service. Plenty of tables in a variety of sizes
                                                                    WP identifies 22 distinct
 for parties large and small. </p></div>                            places called San Francisco in
                                                                    the world
<p>Visit date: <span>April 2005</span></p>
<p>Food eaten: <span>Florentine crepe</span></p>
</div>
RDFa
  •Yet another RDF serialization
  •Like μformats, embeddable in HTML
  •Like RDF high expressability + extensibility
  •Like any RDF serialization, you don’t want to
  create them by hand!
<p xmlns:dc=quot;http://purl.org/dc/elements/1.1/quot;
  about=quot;http://www.example.com/books/wikinomicsquot;>
 In his latest book
 <cite property=quot;dc:titlequot;>Wikinomics</cite>,
 <span property=quot;dc:authorquot;>Don Tapscott</span>
 explains deep changes in technology,
 demographics and business.
 The book is due to be published in
 <span property=quot;dc:datequot; content=quot;2006-10-01quot;>October 2006</span>.
</p>
What I mean by Ontology
What I mean by Ontology

Ontology:
What I mean by Ontology

Ontology:
An explicit specification of a conceptualization
What I mean by Ontology

Ontology:
An explicit specification of a conceptualization


Conceptualization:
What I mean by Ontology

Ontology:
An explicit specification of a conceptualization


Conceptualization:
Abstract, simplified view of the world that we
wish to represent for some purpose
What I mean by Ontology

Ontology:
An explicit specification of a conceptualization


Conceptualization:
Abstract, simplified view of the world that we
wish to represent for some purpose
Ontology
Ontology
IS NOT:
Ontology
            IS NOT:
•   Magic
Ontology
            IS NOT:
•   Magic
•   Universal
Ontology
            IS NOT:
•   Magic
•   Universal
•   Change the world
Ontology
            IS NOT:              IS:
•   Magic
•   Universal
•   Change the world
Ontology
            IS NOT:                     IS:
•   Magic                  •   An artifact
•   Universal
•   Change the world
Ontology
            IS NOT:                     IS:
•   Magic                  •   An artifact
•   Universal              •   An API
•   Change the world
Ontology
            IS NOT:                     IS:
•   Magic                  •   An artifact
•   Universal              •   An API
•   Change the world       •   A Social Contract
Movie Ontology
        name
           release_date
                imdb_rating
movie            rt_rating
Movie Ontology
        name
           release_date
                imdb_rating           name
movie             rt_rating
               actor
                              actor
Movie Ontology
        name
           release_date
                   imdb_rating             name
movie                rt_rating
                  actor                                name
                                 actor                    address
        showing

                                             theater
                                 showing
                   show


                                 time
Ontology Declaration
from rdflib import *


fbCommon = Namespace(quot;http://www.freebase.com/view/common/quot;)
oName = fbCommon[quot;object/namequot;]
oType = fbCommon[quot;object/typequot;]

fbPeople = Namespace(quot;http://www.freebase.com/view/people/quot;)
personType = fbPeople[quot;personquot;]
pPhoto = fbPeople[quot;person/photoquot;]

fbFilm = Namespace(quot;http://www.freebase.com/view/film/quot;)
filmType = fbFilm[quot;filmquot;]
fImdbId = fbFilm[quot;film/imdb_idquot;]
fImdbRating = fbFilm[quot;film/imdb_ratingquot;]
fRtRating = fbFilm[quot;film/rt_ratingquot;]
fActor = fbFilm[quot;film/actorquot;]

theaterType = fbFilm[quot;theaterquot;]
tAddress = fbFilm[quot;theater/addressquot;]
tShowing = fbFilm[quot;theater/showingquot;]

showingType = fbFilm[quot;showingquot;]
sTime = fbFilm[quot;showing/timequot;]

fbDining = Namespace(quot;http://www.freebase.com/view/dining/quot;)
restaurantType = fbDining[quot;restaurantquot;]
rAddress = fbFilm[quot;restaurant/addressquot;]
What is Freebase?

• Structured Database
 • Strong Collaboratively Edited Subjects
 • Strong Collaboratively Developed Semantics
 • Open API + Open Data
What’s in Freebase?
• Over 3.3 million subjects
 • ~750,000 people
 • ~450,000 locations
 • ~50,000 companies
 • ~40,000 movies
• Over 1000 types and 3000 properties
http://www.freebase.com/view/en/blade_runner
Creating Semantic Mashups  Bridging Web 2 0 And The Semantic Web Presentation 1
Freebase Data Model
Freebase Data Model
MQL

•JSON structure
•Schemas (ontologies) form
 object abstraction
•Query by example
  Fill in the parts you know
  Result fills in the rest
MQL

•JSON structure                Show me the IMDB links for films
                               by George Lucas:

•Schemas (ontologies) form     [{
 object abstraction               quot;namequot; : null,
                                  quot;imdb_idquot; : [ ],
•Query by example                 quot;initial_release_datequot;:null,
  Fill in the parts you know       quot;directed_byquot;:quot;George Lucasquot;,
                                  quot;typequot; : quot;/film/filmquot;
  Result fills in the rest       }]
MQL
                             performance
                                                                      [
                                                                          {
Carrie                                                      Star              quot;filmquot; : [
         film         actor                 film   starring
Fisher                                                      Wars                {
                                                                                  quot;filmquot; : {
                                                                                    quot;namequot; : null,
                          ter                                                       quot;starringquot; : [
                                                                                      {
                                   Carrie Fisherʼs Costars:
                        ac

                                                                                        quot;actorquot; : {
                       ar


                                                                                          quot;filmquot; : [
                      ch




                                                                                             {
                                                                                               quot;filmquot; : {

          Princess                 [{                                                            quot;namequot; : null,
                                                                                                 quot;starringquot; : [
            Leia
                                         quot;filmquot; : [{                                                {
                                                                                                     quot;actorquot; : {
                                                                                                       quot;namequot; : null
                                             quot;filmquot; : {                                               },
                                                                                                     quot;limitquot; : 2
                                               quot;namequot; : null,                                    ]
                                                                                                   }


                                               quot;starringquot; : [{                                 },
                                                                                               quot;limitquot; : 2

                                                  quot;actorquot; : null                          ],
                                                                                             }

                                                                                          quot;namequot; : null
                                                }]                                      },
                                                                                        quot;limitquot; : 2
                                             }                                      ]
                                                                                      }


                                           }],                                    },
                                                                                  quot;limitquot; : 2

                                         quot;idquot; : quot;/en/carrie_fisherquot;,           ],
                                                                                }

                                                                              quot;idquot; : quot;/en/carrie_fisherquot;,
                                         quot;typequot; : quot;/film/actorquot;                quot;typequot; : quot;/film/actorquot;
                                                                          }
                                    }]                                ]
A Semantic Architecture
Semantic Architecture
                  •A little knowledge...
                             ...goes a long way
                  •Leverage Silos of Content
                  •Effort ∝ semantic coverage
A Semantic Architecture
Semantic Architecture



                 Semantic Mapping Layer
A Semantic Architecture
Semantic Architecture


                 Semantic Mash-up Layer
                  Semantic Plugin Layer
Film Mashup
• Strong Identity through IMDB IDs
• Pulls data from:
 • IMDB (movie & actor data & rating)
 • Rotten Tomatoes (rating)
 • Freebase (pictures & restaurants)
 • Fandango (movie theaters)
Movie Ontology
        name
           release_date
                   imdb_rating             name
movie                rt_rating
                  actor                                name
                                 actor                    address
        showing

                                             theater
                                 showing
                   show


                                 time
MIT SIMILE




             http://www.cse.msu.edu/~dunham/exhibit/top100.html
MIT SIMILE




             http://www.cse.msu.edu/~dunham/exhibit/top100.html
MIT SIMILE




             http://www.cse.msu.edu/~dunham/exhibit/top100.html
MIT SIMILE




             http://www.cse.msu.edu/~dunham/exhibit/top100.html
MIT SIMILE




             http://www.cse.msu.edu/~dunham/exhibit/top100.html
Useful Places

•   Freebase/MQL:

    •   http://www.freebase.com/

•   Javascript RDF Library (used in Toby’s map demo)

    •   http://www.jibbering.com/rdf-parser/

•   LIBrdf (Python)

    •   http://rdflib.net/

•   MIT Semantic Visualization Widgets

    •   http://simile.mit.edu/
Useful Places

•   SPARQL:

    •   http://www.w3.org/TR/rdf-sparql-query/

•   Linked Open Data/Semantic Web Interest Group (SWIG)

    •   http://www.w3.org/2001/sw/interest/

    •   http://www.w3.org/DesignIssues/LinkedData.html

•   Tabulator (Linked Open Data Browser):

    •   http://www.w3.org/2005/ajar/tab

Mais conteúdo relacionado

Mais procurados

Spiffy Applications With JavaScript
Spiffy Applications With JavaScriptSpiffy Applications With JavaScript
Spiffy Applications With JavaScriptMark Casias
 
Introduction to Semantic Web for GIS Practitioners
Introduction to Semantic Web for GIS PractitionersIntroduction to Semantic Web for GIS Practitioners
Introduction to Semantic Web for GIS PractitionersEmanuele Della Valle
 
Hadoop online training
Hadoop online training Hadoop online training
Hadoop online training Keylabs
 
I have a NoSQL Toaster - ConnectJS - October 2016
I have a NoSQL Toaster - ConnectJS - October 2016I have a NoSQL Toaster - ConnectJS - October 2016
I have a NoSQL Toaster - ConnectJS - October 2016Matthew Groves
 
Web performance - Analysing Heart.co.uk
Web performance - Analysing Heart.co.ukWeb performance - Analysing Heart.co.uk
Web performance - Analysing Heart.co.ukgareth53
 
Snowcamp fastandbeautiful
Snowcamp fastandbeautifulSnowcamp fastandbeautiful
Snowcamp fastandbeautifulDoug Sillars
 
Advanced SEO for WordPress
Advanced SEO for WordPressAdvanced SEO for WordPress
Advanced SEO for WordPressJulie Kosbab
 
Analytics Web Day | Query your Data in S3 with SQL and optimize for Cost and ...
Analytics Web Day | Query your Data in S3 with SQL and optimize for Cost and ...Analytics Web Day | Query your Data in S3 with SQL and optimize for Cost and ...
Analytics Web Day | Query your Data in S3 with SQL and optimize for Cost and ...AWS Germany
 
Installing And Configuration for your Wordpress blog
Installing And Configuration for your Wordpress blogInstalling And Configuration for your Wordpress blog
Installing And Configuration for your Wordpress blogigorgentry
 

Mais procurados (10)

Intro to HTML 5 / CSS 3
Intro to HTML 5 / CSS 3Intro to HTML 5 / CSS 3
Intro to HTML 5 / CSS 3
 
Spiffy Applications With JavaScript
Spiffy Applications With JavaScriptSpiffy Applications With JavaScript
Spiffy Applications With JavaScript
 
Introduction to Semantic Web for GIS Practitioners
Introduction to Semantic Web for GIS PractitionersIntroduction to Semantic Web for GIS Practitioners
Introduction to Semantic Web for GIS Practitioners
 
Hadoop online training
Hadoop online training Hadoop online training
Hadoop online training
 
I have a NoSQL Toaster - ConnectJS - October 2016
I have a NoSQL Toaster - ConnectJS - October 2016I have a NoSQL Toaster - ConnectJS - October 2016
I have a NoSQL Toaster - ConnectJS - October 2016
 
Web performance - Analysing Heart.co.uk
Web performance - Analysing Heart.co.ukWeb performance - Analysing Heart.co.uk
Web performance - Analysing Heart.co.uk
 
Snowcamp fastandbeautiful
Snowcamp fastandbeautifulSnowcamp fastandbeautiful
Snowcamp fastandbeautiful
 
Advanced SEO for WordPress
Advanced SEO for WordPressAdvanced SEO for WordPress
Advanced SEO for WordPress
 
Analytics Web Day | Query your Data in S3 with SQL and optimize for Cost and ...
Analytics Web Day | Query your Data in S3 with SQL and optimize for Cost and ...Analytics Web Day | Query your Data in S3 with SQL and optimize for Cost and ...
Analytics Web Day | Query your Data in S3 with SQL and optimize for Cost and ...
 
Installing And Configuration for your Wordpress blog
Installing And Configuration for your Wordpress blogInstalling And Configuration for your Wordpress blog
Installing And Configuration for your Wordpress blog
 

Destaque

Destaque (7)

Estocolmo
EstocolmoEstocolmo
Estocolmo
 
Pres Set
Pres SetPres Set
Pres Set
 
La Edad De La Inocencia
La Edad De La InocenciaLa Edad De La Inocencia
La Edad De La Inocencia
 
El Alacr C!N
El Alacr C!NEl Alacr C!N
El Alacr C!N
 
Giethoorn Dorp Zonder Straten Ddr
Giethoorn Dorp Zonder Straten DdrGiethoorn Dorp Zonder Straten Ddr
Giethoorn Dorp Zonder Straten Ddr
 
Hazcomoelsol
HazcomoelsolHazcomoelsol
Hazcomoelsol
 
Noesperes
NoesperesNoesperes
Noesperes
 

Semelhante a Creating Semantic Mashups Bridging Web 2 0 And The Semantic Web Presentation 1

GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and ScaleGDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and ScalePatrick Chanezon
 
Applications of the REST Principle
Applications of the REST PrincipleApplications of the REST Principle
Applications of the REST Principleelliando dias
 
Sherlock Homepage - A detective story about running large web services - WebN...
Sherlock Homepage - A detective story about running large web services - WebN...Sherlock Homepage - A detective story about running large web services - WebN...
Sherlock Homepage - A detective story about running large web services - WebN...Maarten Balliauw
 
Semantic Web, an introduction for bioscientists
Semantic Web, an introduction for bioscientistsSemantic Web, an introduction for bioscientists
Semantic Web, an introduction for bioscientistsEmanuele Della Valle
 
"Progressive Web Apps" by Riza Fahmi (Hacktiv8)
"Progressive Web Apps" by Riza Fahmi	(Hacktiv8)"Progressive Web Apps" by Riza Fahmi	(Hacktiv8)
"Progressive Web Apps" by Riza Fahmi (Hacktiv8)Tech in Asia ID
 
Progressive Web Apps. What, why and how
Progressive Web Apps. What, why and howProgressive Web Apps. What, why and how
Progressive Web Apps. What, why and howRiza Fahmi
 
The Next Five Years of Rails
The Next Five Years of RailsThe Next Five Years of Rails
The Next Five Years of RailsAlex Mercer
 
Writing Usable REST APIs. Javier Ramirez
Writing Usable REST APIs. Javier RamirezWriting Usable REST APIs. Javier Ramirez
Writing Usable REST APIs. Javier RamirezFuture Insights
 
Building Usable REST APIs. By Javier Ramirez, teowaki. FOWA London
Building Usable REST APIs. By Javier Ramirez, teowaki. FOWA LondonBuilding Usable REST APIs. By Javier Ramirez, teowaki. FOWA London
Building Usable REST APIs. By Javier Ramirez, teowaki. FOWA Londonjavier ramirez
 
Atmosphere Conference 2015: The 10 Myths of DevOps
Atmosphere Conference 2015: The 10 Myths of DevOpsAtmosphere Conference 2015: The 10 Myths of DevOps
Atmosphere Conference 2015: The 10 Myths of DevOpsPROIDEA
 
Offline of web applications
Offline of web applicationsOffline of web applications
Offline of web applicationsFDConf
 
Offline for web - Frontend Dev Conf Minsk 2014
Offline for web - Frontend Dev Conf Minsk 2014Offline for web - Frontend Dev Conf Minsk 2014
Offline for web - Frontend Dev Conf Minsk 2014Jan Jongboom
 
Essay NT2670 Lab2
Essay NT2670 Lab2Essay NT2670 Lab2
Essay NT2670 Lab2Sara Rouse
 
Confluence State Of The Union 2009
Confluence State Of The Union 2009Confluence State Of The Union 2009
Confluence State Of The Union 2009Atlassian
 
Streaming map reduce
Streaming map reduceStreaming map reduce
Streaming map reducedanirayan
 
Advanced Web Development
Advanced Web DevelopmentAdvanced Web Development
Advanced Web DevelopmentRobert J. Stein
 
Real World Azure - Dev
Real World Azure - DevReal World Azure - Dev
Real World Azure - DevClint Edmonson
 

Semelhante a Creating Semantic Mashups Bridging Web 2 0 And The Semantic Web Presentation 1 (20)

GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and ScaleGDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
 
Applications of the REST Principle
Applications of the REST PrincipleApplications of the REST Principle
Applications of the REST Principle
 
Sherlock Homepage - A detective story about running large web services - WebN...
Sherlock Homepage - A detective story about running large web services - WebN...Sherlock Homepage - A detective story about running large web services - WebN...
Sherlock Homepage - A detective story about running large web services - WebN...
 
Semantic Web, an introduction for bioscientists
Semantic Web, an introduction for bioscientistsSemantic Web, an introduction for bioscientists
Semantic Web, an introduction for bioscientists
 
"Progressive Web Apps" by Riza Fahmi (Hacktiv8)
"Progressive Web Apps" by Riza Fahmi	(Hacktiv8)"Progressive Web Apps" by Riza Fahmi	(Hacktiv8)
"Progressive Web Apps" by Riza Fahmi (Hacktiv8)
 
Progressive Web Apps. What, why and how
Progressive Web Apps. What, why and howProgressive Web Apps. What, why and how
Progressive Web Apps. What, why and how
 
The Next Five Years of Rails
The Next Five Years of RailsThe Next Five Years of Rails
The Next Five Years of Rails
 
Wordpress development 101
Wordpress development 101Wordpress development 101
Wordpress development 101
 
Writing Usable REST APIs. Javier Ramirez
Writing Usable REST APIs. Javier RamirezWriting Usable REST APIs. Javier Ramirez
Writing Usable REST APIs. Javier Ramirez
 
Building Usable REST APIs. By Javier Ramirez, teowaki. FOWA London
Building Usable REST APIs. By Javier Ramirez, teowaki. FOWA LondonBuilding Usable REST APIs. By Javier Ramirez, teowaki. FOWA London
Building Usable REST APIs. By Javier Ramirez, teowaki. FOWA London
 
Atmosphere Conference 2015: The 10 Myths of DevOps
Atmosphere Conference 2015: The 10 Myths of DevOpsAtmosphere Conference 2015: The 10 Myths of DevOps
Atmosphere Conference 2015: The 10 Myths of DevOps
 
Back-End Code Essay
Back-End Code EssayBack-End Code Essay
Back-End Code Essay
 
Offline of web applications
Offline of web applicationsOffline of web applications
Offline of web applications
 
Offline for web - Frontend Dev Conf Minsk 2014
Offline for web - Frontend Dev Conf Minsk 2014Offline for web - Frontend Dev Conf Minsk 2014
Offline for web - Frontend Dev Conf Minsk 2014
 
Essay NT2670 Lab2
Essay NT2670 Lab2Essay NT2670 Lab2
Essay NT2670 Lab2
 
Confluence State Of The Union 2009
Confluence State Of The Union 2009Confluence State Of The Union 2009
Confluence State Of The Union 2009
 
Streaming map reduce
Streaming map reduceStreaming map reduce
Streaming map reduce
 
Advanced Web Development
Advanced Web DevelopmentAdvanced Web Development
Advanced Web Development
 
Boost and SEO
Boost and SEOBoost and SEO
Boost and SEO
 
Real World Azure - Dev
Real World Azure - DevReal World Azure - Dev
Real World Azure - Dev
 

Mais de jward5519

Google App Engine Making It Easier For Developers To Build And Scale Apps P...
Google App Engine  Making It Easier For Developers To Build And Scale Apps  P...Google App Engine  Making It Easier For Developers To Build And Scale Apps  P...
Google App Engine Making It Easier For Developers To Build And Scale Apps P...jward5519
 
Mashing Up Taking Enterprise Mashups To The Next Level Presentation
Mashing Up  Taking Enterprise Mashups To The Next Level  PresentationMashing Up  Taking Enterprise Mashups To The Next Level  Presentation
Mashing Up Taking Enterprise Mashups To The Next Level Presentationjward5519
 
Ibm Web 2 0 Goes To Work Presentation
Ibm  Web 2 0 Goes To Work PresentationIbm  Web 2 0 Goes To Work Presentation
Ibm Web 2 0 Goes To Work Presentationjward5519
 
Global Design Trends Presentation
Global Design Trends PresentationGlobal Design Trends Presentation
Global Design Trends Presentationjward5519
 
Maximizing Conversions And Overall Campaign Roi Presentation
Maximizing Conversions And Overall Campaign Roi PresentationMaximizing Conversions And Overall Campaign Roi Presentation
Maximizing Conversions And Overall Campaign Roi Presentationjward5519
 
Maximizing Ad Revenue Through Format Optimization Presentation
Maximizing Ad Revenue Through Format Optimization PresentationMaximizing Ad Revenue Through Format Optimization Presentation
Maximizing Ad Revenue Through Format Optimization Presentationjward5519
 
Free Traffic Seo Smo 101 (Search Engine Social Media Optimization) Present...
Free Traffic  Seo Smo 101 (Search Engine   Social Media Optimization) Present...Free Traffic  Seo Smo 101 (Search Engine   Social Media Optimization) Present...
Free Traffic Seo Smo 101 (Search Engine Social Media Optimization) Present...jward5519
 
Free Traffic Seo Smo 101 (Search Engine Social Media Optimization) Present...
Free Traffic  Seo Smo 101 (Search Engine   Social Media Optimization) Present...Free Traffic  Seo Smo 101 (Search Engine   Social Media Optimization) Present...
Free Traffic Seo Smo 101 (Search Engine Social Media Optimization) Present...jward5519
 
Do Try This At Home Ajax Bookmarking, Cross Site Scripting, And Other Web 2 ...
Do Try This At Home  Ajax Bookmarking, Cross Site Scripting, And Other Web 2 ...Do Try This At Home  Ajax Bookmarking, Cross Site Scripting, And Other Web 2 ...
Do Try This At Home Ajax Bookmarking, Cross Site Scripting, And Other Web 2 ...jward5519
 
Data Portability, Privacy, And The Emergence Of The Social Web Presentation
Data Portability, Privacy, And The Emergence Of The Social Web PresentationData Portability, Privacy, And The Emergence Of The Social Web Presentation
Data Portability, Privacy, And The Emergence Of The Social Web Presentationjward5519
 
Design Learnings From Viral Applications Presentation
Design Learnings From Viral Applications PresentationDesign Learnings From Viral Applications Presentation
Design Learnings From Viral Applications Presentationjward5519
 
Developing, Distributing, And Monetizing Web Applications With Web Ex Connect...
Developing, Distributing, And Monetizing Web Applications With Web Ex Connect...Developing, Distributing, And Monetizing Web Applications With Web Ex Connect...
Developing, Distributing, And Monetizing Web Applications With Web Ex Connect...jward5519
 
Design Learnings From Viral Applications Presentation
Design Learnings From Viral Applications PresentationDesign Learnings From Viral Applications Presentation
Design Learnings From Viral Applications Presentationjward5519
 
Capacity Planning For Web Operations Presentation
Capacity Planning For Web Operations PresentationCapacity Planning For Web Operations Presentation
Capacity Planning For Web Operations Presentationjward5519
 
Creating Semantic Mashups Bridging Web 2 0 And The Semantic Web Presentation 1
Creating Semantic Mashups  Bridging Web 2 0 And The Semantic Web Presentation 1Creating Semantic Mashups  Bridging Web 2 0 And The Semantic Web Presentation 1
Creating Semantic Mashups Bridging Web 2 0 And The Semantic Web Presentation 1jward5519
 
Data Portability, Privacy, And The Emergence Of The Social Web Presentation
Data Portability, Privacy, And The Emergence Of The Social Web PresentationData Portability, Privacy, And The Emergence Of The Social Web Presentation
Data Portability, Privacy, And The Emergence Of The Social Web Presentationjward5519
 
Capacity Planning For Web Operations Presentation
Capacity Planning For Web Operations PresentationCapacity Planning For Web Operations Presentation
Capacity Planning For Web Operations Presentationjward5519
 
Building An App For Social Platforms Presentation
Building An App For Social Platforms PresentationBuilding An App For Social Platforms Presentation
Building An App For Social Platforms Presentationjward5519
 
A Symfony Answer Presentation
A Symfony Answer PresentationA Symfony Answer Presentation
A Symfony Answer Presentationjward5519
 
Tools For Managing Creative Environment Presentation
Tools For Managing Creative Environment PresentationTools For Managing Creative Environment Presentation
Tools For Managing Creative Environment Presentationjward5519
 

Mais de jward5519 (20)

Google App Engine Making It Easier For Developers To Build And Scale Apps P...
Google App Engine  Making It Easier For Developers To Build And Scale Apps  P...Google App Engine  Making It Easier For Developers To Build And Scale Apps  P...
Google App Engine Making It Easier For Developers To Build And Scale Apps P...
 
Mashing Up Taking Enterprise Mashups To The Next Level Presentation
Mashing Up  Taking Enterprise Mashups To The Next Level  PresentationMashing Up  Taking Enterprise Mashups To The Next Level  Presentation
Mashing Up Taking Enterprise Mashups To The Next Level Presentation
 
Ibm Web 2 0 Goes To Work Presentation
Ibm  Web 2 0 Goes To Work PresentationIbm  Web 2 0 Goes To Work Presentation
Ibm Web 2 0 Goes To Work Presentation
 
Global Design Trends Presentation
Global Design Trends PresentationGlobal Design Trends Presentation
Global Design Trends Presentation
 
Maximizing Conversions And Overall Campaign Roi Presentation
Maximizing Conversions And Overall Campaign Roi PresentationMaximizing Conversions And Overall Campaign Roi Presentation
Maximizing Conversions And Overall Campaign Roi Presentation
 
Maximizing Ad Revenue Through Format Optimization Presentation
Maximizing Ad Revenue Through Format Optimization PresentationMaximizing Ad Revenue Through Format Optimization Presentation
Maximizing Ad Revenue Through Format Optimization Presentation
 
Free Traffic Seo Smo 101 (Search Engine Social Media Optimization) Present...
Free Traffic  Seo Smo 101 (Search Engine   Social Media Optimization) Present...Free Traffic  Seo Smo 101 (Search Engine   Social Media Optimization) Present...
Free Traffic Seo Smo 101 (Search Engine Social Media Optimization) Present...
 
Free Traffic Seo Smo 101 (Search Engine Social Media Optimization) Present...
Free Traffic  Seo Smo 101 (Search Engine   Social Media Optimization) Present...Free Traffic  Seo Smo 101 (Search Engine   Social Media Optimization) Present...
Free Traffic Seo Smo 101 (Search Engine Social Media Optimization) Present...
 
Do Try This At Home Ajax Bookmarking, Cross Site Scripting, And Other Web 2 ...
Do Try This At Home  Ajax Bookmarking, Cross Site Scripting, And Other Web 2 ...Do Try This At Home  Ajax Bookmarking, Cross Site Scripting, And Other Web 2 ...
Do Try This At Home Ajax Bookmarking, Cross Site Scripting, And Other Web 2 ...
 
Data Portability, Privacy, And The Emergence Of The Social Web Presentation
Data Portability, Privacy, And The Emergence Of The Social Web PresentationData Portability, Privacy, And The Emergence Of The Social Web Presentation
Data Portability, Privacy, And The Emergence Of The Social Web Presentation
 
Design Learnings From Viral Applications Presentation
Design Learnings From Viral Applications PresentationDesign Learnings From Viral Applications Presentation
Design Learnings From Viral Applications Presentation
 
Developing, Distributing, And Monetizing Web Applications With Web Ex Connect...
Developing, Distributing, And Monetizing Web Applications With Web Ex Connect...Developing, Distributing, And Monetizing Web Applications With Web Ex Connect...
Developing, Distributing, And Monetizing Web Applications With Web Ex Connect...
 
Design Learnings From Viral Applications Presentation
Design Learnings From Viral Applications PresentationDesign Learnings From Viral Applications Presentation
Design Learnings From Viral Applications Presentation
 
Capacity Planning For Web Operations Presentation
Capacity Planning For Web Operations PresentationCapacity Planning For Web Operations Presentation
Capacity Planning For Web Operations Presentation
 
Creating Semantic Mashups Bridging Web 2 0 And The Semantic Web Presentation 1
Creating Semantic Mashups  Bridging Web 2 0 And The Semantic Web Presentation 1Creating Semantic Mashups  Bridging Web 2 0 And The Semantic Web Presentation 1
Creating Semantic Mashups Bridging Web 2 0 And The Semantic Web Presentation 1
 
Data Portability, Privacy, And The Emergence Of The Social Web Presentation
Data Portability, Privacy, And The Emergence Of The Social Web PresentationData Portability, Privacy, And The Emergence Of The Social Web Presentation
Data Portability, Privacy, And The Emergence Of The Social Web Presentation
 
Capacity Planning For Web Operations Presentation
Capacity Planning For Web Operations PresentationCapacity Planning For Web Operations Presentation
Capacity Planning For Web Operations Presentation
 
Building An App For Social Platforms Presentation
Building An App For Social Platforms PresentationBuilding An App For Social Platforms Presentation
Building An App For Social Platforms Presentation
 
A Symfony Answer Presentation
A Symfony Answer PresentationA Symfony Answer Presentation
A Symfony Answer Presentation
 
Tools For Managing Creative Environment Presentation
Tools For Managing Creative Environment PresentationTools For Managing Creative Environment Presentation
Tools For Managing Creative Environment Presentation
 

Último

COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Websitedgelyza
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPathCommunity
 
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...DianaGray10
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesMd Hossain Ali
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsSeth Reyes
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioChristian Posta
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024D Cloud Solutions
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1DianaGray10
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaborationbruanjhuli
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfJamie (Taka) Wang
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...Aggregage
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintMahmoud Rabie
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDELiveplex
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsSafe Software
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxGDSC PJATK
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Brian Pichman
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureEric D. Schabell
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding TeamAdam Moalla
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfDaniel Santiago Silva Capera
 
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UbiTrack UK
 

Último (20)

COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Website
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation Developers
 
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and Hazards
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership Blueprint
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptx
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability Adventure
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
 
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
 

Creating Semantic Mashups Bridging Web 2 0 And The Semantic Web Presentation 1

  • 1. Creating Semantic Mashups: Bridging Web 2.0 and the Semantic Web Jamie Taylor, Colin Evans, Toby Segaran
  • 2. Why is Semantic Data Interesting?
  • 3. Why is Semantic Data Interesting? •Walmart demo
  • 4. Why is Semantic Data Interesting? •Walmart demo • http://blog.kiwitobes.com/?p=51
  • 5. Why is Semantic Data Interesting? •Walmart demo • http://blog.kiwitobes.com/?p=51 •Political Query
  • 6. Why is Semantic Data Interesting? •Walmart demo • http://blog.kiwitobes.com/?p=51 •Political Query • http://www.freebase.com/view/guid/9202a8c04000641f8000000008053940
  • 7. Why is Semantic Data Interesting? •Walmart demo • http://blog.kiwitobes.com/?p=51 •Political Query • http://www.freebase.com/view/guid/9202a8c04000641f8000000008053940 •Venture Spin
  • 8. Why is Semantic Data Interesting? •Walmart demo • http://blog.kiwitobes.com/?p=51 •Political Query • http://www.freebase.com/view/guid/9202a8c04000641f8000000008053940 •Venture Spin • http://www.perlgoddess.com/FreeSpin/FreeSpin.swf
  • 9. Semantic Data is Flexible Data • The data for these demos all used structured semantics • The data was not specifically designed for the demo • The demos can utilize any data set with shared semantics (e.g., Venture Spin)
  • 12. Overview •Introduction to semantic ideas •Technologies and Architectural techniques
  • 13. Overview •Introduction to semantic ideas •Technologies and Architectural techniques •Build something now looking to the Future
  • 14. Goals
  • 15. Goals •Enough to get you started with semantic technologies
  • 16. Goals •Enough to get you started with semantic technologies •Understand advantages and issues with semantic architectures
  • 17. Goals •Enough to get you started with semantic technologies •Understand advantages and issues with semantic architectures •Basic understanding of semantic representation
  • 18. Goals •Enough to get you started with semantic technologies •Understand advantages and issues with semantic architectures •Basic understanding of semantic representation •Ability to use basic semantic repository
  • 19. Goals •Enough to get you started with semantic technologies •Understand advantages and issues with semantic architectures •Basic understanding of semantic representation •Ability to use basic semantic repository •Working overview of a semantic system
  • 20. Semantics: Why do we care? As web developers we want to: • Increase the utility of our applications e.g., help users get stuff done • Build applications with greater efficiency
  • 21. Web 1.0 Web 1.0 •Single function applications •Publishing large private databases
  • 22. Web 1.0: Stovepipes Diner and a Movie
  • 23. Web 1.0: Stovepipes • Data is in silos • No information sharing except in the user’s head • The end user drives system and data integration ...usually through “copy & paste”
  • 24. Web 2.0 Web 2.0 •Leverage silos of content •User-generated content •Open APIs facilitate mash-ups •The “Social Web”
  • 25. Web 2.0: UI Mashups
  • 26. Web 2.0: UI Mashups • Mash-ups only allow shallow integration at the UI • Data is still in silos • User-generated content is also in silos Data doesn’t stray far from its point of creation
  • 27. Today • Even with open APIs and mash-ups, users still do most of the system integration • With the proliferation of user-generated content, system integration is more important than ever! • Data, whether user-generated, or proprietary, is not easily accessible or transferable • We’re still fighting with stovepipe systems
  • 28. History of Web Integration Users’ Brain Web 1.0 Point of Integration
  • 29. History of Web Integration Users’ Brain UI (Mash-up) Web 1.0 Web 2.0 Point of Integration
  • 30. History of Web Integration Users’ Brain UI (Mash-up) Semantic Web 1.0 Web 2.0 Mash-ups Point of Integration
  • 31. Integration Scaling Users benefit as more data is made available Web 2.0 Mashup in application Utility increase as number of sources increases
  • 32. Integration Scaling Easy to integrate first few sources, but complexity increases as Web 2.0 Mashup number of sources increases Integration effort grows with number of sources
  • 33. Integration Scaling Pay a slightly higher start-up cost, but Semantic Mashup quickly benefit. Note: red line is should somewhat sloping up :-) Treat sources uniformly
  • 36. Why Semantics •Developing Content is expensive •Developing Web applications is expensive
  • 37. Why Semantics •Developing Content is expensive •Developing Web applications is expensive •Use existing systems/sources where possible
  • 38. Cracking the Stovepipe • Semantics facilitate shared meaning through • Subject Identity • Strong Semantics • Open APIS + Open Data • These principles make it much easier to combine stovepipe systems and integrate data
  • 39. Creating Meaning Ridley Scott directed Blade Runner
  • 40. Creating Meaning Ridley Scott directed Blade Runner subject
  • 41. Creating Meaning Ridley Scott directed Blade Runner subject predicate
  • 42. Creating Meaning Ridley Scott directed Blade Runner subject predicate object
  • 45. Creating Meaning Ridley directed Scott
  • 46. Creating Meaning Ridley Blade directed Scott Runner
  • 47. Creating Meaning Ridley Blade directed Scott Runner subject predicate object
  • 48. Using Shared Meaning Creating Triples in Javascript: myRDF = new RDF() t1 = new Triple('A', 'geo', '37.44, -122.14') t2 = new Triple('B', 'company', 'Wal-mart') myRDF.addTriples([t1, t2]) http://rdflib.net/
  • 49. Using Shared Meaning http://kiwitobes.com/maptest/ http://rdflib.net/
  • 50. Using Shared Meaning Example of a service (Freebase): function businessindustry(store) {    at=store.Match(null,null,'industry',null)    for (i=0;i<at.length;i++) {       subject=at[i].subject       industry=at[i].object       query=[{'type':'/business/company',               'name':null,               'industry':industry}]              Metaweb.read(query,                    function(r) {                       t=[]                       for (i=0;i<r.length;i++) {                          t.push(new Triple(subject, 'company',r[i].name,'','','en'))                       }                       store.addTriples(t)                    })      } }
  • 51. Using Shared Meaning Example of a service (Upcoming): function eventsearch(store) { at=store.Match(null,null,'event',null)     for (i=0;i<at.length;i++) {        subject=at[i].subject        event=at[i].object                var request = new XMLHttpRequest();         request.open(quot;GETquot;, 'upcomingread.php?query='+event, true);        request.onreadystatechange = function()        {            if (request.readyState == 4) {               var items = request.responseXML.getElementsByTagName(quot;eventquot;);               t=[]               for (j=0;j<items.length;j++) {                address=items[j].getAttribute('venue_address')+', '+                items[j].getAttribute('venue_city')+', '+                items[j].getAttribute('venue_state_code')+' '+ items[j].getAttribute('venue_zip')                               t.push(new Triple(subject,'address',address))               }               store.addTriples(t)            }        };        request.send(null);     } }
  • 53. The Meaning of “is” is http://dbpedia.org/resource/IS
  • 54. The Meaning of “is” is http://dbpedia.org/resource/IS •URI’s provide strong references
  • 55. The Meaning of “is” is http://dbpedia.org/resource/IS •URI’s provide strong references •Much like pointing in the physical world
  • 56. The Meaning of “is” is http://dbpedia.org/resource/IS •URI’s provide strong references •Much like pointing in the physical world “this is red”
  • 57. The Meaning of “is” is http://dbpedia.org/resource/IS •URI’s provide strong references •Much like pointing in the physical world “this is red” “this is a pen”
  • 58. The Meaning of “is” is http://dbpedia.org/resource/IS •URI’s provide strong references •Much like pointing in the physical world “this is red” “this is a pen” •a URIref is an unambiguous pointer to something of meaning
  • 59. Creating Meaning http://... http://... ridley_scott blade_runner
  • 60. Creating Meaning http://... http://... ridley_scott blade_runner
  • 61. Creating Meaning http://... http://... ridley_scott http://...directed blade_runner
  • 62. Creating Meaning http://... http://... ridley_scott http://...directed blade_runner
  • 63. Creating Meaning http://... http://... ridley_scott http://...directed blade_runner subject predicate object
  • 64. Creating Meaning fb = Namespace(quot;http://www.freebase.com/view/en/quot;) graph.add( ( fb(quot;blade_runnerquot;), fb(quot;directed_byquot;), fb(quot;ridley_scottquot;) )
  • 65. Two Types of URIrefs
  • 66. Two Types of URIrefs •Things/states (subjects, objects)
  • 67. Two Types of URIrefs •Things/states (subjects, objects) •Blade Runner
  • 68. Two Types of URIrefs •Things/states (subjects, objects) •Blade Runner •Ridley Scott
  • 69. Two Types of URIrefs •Things/states (subjects, objects) •Blade Runner •Ridley Scott •Movies
  • 70. Two Types of URIrefs •Things/states (subjects, objects) •Blade Runner •Ridley Scott •Movies •Relations (predicates)
  • 71. Two Types of URIrefs •Things/states (subjects, objects) •Blade Runner •Ridley Scott •Movies •Relations (predicates) •directed by
  • 72. Two Types of URIrefs •Things/states (subjects, objects) •Blade Runner •Ridley Scott •Movies •Relations (predicates) •directed by •acted in
  • 74. Graph Data Models quot;Blade Runnerquot; name
  • 75. Graph Data Models quot;Blade Runnerquot; name Jun 25, 1982 release date
  • 76. Graph Data Models quot;Blade Runnerquot; name 1981 release date actor quot;Harrison Fordquot;
  • 77. Graph Data Models quot;Blade Runnerquot; name Jun 25, 1982 release date quot;Harrison Fordquot; actor name
  • 78. Graph Data Models quot;Blade Runnerquot; name Jun 25, 1982 release date quot;Harrison Fordquot; actor name birth date Jul 13, 1942
  • 79. Graph Data Models from rdflib import * fb = Namespace(quot;http://www.freebase.com/view/en/quot;) graph = ConjunctiveGraph() br = fb(quot;blade_runnerquot;) graph.add((br, fb(quot;namequot;), Literal(“Blade Runner”)) graph.add((br, fb(quot;release_datequot;), Literal(“Jun 25, 1982”)) hf = fb(“harrison_ford”) graph.add((hf, fb(quot;namequot;), Literal(“Harrison Ford”)) graph.add((hf, fb(quot;birth_datequot;), Literal(“Jul 13, 1942”)) graph.add((br, fb(quot;actorquot;), hf))
  • 81. Graph Integration B A C D E
  • 82. Graph Integration B B A A C C D E E F
  • 83. Graph Integration B B A A C C D E E F
  • 84. Graph Integration B A C D E F
  • 85. W3C Vision Tim Berners-Lee’s Giant Global Graph
  • 86. Stack Attack: Semantic Web taken from http://www.w3.org/2007/Talks/0130-sb-W3CTechSemWeb/layerCake-4.png
  • 88. Take What You Need taken from http://www.w3.org/2007/Talks/0130-sb-W3CTechSemWeb/layerCake-4.png
  • 89. Take What You Need taken from http://www.w3.org/2007/Talks/0130-sb-W3CTechSemWeb/layerCake-4.png
  • 90. Linked Open Data •Web of Open Data (“global graph”) •Expressed in RDF •Lack of ontological agreement •how many ways are there to express lat/lon?! •Canonical references are problematic •Closest thing we have to the Semantic Web ...more like a test bed
  • 91. Tabulator Browsing the Global Graph http://dig.csail.mit.edu/2005/ajar/ajaw/data#Tabulator
  • 92. Open Data http://demo.openlibrary.org/dev/docs/data R Data http://theinfo.org/ http://theinfo.org/get/data
  • 93. Just Enough RDF Don’t get caught up in the serial representation - any RDF library will take care of that for you transparently. Focus on the data model
  • 94. Just Enough RDF Don’t get caught up in the serial representation - any RDF library will take care of that for you transparently. •RDF is a Data Model Focus on the data model
  • 95. Just Enough RDF Don’t get caught up in the serial representation - any RDF library will take care of that for you transparently. •RDF is a Data Model Focus on the data model •A very simple model!
  • 96. Just Enough RDF Don’t get caught up in the serial representation - any RDF library will take care of that for you transparently. •RDF is a Data Model Focus on the data model •A very simple model! •RDF has many (inconvenient) serializations
  • 97. Just Enough RDF Don’t get caught up in the serial representation - any RDF library will take care of that for you transparently. •RDF is a Data Model Focus on the data model •A very simple model! •RDF has many (inconvenient) serializations •RDF-XML
  • 98. Just Enough RDF Don’t get caught up in the serial representation - any RDF library will take care of that for you transparently. •RDF is a Data Model Focus on the data model •A very simple model! •RDF has many (inconvenient) serializations •RDF-XML •N3
  • 99. Just Enough RDF Don’t get caught up in the serial representation - any RDF library will take care of that for you transparently. •RDF is a Data Model Focus on the data model •A very simple model! •RDF has many (inconvenient) serializations •RDF-XML •N3 •Turtle
  • 100. RDF Data Model • Nodes (“Subjects”) • connect via Links (“Predicates”) • to Objects • either Nodes or Literals
  • 101. RDF Data Model • Nodes are referenced by URIs (http://foo/bar/) • Links are referenced by URIs • Literals are text strings, sometimes with a URI type and a language attached • Literal types typically are XML Schema URIs (examples)
  • 102. RDF Data Model • RDF is typically expressed in statements or triples • Triples are composed of a node, a link, and either another node or a literal • <http://www.w3.org/People/Berners-Lee/card#i> <http://www.w3.org/2000/01/rdf-schema#label> “Tim Berners-Lee”
  • 103. RDF Graphs • RDF triples are typically grouped into graphs • Graph Query • Triple (s, p, o) • Graph query languages (RDQL, SPARQL)
  • 104. Query Graph from rdflib import * fb = Namespace(quot;http://www.freebase.com/view/en/quot;) graph = ConjunctiveGraph() starredin = fb[quot;starred_inquot;] graph.add((fb[quot;carrie_fisherquot;], starredin, fb[quot;star_warsquot;])) graph.add((fb[quot;harrison_fordquot;], starredin, fb[quot;star_warsquot;])) graph.add((fb[quot;harrison_fordquot;], starredin, fb[quot;blade_runnerquot;])) graph.add((fb[quot;daryl_hannahquot;], starredin, fb[quot;blade_runnerquot;]))
  • 105. Triple Query for triple in graph.triples((None, starredin, fb[quot;star_warsquot;])): print triple for subject in graph.subjects(predicate=starredin, object=fb[quot;star_warsquot;]): print subject
  • 106. SPARQL Query SELECT ?costar WHERE { fb:carrie_fisher fb:starred_in ?movie . ?actor fb:starred_in ?movie . ?actor fb:starred_in ?othermovie . ?costar fb:starred_in ?othermovie . FILTER (?othermovie != ?movie && ?actor != ?costar) }
  • 107. RDFLib SPARQL Query print list(graph.query( quot;quot;quot;SELECT ?costar WHERE { fb:carrie_fisher fb:starred_in ?movie . ?actor fb:starred_in ?movie . ?actor fb:starred_in ?othermovie . ?costar fb:starred_in ?othermovie . FILTER (?othermovie != ?movie && ?actor != ?costar) } quot;quot;quot;, initNs=dict(fb=Namespace(quot;http://www.freebase.com/view/en/quot;))))
  • 108. μformats •Semantics embedded in display markup (XHTML) •Strong (predefined) semantics •Each μformat defines an “ontology” <div class=quot;hreviewquot;> <span><span class=quot;ratingquot;>5</span> out of 5 stars</span> <h4 class=quot;summaryquot;>Crepes on Cole is awesome</h4> <span class=quot;reviewer vcardquot;>Reviewer: <span class=quot;fnquot;>Tantek</span> - <abbr class=quot;dtreviewedquot; title=quot;20050418T2300-0700quot;>April 18, 2005</abbr></span> <div class=quot;description item vcardquot;><p> <span class=quot;fn orgquot;>Crepes on Cole</span> is one of the best little creperies in <span class=quot;adrquot;><span class=quot;localityquot;>San Francisco</span></span>. Excellent food and service. Plenty of tables in a variety of sizes WP identifies 22 distinct for parties large and small. </p></div> places called San Francisco in the world <p>Visit date: <span>April 2005</span></p> <p>Food eaten: <span>Florentine crepe</span></p> </div>
  • 109. RDFa •Yet another RDF serialization •Like μformats, embeddable in HTML •Like RDF high expressability + extensibility •Like any RDF serialization, you don’t want to create them by hand! <p xmlns:dc=quot;http://purl.org/dc/elements/1.1/quot; about=quot;http://www.example.com/books/wikinomicsquot;> In his latest book <cite property=quot;dc:titlequot;>Wikinomics</cite>, <span property=quot;dc:authorquot;>Don Tapscott</span> explains deep changes in technology, demographics and business. The book is due to be published in <span property=quot;dc:datequot; content=quot;2006-10-01quot;>October 2006</span>. </p>
  • 110. What I mean by Ontology
  • 111. What I mean by Ontology Ontology:
  • 112. What I mean by Ontology Ontology: An explicit specification of a conceptualization
  • 113. What I mean by Ontology Ontology: An explicit specification of a conceptualization Conceptualization:
  • 114. What I mean by Ontology Ontology: An explicit specification of a conceptualization Conceptualization: Abstract, simplified view of the world that we wish to represent for some purpose
  • 115. What I mean by Ontology Ontology: An explicit specification of a conceptualization Conceptualization: Abstract, simplified view of the world that we wish to represent for some purpose
  • 118. Ontology IS NOT: • Magic
  • 119. Ontology IS NOT: • Magic • Universal
  • 120. Ontology IS NOT: • Magic • Universal • Change the world
  • 121. Ontology IS NOT: IS: • Magic • Universal • Change the world
  • 122. Ontology IS NOT: IS: • Magic • An artifact • Universal • Change the world
  • 123. Ontology IS NOT: IS: • Magic • An artifact • Universal • An API • Change the world
  • 124. Ontology IS NOT: IS: • Magic • An artifact • Universal • An API • Change the world • A Social Contract
  • 125. Movie Ontology name release_date imdb_rating movie rt_rating
  • 126. Movie Ontology name release_date imdb_rating name movie rt_rating actor actor
  • 127. Movie Ontology name release_date imdb_rating name movie rt_rating actor name actor address showing theater showing show time
  • 128. Ontology Declaration from rdflib import * fbCommon = Namespace(quot;http://www.freebase.com/view/common/quot;) oName = fbCommon[quot;object/namequot;] oType = fbCommon[quot;object/typequot;] fbPeople = Namespace(quot;http://www.freebase.com/view/people/quot;) personType = fbPeople[quot;personquot;] pPhoto = fbPeople[quot;person/photoquot;] fbFilm = Namespace(quot;http://www.freebase.com/view/film/quot;) filmType = fbFilm[quot;filmquot;] fImdbId = fbFilm[quot;film/imdb_idquot;] fImdbRating = fbFilm[quot;film/imdb_ratingquot;] fRtRating = fbFilm[quot;film/rt_ratingquot;] fActor = fbFilm[quot;film/actorquot;] theaterType = fbFilm[quot;theaterquot;] tAddress = fbFilm[quot;theater/addressquot;] tShowing = fbFilm[quot;theater/showingquot;] showingType = fbFilm[quot;showingquot;] sTime = fbFilm[quot;showing/timequot;] fbDining = Namespace(quot;http://www.freebase.com/view/dining/quot;) restaurantType = fbDining[quot;restaurantquot;] rAddress = fbFilm[quot;restaurant/addressquot;]
  • 129. What is Freebase? • Structured Database • Strong Collaboratively Edited Subjects • Strong Collaboratively Developed Semantics • Open API + Open Data
  • 130. What’s in Freebase? • Over 3.3 million subjects • ~750,000 people • ~450,000 locations • ~50,000 companies • ~40,000 movies • Over 1000 types and 3000 properties
  • 135. MQL •JSON structure •Schemas (ontologies) form object abstraction •Query by example Fill in the parts you know Result fills in the rest
  • 136. MQL •JSON structure Show me the IMDB links for films by George Lucas: •Schemas (ontologies) form [{ object abstraction quot;namequot; : null, quot;imdb_idquot; : [ ], •Query by example quot;initial_release_datequot;:null, Fill in the parts you know quot;directed_byquot;:quot;George Lucasquot;, quot;typequot; : quot;/film/filmquot; Result fills in the rest }]
  • 137. MQL performance [ { Carrie Star quot;filmquot; : [ film actor film starring Fisher Wars { quot;filmquot; : { quot;namequot; : null, ter quot;starringquot; : [ { Carrie Fisherʼs Costars: ac quot;actorquot; : { ar quot;filmquot; : [ ch { quot;filmquot; : { Princess [{ quot;namequot; : null, quot;starringquot; : [ Leia quot;filmquot; : [{ { quot;actorquot; : { quot;namequot; : null quot;filmquot; : { }, quot;limitquot; : 2 quot;namequot; : null, ] } quot;starringquot; : [{ }, quot;limitquot; : 2 quot;actorquot; : null ], } quot;namequot; : null }] }, quot;limitquot; : 2 } ] } }], }, quot;limitquot; : 2 quot;idquot; : quot;/en/carrie_fisherquot;, ], } quot;idquot; : quot;/en/carrie_fisherquot;, quot;typequot; : quot;/film/actorquot; quot;typequot; : quot;/film/actorquot; } }] ]
  • 138. A Semantic Architecture Semantic Architecture •A little knowledge... ...goes a long way •Leverage Silos of Content •Effort ∝ semantic coverage
  • 139. A Semantic Architecture Semantic Architecture Semantic Mapping Layer
  • 140. A Semantic Architecture Semantic Architecture Semantic Mash-up Layer Semantic Plugin Layer
  • 141. Film Mashup • Strong Identity through IMDB IDs • Pulls data from: • IMDB (movie & actor data & rating) • Rotten Tomatoes (rating) • Freebase (pictures & restaurants) • Fandango (movie theaters)
  • 142. Movie Ontology name release_date imdb_rating name movie rt_rating actor name actor address showing theater showing show time
  • 143. MIT SIMILE http://www.cse.msu.edu/~dunham/exhibit/top100.html
  • 144. MIT SIMILE http://www.cse.msu.edu/~dunham/exhibit/top100.html
  • 145. MIT SIMILE http://www.cse.msu.edu/~dunham/exhibit/top100.html
  • 146. MIT SIMILE http://www.cse.msu.edu/~dunham/exhibit/top100.html
  • 147. MIT SIMILE http://www.cse.msu.edu/~dunham/exhibit/top100.html
  • 148. Useful Places • Freebase/MQL: • http://www.freebase.com/ • Javascript RDF Library (used in Toby’s map demo) • http://www.jibbering.com/rdf-parser/ • LIBrdf (Python) • http://rdflib.net/ • MIT Semantic Visualization Widgets • http://simile.mit.edu/
  • 149. Useful Places • SPARQL: • http://www.w3.org/TR/rdf-sparql-query/ • Linked Open Data/Semantic Web Interest Group (SWIG) • http://www.w3.org/2001/sw/interest/ • http://www.w3.org/DesignIssues/LinkedData.html • Tabulator (Linked Open Data Browser): • http://www.w3.org/2005/ajar/tab