Introduction to RDF


Published on

A basic description about RDF, RDFs and why it is important to semantic web.

Published in: Technology
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Introduction to RDF

  1. 1. <ul><li>What is Semantic Web? </li></ul><ul><li>How it enables Semantic Web? </li></ul><ul><li>RDF </li></ul><ul><li>Triples - RDF Graph </li></ul><ul><li>Serialization Formats </li></ul><ul><li>RDFS </li></ul><ul><li>Resources </li></ul><ul><li>Q&A </li></ul>Agenda
  2. 2. What is Semantic Web? <ul><li>Current Web: web of documents (html pages) </li></ul><ul><li>Semantic Web: web of data/things/concepts </li></ul><ul><ul><li>What is a Thing/Concept? It can be any thing in the world - a movie, a person, a disease, a location… </li></ul></ul><ul><ul><li>Machines will be able to understand the concept behind a html page. </li></ul></ul><ul><ul><ul><li>This page is talking about ‘ Barack Obama ’, He is a ‘ Person ’ and he is the ‘ President of USA ’ ? </li></ul></ul></ul>
  3. 3. How can we build Semantic Web? <ul><li>A Straight forward way is to annotate all the data on the web. </li></ul><ul><li>Note: The semantics we are talking here is different from the semantics in NLP or NER perspective . </li></ul><ul><li>How do we annotate (explicitly add metadata) web? </li></ul><ul><ul><li>Tags (simple but ambiguous, non-extensible) </li></ul></ul><ul><ul><li>Microformats (limited to a set of pre-defined vocabularies) </li></ul></ul><ul><ul><li>RDF (extensible, decentralized etc.) </li></ul></ul>
  4. 4. RDF <ul><li>RDF – Resource Description Framework </li></ul><ul><li>What is RDF? </li></ul><ul><ul><li>A language to describe Resources. </li></ul></ul><ul><li>What is a Resource? </li></ul><ul><ul><li>Any thing/concept in the world: a book, a movie, a person etc. </li></ul></ul><ul><ul><li>must be identified by a universally unique name (URI) </li></ul></ul><ul><li>What can we do with it? </li></ul><ul><ul><li>Unambiguously describe a concept/resource/thing </li></ul></ul><ul><ul><li>Specify how these resources are related </li></ul></ul><ul><ul><li>Do basic inferencing </li></ul></ul>
  5. 5. Where does it fit in Semantic Web Stack?
  6. 6. RDF – in detail <ul><li>Knowledge is represented in RDF as a set of Triples . </li></ul><ul><li>What is a Triple? </li></ul><ul><ul><li>Triple in RDF is analogous a sentence in natural language. </li></ul></ul><ul><ul><li>Every NL sentence contains 3 parts: subject, predicate & object. Similar is of the form <subject, predicate, object> and the purpose in RDF . </li></ul></ul><ul><ul><li>Example: </li></ul></ul><ul><ul><li>NL Sentence: Obama is the president of USA </li></ul></ul><ul><ul><li>RDF Triple: <URI1# Obama > <URI2# presidentOf > <URI3# USA > </li></ul></ul><ul><ul><li>Here subject & predicate must be resources (i.e they are things/concepts and must have a URI) and the object can be a resource or a literal (simple value. Eg: ‘10’) </li></ul></ul>subject predicate object
  7. 7. RDF as a Graph <ul><li>An RDF document is best visualized as a graph </li></ul><ul><li>Graph notations: </li></ul><ul><ul><li>Resources (URI) </li></ul></ul><ul><ul><li>Literals (simple values) </li></ul></ul><ul><ul><li>Properties </li></ul></ul><ul><li>Set of triples represented as a graph </li></ul>URI1#Obama URI2#USA 45 URI3#presidentOf URI3#age URI4#Person rdf:type
  8. 8. RDF – Serialization Formats <ul><li>An RDF graph is a logical model, we need to serialize in some format. </li></ul><ul><li>What serialization Formats does RDF support? </li></ul><ul><ul><li>RDF/XML (XML based syntax, popular) </li></ul></ul><ul><ul><li>NTriple (each triple is represented in one line) </li></ul></ul><ul><ul><li>Turtle etc. </li></ul></ul><ul><ul><li>N3 </li></ul></ul><ul><li>Example: </li></ul><ul><ul><li>RDF/XML format: </li></ul></ul><ul><ul><ul><li><rdf:Description rdf:about=“URI1#Obama&quot;> </li></ul></ul></ul><ul><ul><ul><li><rdf:type rdf:resource=“URI4#Person&quot; /> </li></ul></ul></ul><ul><ul><ul><li><URI2#isPresidentOf rdf:resource=“URI3#USA&quot; /> </li></ul></ul></ul><ul><ul><ul><li></rdf:Description> </li></ul></ul></ul><ul><ul><li>NTriple format: </li></ul></ul><ul><ul><ul><li><URI1#Obama> <URI2#presidentOf> <URI3#USA> </li></ul></ul></ul><ul><ul><ul><li><URI1#Obama> <> < URI4#Person> </li></ul></ul></ul>
  9. 9. RDFS <ul><li>RDFS: RDF Schema </li></ul><ul><li>RDF Schema defines the basic vocabulary that can be used in RDF document to describe resources. </li></ul><ul><li>What exactly can we define: </li></ul><ul><ul><li>Classes </li></ul></ul><ul><ul><li>Properties </li></ul></ul><ul><ul><li>Hierarchies </li></ul></ul><ul><ul><li>Collections </li></ul></ul><ul><ul><li>Reification </li></ul></ul><ul><ul><li>Documentation </li></ul></ul><ul><ul><li>Basic Entailments( subclass, subproperty) needed for reasoning </li></ul></ul>
  10. 10. <ul><li>RDF Class is defined as: </li></ul><ul><li><rdfs:Class rdf:ID=“someURI#Book”> </li></ul><ul><li><rdfs:subClassOf rdf:resource=“someURI#FictionBook”/> </li></ul><ul><li></rdfs:Class> </li></ul>RDFS Class Book FictionBook rdfs:subClassOf
  11. 11. <ul><li>Every property in RDF has : </li></ul><ul><li>Domain - Resource, which this property is part of </li></ul><ul><li>Range - Resource/Literal that is value of this property </li></ul><ul><ul><li><rdfs:Property rdf:ID=“ URI1#isPresidentOf ”> </li></ul></ul><ul><li> <rdfs:domain rdf:resource=“ URI4#Person ”/> </li></ul><ul><li> <rdfs:range rdf:resource=“ URI5#Location ”/> </li></ul><ul><li> </rdfs:Property> </li></ul>RDFS Property URI1#isPresidentOf URI4#Person rdfs:domain rdfs:range URI5#Location
  12. 12. <ul><li>Class Entailments: </li></ul><ul><ul><li><Animals rdfs:subClassof LivingBeings> </li></ul></ul><ul><ul><li><Cats rdfs:subClassOf Animals> </li></ul></ul><ul><ul><li>=> </li></ul></ul><ul><ul><li><Cats rdfs:subClassOf LivingBeings> </li></ul></ul><ul><li>Property Entailments: </li></ul><ul><ul><li><ParentOf rdfs: subPropertyOf AncestorOf> </li></ul></ul><ul><ul><li><Fatherof rdfs: subPropertyOf ParentOf> </li></ul></ul><ul><ul><li>=> </li></ul></ul><ul><ul><li> <FatherOf rdfs: subPropertyOf AncestorOf> </li></ul></ul>RDFS Entailments
  13. 13. <ul><li>Reification: </li></ul><ul><ul><li>To make statements about statements </li></ul></ul><ul><ul><li>Eg: John said “Obama is the president of USA” </li></ul></ul><ul><li>containers: </li></ul><ul><ul><li>Bags - collection of resources, unordered </li></ul></ul><ul><ul><li>Sequences - collection of resources, ordered </li></ul></ul><ul><ul><li>Alt - only one resource of out of collection </li></ul></ul><ul><li>rdf:seeAlso </li></ul><ul><ul><li>Used to point extra information about the subject of this property </li></ul></ul>Reification & others…
  14. 14. <ul><li>RSS 1.0 (RDF Site Summary) </li></ul><ul><li>RDFa (to add rdf metadata to html/xhtml pages – annotate the Web) </li></ul><ul><li>OWL (Successor of RDFS) </li></ul>Where is RDF currently used?
  15. 15. <ul><li>Importance of RDF in semantic web </li></ul><ul><li>RDF – syntax, graph model, serializations, examples </li></ul><ul><li>RDFS </li></ul>Recap
  16. 16. <ul><li>Specs: </li></ul><ul><ul><li>RDFS W3C Spec: </li></ul></ul><ul><ul><li>RDF W3C Spec: </li></ul></ul><ul><li>Tutorials: </li></ul><ul><ul><li>Semantic web: </li></ul></ul><ul><ul><li>RDF Intro: </li></ul></ul><ul><ul><li>RDF in Detail: </li></ul></ul><ul><li>Not enough? Then check this: </li></ul>Resources
  17. 17. <ul><li>Q&A </li></ul>