Your SlideShare is downloading. ×
0
Semantic Web 101Canberra Semantic Web meetupDavid Ratcliffe & Armin HallerCSIRO ICT Centre, Canberra23rd April 2012INFORMA...
What is the Semantic Web?“The Semantic Web is a web of data, in some ways like a globaldatabase”1“The first step is puttin...
FundamentalzZzZz…Linked Open Data    RDFa, -Formats    Vocabularies    GRDDL    Triplestores    Apps!RDFS, OWLRDF, SPARQLU...
Fundamentals: Semantic Web “Layer Cake”Linked Open Data    RDFa, -Formats    Vocabularies    RDDL    Triplestores    Apps!...
FundamentalsLinked Open Data    RDFa, -Formats    Vocabularies    GRDDL    Triplestores    Web Applications!URIs, RDF, RDF...
Uniform Resource Identifiers (URIs)String of characters identifying a resource (which can be… anything!)Syntax (absolute):...
Resource Description Framework (RDF)Data model - captures knowledge about resources (as URIs!)CSIRO. Semantic Web 101 – Ca...
Resource Description Framework (RDF)Data model - captures knowledge about resources (as URIs!)Relates resources with predi...
Resource Description Framework (RDF)Data model - captures knowledge about resourcesRelates resources with predicates (name...
Resource Description Framework (RDF)Data model - captures knowledge about resourcesRelates resources with predicates (name...
Resource Description Framework (RDF)Data model - captures knowledge about resourcesRelates resources with predicates (name...
Resource Description Framework (RDF)Data model - captures knowledge about resourcesRelates resources with predicates (name...
Resource Description Framework (RDF)XML SerializationAustralian War Memorial located_in Canberra     <rdf:RDF        xmlns...
Resource Description Framework (RDF)XML SerializationAustralian War Memorial located_in Canberra                 “”       ...
Resource Description Framework (RDF)XML SerializationAustralian War Memorial located_in Canberra                 “”       ...
RDF GraphCollection of triples referencing common resource(s) = a graph                                                   ...
RDF ‘Triplestore’ – Database for triplesBasically a database for triples, stored as graphs                                ...
Relational Database                                      RDF Triplestore Data model                                       ...
SPARQL Protocol and RDF Query Language (SPARQL)Language for querying (and constructing new) RDF graphs    A W3C Recommenda...
SPARQL – Anatomy (simple SELECT)              PREFIX dbpedia:<http://dbpedia.org/resource/>              PREFIX obo:<http:...
SPARQL: Querying an RDF graph                                                                              Canberra       ...
SPARQL: Querying an RDF graph                                                                              Canberra       ...
SPARQL: Querying an RDF graph                                                                              Canberra       ...
RDF Schema (RDFS)Describes structures of triples into particular graphs    Assigns semantics to RDF triples      (…just as...
RDFS: Structure + Semantics over RDFClass (set) of instances (set members):    E.g., class ‘City’ – the set of all cities ...
RDFS: Structure + Semantics over RDFSubclass (subset) of a class (set) of instances (set members):    Class ‘CapitalCity’ ...
RDFS: Structure + Semantics over RDF Subclass (subset) of a class (set) of instances (set members):     Class ‘StateCapita...
RDFS: Structure + Semantics over RDF              Properties (set set) of instances (set members) over              classe...
Web Ontology Language (OWL)More (+ expressive) structure and semantics…                                                   ...
That’s enough…CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
What is this all useful for?... for putting Data openly on the Web …and linking it to other data …a.k.a. Linked Open Data ...
Linked                                                         Open                                                       ...
MotivationLinking data paves the way for all kinds of improvements in:    search,    filtering,    automation…Real Busines...
LOD ‘Cloud’ Growth: September 2010                                                         [Richard Cyganiak, Anja Jentzsc...
LOD ‘Cloud’ Growth: September 2011                                                         [Richard Cyganiak, Anja Jentzsc...
The Four Linked Open Data PrinciplesTim Berners-Lee outlined 4 principles   for Publishing Linked Open Data:      1. Use U...
The Four Linked Open Data PrinciplesTim Berners-Lee outlined 4 principles   for Publishing Linked Open Data:      1. Use U...
Use URIs for names of things – Example:                                                         Large US retailer         ...
Identify things to reference with a URI                                                         Product data:             ...
Identify things to reference with a URI                                                                                   ...
Choose URIs for things in your data                                                                 Which URI to use      ...
Choose URIs for things in your data          http://www.ci.carbondale.il.us/                                              ...
Choose URIs for things in your data     http://en.wikipedia.org/wiki/Carbondale,_Illinois                                 ...
Choose URIs for things in your dataProblem:   http://www.ci.carbondale.il.us/   http://en.wikipedia.org/wiki/Carbondale,_I...
The Four Linked Open Data PrinciplesTim Berners-Lee outlined 4 principles   for Publishing Linked Open Data:      1. Use U...
Use de-referenceable HTTP URIsDBpedia is a major Linked Open Data contributor!So, what happens when we put: http://dbpedia...
Content negotiationThe browser (client) performs content negotiation with the server:     ACCEPT parameters in the HTTP re...
Content negotiation            http://dbpedia.org/page/Carbondale,_IllinoisCSIRO. Semantic Web 101 – Canberra Semantic Web...
Content negotiationSo, what happens when we ask for:    http://dbpedia.org/resource/Carbondale,_Illinois including:       ...
Content negotiation            http://dbpedia.org/data/Carbondale,_IllinoisCSIRO. Semantic Web 101 – Canberra Semantic Web...
Different URIs for different content!Three Different URIs for different data about the same thing:     1. An abstract iden...
Make sure your URIs are coolBroken links are very uncoolURIs that don’t change are cool.           Should strive to mainta...
The Four Linked Open Data PrinciplesTim Berners-Lee outlined 4 principles   for Publishing Linked Open Data:      1. Use U...
Providing RDF on the WebRDF data usually resides in an RDF database (Triplestore)       …how do we ‘put them out’ on the w...
Exposing RDF on the web             Separate HTML content and RDF data?                          Web                      ...
Exposing RDF on the webSeparate HTML content and RDF data?Maintenance problem     • Both need to be managed separately    ...
Exposing RDF on the web             Embed RDF into your web content using RDFa                          Web               ...
RDF – in attributes (RDFa)             Embed RDF into your web content using RDFa                           Extra (RDFa) m...
RDFa is not the only solution…             …but is “one of the… what I call a gateway drug… to the Semantic               ...
The Four Linked Open Data PrinciplesTim Berners-Lee outlined 4 principles   for Publishing Linked Open Data:      1. Use U...
Link to existing vocabularies to describe data!For describing classes (categories) and properties (relationships), try to ...
Link your data!Linking similar entities (individuals/ concepts) from different datasets(“entity resolution”)Several ways, ...
Thank you!ICT Centre                                ICT CentreDavid Ratcliffe                           Dr. Armin HallerPh...
Upcoming SlideShare
Loading in...5
×

Semantic Web 101

8,642

Published on

An extremely brief introduction to some Semantic Web technologies: URIs, XML, RDF, RDFS and OWL, SPARQL, and an introduction to Linked Open Data (LOD), principles and real-world applications.

This presentation was given as a primer to talks about the Semantic Web at a Canberra Semantic Web Meetup Group meeting entitled "Semantic Web In Use" at the Australian War Memorial, BAE Systems Theatre on Monday 24th April, 2012.

http://www.meetup.com/Canberra-Semantic-Web-Meetup-Group/events/59032632/

Published in: Technology, Education

Transcript of "Semantic Web 101"

  1. 1. Semantic Web 101Canberra Semantic Web meetupDavid Ratcliffe & Armin HallerCSIRO ICT Centre, Canberra23rd April 2012INFORMATION ENGINEERING LABORATORY
  2. 2. What is the Semantic Web?“The Semantic Web is a web of data, in some ways like a globaldatabase”1“The first step is putting data on the Web in a form that machinescan naturally understand, or converting it to that form. This createswhat I call a Semantic Web - a Web of data that can be processeddirectly or indirectly by machines”21. http://www.w3.org/DesignIssues/Semantic.html2. Tim Berners-Lee, Weaving the Web. Harper, San Francisco, 1999.CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  3. 3. FundamentalzZzZz…Linked Open Data RDFa, -Formats Vocabularies GRDDL Triplestores Apps!RDFS, OWLRDF, SPARQLURIs, XMLCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  4. 4. Fundamentals: Semantic Web “Layer Cake”Linked Open Data RDFa, -Formats Vocabularies RDDL Triplestores Apps!URIs, RDF, RDFS,SPARQL, OWLCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  5. 5. FundamentalsLinked Open Data RDFa, -Formats Vocabularies GRDDL Triplestores Web Applications!URIs, RDF, RDFS,SPARQL, OWLCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  6. 6. Uniform Resource Identifiers (URIs)String of characters identifying a resource (which can be… anything!)Syntax (absolute): <scheme> : <path> [? <query>] [# <fragment>]Examples: ICT Centre website: http://www.ict.csiro.au/ The actual ICT Centre itself: http://www.ict.csiro.au/resource#idURIs are more general than URLs (and less so than IRIs!) URIs include URNs (e.g., urn:oid:2.16.840)Used extensively in the Linked Open Data web! Many recommendations about URIs to come…CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  7. 7. Resource Description Framework (RDF)Data model - captures knowledge about resources (as URIs!)CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  8. 8. Resource Description Framework (RDF)Data model - captures knowledge about resources (as URIs!)Relates resources with predicates (named relationships)Australian War Memorial located_in CanberraThe ‘triple’ data modelSubject, predicate, objectCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  9. 9. Resource Description Framework (RDF)Data model - captures knowledge about resourcesRelates resources with predicates (named relationships)Australian War Memorial located_in CanberraThe ‘triple’ data modelSubject, predicate, objectCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  10. 10. Resource Description Framework (RDF)Data model - captures knowledge about resourcesRelates resources with predicates (named relationships)Australian War Memorial located_in CanberraThe ‘triple’ data modelSubject, predicate, objectCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  11. 11. Resource Description Framework (RDF)Data model - captures knowledge about resourcesRelates resources with predicates (named relationships)Australian War Memorial located_in CanberraThe ‘triple’ data modelSubject, predicate, objectCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  12. 12. Resource Description Framework (RDF)Data model - captures knowledge about resourcesRelates resources with predicates (named relationships)Australian War Memorial located_in CanberraThe ‘triple’ data modelSubject, predicate, objectAll knowledge can be encoded using triples like this in RDFCanberra is located_in ACT (…‘subjects’ can be ‘objects’ – links resources!)CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  13. 13. Resource Description Framework (RDF)XML SerializationAustralian War Memorial located_in Canberra <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:obo="http://purl.obolibrary.org/obo/OBO_REL#" xmlns:dbpprop="http://dbpedia.org/property/"> <rdf:Description rdf:about="http://dbpedia.org/resource/Australian_War_Memorial"> <obo:_located_in> <rdf:Description rdf:about="http://dbpedia.org/resource/Canberra"/> </obo:_located_in> <rdf:Description> </rdf:RDF>CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  14. 14. Resource Description Framework (RDF)XML SerializationAustralian War Memorial located_in Canberra “” unveiled 1941 <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:obo="http://purl.obolibrary.org/obo/OBO_REL#" xmlns:dbpprop="http://dbpedia.org/property/"> <rdf:Description rdf:about="http://dbpedia.org/resource/Australian_War_Memorial"> <obo:_located_in> <rdf:Description rdf:about="http://dbpedia.org/resource/Canberra"/> </obo:_located_in> <dbpprop:unveiled rdf:datatype="http://www.w3.org/2001/XMLSchema#int"> 1941 </dbpprop:unveiled> <rdf:Description> </rdf:RDF>CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  15. 15. Resource Description Framework (RDF)XML SerializationAustralian War Memorial located_in Canberra “” unveiled 1941 (integer data type) <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:obo="http://purl.obolibrary.org/obo/OBO_REL#" xmlns:dbpprop="http://dbpedia.org/property/"> <rdf:Description rdf:about="http://dbpedia.org/resource/Australian_War_Memorial"> <obo:_located_in> <rdf:Description rdf:about="http://dbpedia.org/resource/Canberra"/> </obo:_located_in> <dbpprop:unveiled rdf:datatype="http://www.w3.org/2001/XMLSchema#int"> 1941 </dbpprop:unveiled> <rdf:Description> </rdf:RDF>CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  16. 16. RDF GraphCollection of triples referencing common resource(s) = a graph Canberra ACT _located_in Australian_War d_in _Memorial _lo cate unv eile d {1941}Australian War Memorial located_in CanberraCanberra located_in ACTAustralian War Memorial unveiled 1941CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  17. 17. RDF ‘Triplestore’ – Database for triplesBasically a database for triples, stored as graphs Canberra ACT _located_in Australian_War _Memorial ate d_in _loc unv eile d {1941}Triplestores not only store triples, but give you ways of getting themout in interesting ways… (e.g., via queries – SPARQL)CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  18. 18. Relational Database RDF Triplestore Data model Data model Relational data (tables) RDF graphs Data instances Data instances Records in tables RDF triples Query support Query support SQL SPARQL Indexing mechanism Indexing mechanism Optimized for evaluating queries as Optimized for evaluating relational expressions queries as graph patternsCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  19. 19. SPARQL Protocol and RDF Query Language (SPARQL)Language for querying (and constructing new) RDF graphs A W3C Recommendation (version 1.1 released in January 2012) Syntax similar to SQL…CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  20. 20. SPARQL – Anatomy (simple SELECT) PREFIX dbpedia:<http://dbpedia.org/resource/> PREFIX obo:<http://purl.obolibrary.org/obo/OBO_REL#> SELECT ?l WHERE { dbpedia:Australian_War_Memorial obo:_located_in ?l . } PREFIX Define prefix for URI to make SPARQL more readable SELECT Variables (columns) in the result (here, ?l) WHERE The graph pattern to look for involving the selected variables …“Where [?l] is the Australian_War_Memorial _located_in?”CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  21. 21. SPARQL: Querying an RDF graph Canberra ACT _located_in Australian_War d_in _Memorial _lo cate unv eile d {1941} e.g. “Where is the Australian_War_Memorial _located_in?” PREFIX dbpedia:<http://dbpedia.org/resource/> PREFIX obo:<http://purl.obolibrary.org/obo/OBO_REL#> SELECT ?l WHERE { dbpedia:Australian_War_Memorial obo:_located_in ?l . }CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  22. 22. SPARQL: Querying an RDF graph Canberra ACT _located_in Australian_War d_in _Memorial _lo cate unv eile d {1941} e.g. “Where is the Australian_War_Memorial _located_in?” PREFIX dbpedia:<http://dbpedia.org/resource/> PREFIX obo:<http://purl.obolibrary.org/obo/OBO_REL#> SELECT ?l WHERE { dbpedia:Australian_War_Memorial obo:_located_in ?l . }CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  23. 23. SPARQL: Querying an RDF graph Canberra ACT _located_in Australian_War d_in _Memorial _lo cate unv eile d {1941} e.g. “Where is the Australian_War_Memorial _located_in?” Result: ?l http://dbpedia.org/resource/CanberraCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  24. 24. RDF Schema (RDFS)Describes structures of triples into particular graphs Assigns semantics to RDF triples (…just as E-R does for relational data!) Used in describing vocabularies and ontologies over RDFCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  25. 25. RDFS: Structure + Semantics over RDFClass (set) of instances (set members): E.g., class ‘City’ – the set of all cities City CanberraCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  26. 26. RDFS: Structure + Semantics over RDFSubclass (subset) of a class (set) of instances (set members): Class ‘CapitalCity’ (subclass of ‘City’) – defined as the set of all cities that are the capital of a federated state City CapitalCity CanberraCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  27. 27. RDFS: Structure + Semantics over RDF Subclass (subset) of a class (set) of instances (set members): Class ‘StateCapital’ (subclass of ‘City’) – defined as the set of all cities that are capitals of a state within a federated state City CapitalCity StateCapital CanberraCities that are CapitalCity and StateCapital CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  28. 28. RDFS: Structure + Semantics over RDF Properties (set set) of instances (set members) over classes: _located_in City Federated StateCapitalCity StateCapital _located_inCanberra ACTCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  29. 29. Web Ontology Language (OWL)More (+ expressive) structure and semantics… _located_in City Federated StateCapitalCity StateCapital _located_in FederalStateCapital = CapitalCity StateCapitalCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  30. 30. That’s enough…CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  31. 31. What is this all useful for?... for putting Data openly on the Web …and linking it to other data …a.k.a. Linked Open Data Building a web of data Semantic Web done right Combination of Openess with data + open standards uses RDF with de-referenceable URIs → not only to identify data but actually pointing to data about the entityCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  32. 32. Linked Open DataCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  33. 33. MotivationLinking data paves the way for all kinds of improvements in: search, filtering, automation…Real Business Value “I found that RDFa was a much more stable concept – based on the use of long established vocabularies (also known as ontologies) that have existed for years. … Within just a couple of months, we began to see an increase in our organic search results … by 30% over historical rates. We also saw an increase in our click-through rate.” [Jay Myers, Lead Development Engineer Best Buy] “2012: The Year of the Semantic Web” [Steve Hamby, CTO, Orbis Technologies, Inc.]Enormous amount of linked (RDF) data already available • Many vocabularies to get your data described and linked into this world • Estimated tens (to hundreds) of billions of triple statements • Now (relatively) easier for people to join in!CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  34. 34. LOD ‘Cloud’ Growth: September 2010 [Richard Cyganiak, Anja Jentzsch, Linking Open Data cloud diagram, 2010]CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  35. 35. LOD ‘Cloud’ Growth: September 2011 [Richard Cyganiak, Anja Jentzsch, Linking Open Data cloud diagram, 2011]CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  36. 36. The Four Linked Open Data PrinciplesTim Berners-Lee outlined 4 principles for Publishing Linked Open Data: 1. Use URIs for names of things 2. Use HTTP URIs so that people can look up those names 3. When someone looks up a HTTP URI, provide useful information (using the standards, like RDF) 4. Include links to other URIs so that a user can discover more things. Source: http://www.w3.org/DesignIssues/LinkedData.htmlCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  37. 37. The Four Linked Open Data PrinciplesTim Berners-Lee outlined 4 principles for Publishing Linked Open Data: 1. Use URIs for names of things 2. Use HTTP URIs so that people can look up those names 3. When someone looks up a HTTP URI, provide useful information (using the standards, like RDF) 4. Include links to other URIs so that a user can discover more things.CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  38. 38. Use URIs for names of things – Example: Large US retailer Loads of different products for sale! Data include: Product categories (computers, video games, televisions, digital cameras, mp3 players, mobile phones, appliances, etc…)CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  39. 39. Identify things to reference with a URI Product data: Price Model # ID Stock levels Rating Reviews Images etc…CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  40. 40. Identify things to reference with a URI Store data: Names Locations Phone # Hours Ratings/Reviews Events etc… Source: http://www.readwriteweb.com/archives/how_best_buy_is_using_the_semantic_web.phpCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  41. 41. Choose URIs for things in your data Which URI to use for the location Carbondale, Illinois, USA?CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  42. 42. Choose URIs for things in your data http://www.ci.carbondale.il.us/ Which URI to use for the location Carbondale, Illinois, USA?CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  43. 43. Choose URIs for things in your data http://en.wikipedia.org/wiki/Carbondale,_Illinois Which URI to use for the location Carbondale, Illinois, USA?CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  44. 44. Choose URIs for things in your dataProblem: http://www.ci.carbondale.il.us/ http://en.wikipedia.org/wiki/Carbondale,_IllinoisThese are webpages about Carbondale, IL!Instead, we want some identifier for the town Carbondale, IL.DBpedia has an RDF Resource URI based on info from Wikipedia: http://dbpedia.org/resource/Carbondale,_IllinoisCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  45. 45. The Four Linked Open Data PrinciplesTim Berners-Lee outlined 4 principles for Publishing Linked Open Data: 1. Use URIs for names of things 2. Use HTTP URIs so that people can look up those names 3. When someone looks up a HTTP URI, provide useful information (using the standards, like RDF) 4. Include links to other URIs so that a user can discover more things.CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  46. 46. Use de-referenceable HTTP URIsDBpedia is a major Linked Open Data contributor!So, what happens when we put: http://dbpedia.org/resource/Carbondale,_Illinois… into a browser?The dbpedia.org server responds with an HTTP redirect: 303 SEE OTHER LOCATION: http://dbpedia.org/page/Carbondale,_IllinoisCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  47. 47. Content negotiationThe browser (client) performs content negotiation with the server: ACCEPT parameters in the HTTP request specified HTML, e.g.: Accept: text/*, text/html, text/html;level=1, */*The client could have asked for RDF instead! Accept: application/rdf+xml… or other syntaxes too (N3, Turtle, etc.): Accept: application/rdf+xml, text/rdf+n3, …CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  48. 48. Content negotiation http://dbpedia.org/page/Carbondale,_IllinoisCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  49. 49. Content negotiationSo, what happens when we ask for: http://dbpedia.org/resource/Carbondale,_Illinois including: Accept: application/rdf+xml ...?The dbpedia.org server responds with another, different redirect: 303 SEE OTHER LOCATION: http://dbpedia.org/data/Carbondale,_IllinoisThe server may provide the triple data in RDF/XML format...CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  50. 50. Content negotiation http://dbpedia.org/data/Carbondale,_IllinoisCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  51. 51. Different URIs for different content!Three Different URIs for different data about the same thing: 1. An abstract identifier (RDF resource) for the ‘thing’ in question 2. An HTML page about that ‘thing’ 3. Some RDF data about that ‘thing’Example: Carbondale, IL on dbpedia.org: 1. Abstract identifier: http://dbpedia.org/resource/Carbondale,_Illinois 2. HTML page: http://dbpedia.org/page/Carbondale,_Illinois 3. RDF data: http://dbpedia.org/data/Carbondale,_IllinoisCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  52. 52. Make sure your URIs are coolBroken links are very uncoolURIs that don’t change are cool. Should strive to maintain URIs! Even if content moves, server should still responds appropriately.CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  53. 53. The Four Linked Open Data PrinciplesTim Berners-Lee outlined 4 principles for Publishing Linked Open Data: 1. Use URIs for names of things 2. Use HTTP URIs so that people can look up those names 3. When someone looks up a HTTP URI, provide useful information (using the standards, like RDF) 4. Include links to other URIs so that a user can discover more things.CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  54. 54. Providing RDF on the WebRDF data usually resides in an RDF database (Triplestore) …how do we ‘put them out’ on the web?SPARQL Endpoint (SPARQL query over HTTP) • Direct connection to triplestore over HTTPPublish RDF data in files on your web server • Might not even need a triplestore… Problem: Web data (HTML) and RDF data are separate.CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  55. 55. Exposing RDF on the web Separate HTML content and RDF data? Web Page (HTML) RDF data (XML)CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  56. 56. Exposing RDF on the webSeparate HTML content and RDF data?Maintenance problem • Both need to be managed separately • RDF content and web content have much overlap (redundancy)  duplication of content, effort = data integrity issues • RDF/XML difficult to author = extra overheadVerification problem • How to reconcile differences as content changes?Visibility problem • Easy to ignore the RDF stuff! (out of sight, out of mind)CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  57. 57. Exposing RDF on the web Embed RDF into your web content using RDFa Web Page (HTML) RDF data (XML) ‘Embed’ RDF into HTML instead!CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  58. 58. RDF – in attributes (RDFa) Embed RDF into your web content using RDFa Extra (RDFa) markup is ignored by web browsers.CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  59. 59. RDFa is not the only solution… …but is “one of the… what I call a gateway drug… to the Semantic Web.” Jay Myers, Lead Development Engineer for Best Buy Source: Peter Mika (Yahoo!), RDFa, 2011CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  60. 60. The Four Linked Open Data PrinciplesTim Berners-Lee outlined 4 principles for Publishing Linked Open Data: 1. Use URIs for names of things 2. Use HTTP URIs so that people can look up those names 3. When someone looks up a HTTP URI, provide useful information (using the standards, like RDF) 4. Include links to other URIs so that a users can discover more things.CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  61. 61. Link to existing vocabularies to describe data!For describing classes (categories) and properties (relationships), try to re-use existing vocabularies Easier to interoperate if we’re talking the same language!Many vocabularies/ontologies out there: schema.org is a great place to start looking! Vocabs for products (Good Relations), people (FOAF), social media (SIOC), places, events, businesses, e-commerce, music, etc., you name it…If nothing relevant, you can: Hack existing vocabularies, then publish your dirty hacks on http://open.vocab.org/ Create your own, but make sure you… Publish it! Reconcile (map) it to other vocabularies, if you can.CSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  62. 62. Link your data!Linking similar entities (individuals/ concepts) from different datasets(“entity resolution”)Several ways, different semantics: owl:equivalentClass – strong assertion! owl:sameAs – strong assertion! rdfs:seeAlso – weak (loose) relation skos:closeMatch – weak (loose) relation skos:exactMatch – stronger than close match skos:related – weak semantic relationhttp://dbpedia.org/resource/Canberra owl:sameAs http://rdf.freebase.com/rdf/en.canberraCSIRO. Semantic Web 101 – Canberra Semantic Web meetup
  63. 63. Thank you!ICT Centre ICT CentreDavid Ratcliffe Dr. Armin HallerPhD Student / Software Engineer Office Manager, Australian W3C OfficePhone: +61 2 6216 7001 Phone: +61 2 6216 7149David.Ratcliffe@csiro.au Armin@w3.orgICT CENTRE, INFORMATION ENGINEERING LABORATORY
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×