Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Semantic Web: an introduction

Semantic Web: an introduction

Short seminar about the Semantic Web, given for the "Artificial Intelligence" course at Politecnico di Torino (academic year 2013/2014)

Luigi De Russis

May 28, 2014
Tweet

More Decks by Luigi De Russis

Other Decks in Technology

Transcript

  1. THE SEMANTIC WEB IS A WEB OF DATA Linking Open

    Data cloud diagram, by Richard Cyganiak and Anja Jentzsch. http://lod-cloud.net/
  2. HOW TO GET DATA FROM THE WEB? DATA IS PRESENT

    ON SOME WEBSITES Wikipedia, GitHub, Twitter, Facebook, … HOW TO GET IT? different, evolving and proprietary Web APIs various data exchange formats
  3. EXAMPLE TWITTER https://dev.twitter.com/docs/ Authentication is required for most calls Limitations

    about number of requests Data available in JSON RESTful Web APIs (version 1.1) Streaming APIs (version 1.1)
  4. HOW TO GET DATA FROM THE WEB? DATA IS LOCKED

    IN “DATA ISLANDS” Wikipedia, GitHub, Twitter, Facebook, … LIMITED OR NO ACCESS TO THIS DATA different, evolving and proprietary Web APIs various data exchange formats
  5. DATA ON THE WEB IS NOT ENOUGH! we need a

    proper infrastructure DATA SHOULD BE AVAILABLE ON THE WEB accessible and structured via standard Web technologies not controlled by applications, only DATA SHOULD BE INTERLINKED OVER THE WEB i.e., data can be integrated over the Web THIS IS WHERE SEMANTIC WEB COME IN
  6. To a computer, the Web is a flat, boring world,

    devoid of meaning. This is a pity, as in fact documents on the Web describe real objects and imaginary concepts. […] Adding semantics to the Web involves two things: allowing documents which have information in machine-readable forms, and allowing links to be created with relationship values. Only when we have this extra level of semantics we will be able to use computer power to help us exploit the information to a greater extent than our own reading. TIM BERNERS-LEE, 1994
  7. I have a dream for the Web [in which computers]

    become capable of analyzing all the data on the Web – the content, links, and transaction between people and computers. A “Semantic Web”, which should make this possible, has yet to emerge, but when it does, the day-to-day mechanisms of trade, bureaucracy and our daily lives will be handled by machines talking to machines. The “intelligent agents” people have touted for ages will finally materialize. TIM BERNERS-LEE, 1999 Weaving the Web – The Original Design and Ultimate Destiny of the World Wide Web by Its Inventor. Tim Berners-Lee, Harper San Francisco, September 1999
  8. THE SEMANTIC WEB IS A WEB OF DATA THE SEMANTIC

    WEB IS THE WEB same base technologies, evolutionary, decentralized IT IS ABOUT COMMON FORMATS for integration and combination of data drawn from diverse sources IT IS ABOUT A LANGUAGE for recording how the data relates to real world objects
  9. WHAT IS THE RELATIONSHIP WITH AI? INFLUENCE Some technologies in

    the Semantic Web benefited a lot from AI research and development (and viceversa) DIFFERENT GOALS Artificial Intelligence approach: build smarter machines, teach computers to infer the meaning of data Semantic Web approach: have smarter data, make data easier for machines to find, access and process
  10. RESOURCE AND DESCRIPTION RESOURCE every document “reachable” on the Web

    no matter the content, format, language, etc. RESOURCE DESCRIPTION independent from the format standard language (based on metadata)
  11. URIS unambiguous names for resources RDF a common data model

    to connect and describe resources SPARQL access to the data model RDFS, OWL common description languages OWL, RIF reasoning (mainly logic inference)
  12. EXAMPLE: BOOKSTORE Represent the following data about the AI book

    as a set of relations Title: “Artificial Intelligence: A Modern Approach” Author: Russel, Stuart and Norvig, Peter Publisher: Prentice Hall ISBN: 978-0136042594
  13. RDF: RESOURCE DESCRIPTION FRAMEWORK STRUCTURED IN STATEMENTS SUBJECT a resource

    (URI) PREDICATE a verb, property or relationship OBJECT a resource or a literal string
  14. EXAMPLE: BOOKSTORE http://...isbn/9780136042594 Artificial Intelligence: A Modern Approach Prentice Hall

    Russel, Stuart Norvig, Peter title publisher author author Subject Object Object Object Object Predicate Predicate Predicate
  15. EXAMPLE: BOOKSTORE http://...isbn/9780136042594 Artificial Intelligence: A Modern Approach title RDF

    IN XML SYNTAX <rdf:RDF xmlns:rdf=http://www.w3.org/…/22-rdf-syntax-ns#> <rdf:Description about=“http://... isbn/9780136042594”> <title>Artificial Intelligence: A Modern Approach</title> </rdf:Description> </RDF>
  16. EXAMPLE: BOOKSTORE http://...isbn/9780136042594 Artificial Intelligence: A Modern Approach title RDF

    IN TURTLE <http://... isbn/9780136042594> title “Artificial Intelligence: A Modern Approach”
  17. EXAMPLE: BOOKSTORE Represent the following data about the Italian translation

    of the AI book as a set of relations Title: “Intelligenza artificiale. Un approccio moderno” Author: Russel, Stuart and Norvig, Peter Publisher: Prentice Hall ISBN: 978-8871925936 Original ISBN: 978-0136042594
  18. EXAMPLE: BOOKSTORE http://...isbn/9788871925936 Intelligenza Artificiale. Un approccio moderno Prentice Hall

    Russel, Stuart Norvig, Peter title publisher creator creator http://...isbn/9780136042594 original
  19. EXAMPLE: BOOKSTORE http://...isbn/9788871925936 Intelligenza Artificiale. Un approccio moderno Prentice Hall

    title publisher http://...isbn/9780136042594 original http://...isbn/9780136042594 Artificial Intelligence: A Modern Approach Prentice Hall title publisher
  20. EXAMPLE: BOOKSTORE http://...isbn/9788871925936 Intelligenza Artificiale. Un approccio moderno Prentice Hall

    title publisher http://...isbn/9780136042594 original http://...isbn/9780136042594 Artificial Intelligence: A Modern Approach Prentice Hall title creator same URI, same resource
  21. EXAMPLE: BOOKSTORE http://...isbn/9780136042594 Artificial Intelligence: A Modern Approach Prentice Hall

    Russel, Stuart Norvig, Peter title publisher author author http://...isbn/9788871925936 Intelligenza Artificiale. Un approccio moderno Prentice Hall title publisher original Russel, Stuart Norvig, Peter creator creator
  22. EXAMPLE: BOOKSTORE http://...isbn/9780136042594 Artificial Intelligence: A Modern Approach Prentice Hall

    Russel, Stuart Norvig, Peter title publisher author author http://...isbn/9788871925936 Intelligenza Artificiale. Un approccio moderno Prentice Hall title publisher original Russel, Stuart Norvig, Peter creator creator What about merging creator and author? In RDF, it is not possible!
  23. PROBLEM: FIELD NAMES ARE ARBITRARY Synonyms : author or creator

    or maker or contributor or… Singular or plural: author or authors SOLUTION: STANDARDS general or domain-specific
  24. DUBLIN CORE GENERAL VOCABULARY Dublin Core Metadata Initiative (DCMI) http://dublincore.org

    BUILDING BLOCKS TO DEFINE METADATA FOR THE SEMANTIC WEB Define title, contributor, publisher, license, date, language, etc.
  25. PROBLEM: FIELD VALUES ARE ARBITRARY Value type: string, date, integer,

    … Value format: “Norvig, Peter” or “Norvig, P.” or “Peter Norvig” or… Value restrictions: one value or multiple values (how many?) SOLUTIONS Standards Controlled vocabulary (close list of terms) Semantically rich descriptions to support search (RDFS and/or OWL)
  26. FRIEND OF A FRIEND (FOAF) GENERAL ONTOLOGY Describe persons, their

    activities and their relations to other people and objects http://www.foaf-project.org BUILDING BLOCKS TO DEFINE STRUCTURED RELATIONS BETWEEN PEOPLE Define name, familyName, givenName, knows, age, nick, etc.
  27. EXAMPLE: BOOKSTORE http://...isbn/9780136042594 Artificial Intelligence: A Modern Approach Prentice Hall

    Russel, Stuart Norvig, Peter dc:title dc:publisher dc:creator dc:creator foaf: http://xmlns.com/foaf/spec dc: http://purl.org/dc/terms foaf:name foaf:name foaf:name
  28. RDF SCHEMA SCHEMA Definition of the nodes and predicates used

    in a RDF document DOMAIN AND RANGE RDFS describes properties in terms of classes of resource to which they apply (from a “domain” to a “range”)
  29. http://...isbn/9780136042594 Norvig, Peter dc:creator foaf:name http://...isbn/9780136042594 Norvig, Peter author BACK

    TO THE BOOKSTORE EXAMPLE… dc:creator has range Agent, i.e., a class (resource), not a literal: we use an anonymous class for this scope. Finally, foaf:Name has range rdfs:Literal. anonymous class
  30. RDFS EXPRESSIVITY SIMPLE RELATIONSHIP BETWEEN THINGS RDFS provides a vocabulary

    to express relationship between things (e.g., subClassOf or type) AVOID COMPLEX RELATIONSHIP RDFS cannot describe data in terms of set of operations (e.g., unionOf), equivalence (e.g., sameAs) or cardinality (e.g., allValueFrom)
  31. OWL

  32. WEB ONTOLOGY LANGUAGE WHAT? OWL (version 2): a knowledge representation

    language Designed to formulate, exchange and reason with knowledge about a domain of interest
  33. WEB ONTOLOGY LANGUAGE INDIVIDUALS, CLASSES AND PROPERTIES “Politecnico di Torino

    is a university” “Politecnico di Torino has a professor named Elio Piccolo” “Politecnico di Torino” is an object: an individual in OWL2 “university” is a category: a class in OWL2 “has a professor” is a relation: a property in OWL2 “Elio Piccolo” is an individual, too
  34. WEB ONTOLOGY LANGUAGE EXPRESSIVITY Designed to represent rich and complex

    knowledge about things, group of things, and their relations LOGIC-BASED Knowledge expressed in OWL can be reasoned with a computer program to verify its consistency or to make implicit knowledge explicit
  35. WEB ONTOLOGY LANGUAGE LINKED Ontologies in OWL can be published

    on the Web and may refer to or be referred from other OWL ontologies CHOOSE THE SYNTAX YOU LIKE Various syntaxes available for OWL, for different purposes (RDF/XML, Turtle, Manchester, etc.)
  36. EXAMPLE: BOOKSTORE Intelligenza Artificiale. Un approccio moderno Prentice Hall dc:title

    dc:publisher Artificial Intelligence: A Modern Approach Prentice Hall dc:title dc:publisher Libro Book rdfs:type rdf:type http://...isbn/9788871925936 http://...isbn/9780136042594
  37. EXAMPLE: BOOKSTORE Intelligenza Artificiale. Un approccio moderno Prentice Hall dc:title

    dc:publisher Artificial Intelligence: A Modern Approach Prentice Hall dc:title dc:publisher Libro Book rdfs:type rdf:type owl:sameAs http://...isbn/9788871925936 http://...isbn/9780136042594
  38. EXAMPLE: BOOKSTORE It is time to sell the books we

    modeled. Users must have the possibility to search in our book catalog. We need to describe our store and add some other information about the books. GoodRelations helps in realizing such an example: http://www.heppnetz.de/projects/goodrelations/
  39. EXAMPLE: BOOKSTORE BUILD THE MODEL 1. Describe the business entity

    2. Describe the offered items 3. Describe the offer 4. Link the offer to the business entity SEARCH IN THE MODEL
  40. DESCRIBE THE OFFERED ITEMS default:AIBook_en a item:Book, gr:ActualProductOrServiceInstance ; item:hasTotalPages

    default:QuantitativeValueInteger_1 . AIBook_en default:QuantitativeValueInteger_1 a gr:QuantitativeValueInteger ; gr:hasValue “1132”^^xsd:integer . QuantitativeValue Integer_1
  41. DESCRIBE THE OFFER default:Offering_1 a gr:Offering ; gr:hasBusinessFunction gr:Sell ;

    gr:hasPriceSpecification default:UnityPriceSpecification_1 ; gr:includeObject default:TypeAndQuantityNode_1 . Offering_1
  42. Bookstore_1 Offering_1 TypeAndQuantity Node_1 UnitPriceSpecification_1 AIBook_en item:Book QuantitativeValue Integer_1 gr:Sell

    1.0 1132 gr:ActualProductOrServiceInstance gr:ProductOrService gr:includeObject gr:hasBusinessFunction gr:hasPriceSpecification gr:amountOfThisGood rdf:type rdfs:subClassOf rdf:type item:hasTotalPages gr:hasValue gr:Offering rdf:type
  43. DESCRIBE THE OFFER default:TypeAndQuantityNode_1 a gr:TypeAndQuantityNode ; gr:amountOfThisGood “1.0”^^xsd:float ;

    gr:typeOfGood default:AIBook_en . default:UnitPriceSpecification_1 a gr:UnitPriceSpecification ; gr:hasCurrency “EUR”^^xsd:string ; gr:hasCurrencyValue “120.0”^^xsd:float . TypeAndQuantity Node_1 UnitPriceSpecification_1
  44. Bookstore_1 Offering_1 TypeAndQuantity Node_1 UnitPriceSpecification_1 AIBook_en item:Book QuantitativeValue Integer_1 gr:Sell

    120.0 “EUR” 1.0 1132 gr:ActualProductOrServiceInstance gr:ProductOrService gr:includeObject gr:hasBusinessFunction gr:hasPriceSpecification gr:hasCurrency gr:hasCurrencyValue gr:amountOfThisGood gr:typeOfGood rdf:type rdfs:subClassOf rdf:type item:hasTotalPages gr:hasValue gr:Offering rdf:type
  45. Bookstore_1 Offering_1 TypeAndQuantity Node_1 UnitPriceSpecification_1 AIBook_en item:Book QuantitativeValue Integer_1 gr:Sell

    120.0 “EUR” 1.0 1132 gr:ActualProductOrServiceInstance gr:ProductOrService gr:offers gr:includeObject gr:hasBusinessFunction gr:hasPriceSpecification gr:hasCurrency gr:hasCurrencyValue gr:amountOfThisGood gr:typeOfGood rdf:type rdfs:subClassOf rdf:type item:hasTotalPages gr:hasValue gr:Offering rdf:type
  46. QUERY THE WHOLE! PREFIX gr: <http://purl.org/goodrelations/v1#> PREFIX item: <http://www.elite.polito.it/ontologies/example/item#> SELECT

    ?offering WHERE { ?offering rdf:type gr:Offering . ?offering gr:includesObject ?object . ?object gr:typeOfGood ?item . ?item rdf:type item:Book . } How to get all the available offer for the book? SPARQL
  47. QUERY THE WHOLE! ?offering gr:includesObject ?object . SPARQL ?offering TypeAndQuantity

    Node_1 AIBook_en item:Book gr:includeObject gr:typeOfGood rdf:type
  48. QUERY THE WHOLE! ?offering rdf:type gr:Offering . SPARQL ?offering TypeAndQuantity

    Node_1 AIBook_en item:Book gr:includeObject gr:typeOfGood rdf:type gr:Offering rdf:type
  49. QUERY THE WHOLE! SELECT ?offering SPARQL Offering_1 TypeAndQuantity Node_1 AIBook_en

    item:Book gr:includeObject gr:typeOfGood rdf:type gr:Offering rdf:type
  50. REFERENCES Semantic Web standards: http://w3c.org/standards/semanticweb Semantic Web Wiki: http://semanticweb.org Semantic

    Web FAQ: http://www.w3c.org/2001/sw/SW-FAQ Book: A Semantic Web Primer (http://www.semanticwebprimer.org) Book: Semantic Web Programming (http://semwebprogramming.org) Last access: 26 May 2014
  51. LICENSE This work is licensed under the Creative Commons “Attribution-NonCommercial-

    ShareAlike Unported (CC BY-NC-SA 3,0)” License. You are free: to Share - to copy, distribute and transmit the work to Remix - to adapt the work Under the following conditions: Attribution - You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work). Noncommercial - You may not use this work for commercial purposes. Share Alike - If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/