1 / 23

Introduction

Introduction to the RDF Data Model Sources: Ian Davis ( Talis ), Prof. Praveen Rao (UMKC ), http :// rdfabout.com /. Introduction. RDF stands for Resource D escription Framework Is a data model (like XML) W3C spec: http://www.w3.org/RDF/ 1 st spec in 1999, current standard from 2004

luyu
Download Presentation

Introduction

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction to the RDF Data ModelSources:Ian Davis(Talis), Prof. Praveen Rao (UMKC),http://rdfabout.com/

  2. Introduction • RDF stands for Resource Description Framework • Is a data model (like XML) • W3C spec: http://www.w3.org/RDF/ • 1st spec in 1999, current standard from 2004 • Companies developing RDF storage solutions • AllegroGraph, Virtuoso, BigOWLIM, Garlik 4store/5store, Mulgara, etc. • Companies managing data using RDF model • BBC, Google, Yahoo!, Best Buy, Newsweek, Pfizer, etc. • http://data.nytimes.com/home/about.html • To allow anyone to say anything about anything

  3. The Relational Model

  4. RDF Data Model • RDF represents data as (s,p,o) triples • s means subject, p means predicate or property, o means object • Can represent any assertion • An assertion may or may not be a fact • Together, triples form a directed, labeled graph

  5. Example

  6. Example • Relationship between entities/resources

  7. Global Naming • URIs (!= URLs) provide the ability to identify things globally and uniquely • RDF names things/resources with URIs • Can name infinite number of things using URIs • Can use the fragment identifier ‘#’ • Create different URIs for different things • If two users refer to the same URI, then they are talking about the same thing

  8. RDF Graphs • Can have named things, literals (text or numeric values), named relations/properties, unnamed things…

  9. RDF Graphs • Subjects can be URIs or unnamed (a.k.a blank nodes) • Predicates are URIs • Objects can be URIs, literals, or unnamed

  10. Merging RDF Graphs • Graphs from different sources can be merged • Nodes with the same URI are considered identical • Blank nodes can be kept separate • Any RDF graph can be merged with any other RDF graph • Any number of RDF graphs can be merged

  11. Example (1/2)

  12. Example (2/2)

  13. RDF vs. RDBMS • Relational (RDBMS) model • Separate databases with own schemas • Table row: assertion that relation is true for values in row • SELECT query: filter on assertions for given conditions • A relation is true (row exists) or false • RDF model • (Semantic) Web: a single giant graph database • s, p, o identified uniquely with URIs across the web • A relation is true (triple exists) or is unknown • RDF more like OO model than RDBMS

  14. RDF vs. RDBMS example RDF triples expressed as binary relations in RDBMS

  15. RDF vs XML • Not another XML format • XML means • Angle-brackets-slashes notation (think HTML) • Data model: tree (DAG) with different nodes (elements, attributes) • RDF means • Notation: RDF/XML, Turtle, N-triples etc. • Data model: directed graph, uses URIs

  16. RDF Formats • All are plain-text serialization formats • RDF/XML: XML notation • Notation3 (N3): superset of TTL, beyond RDF • Turtle (TTL): subset of N3, used only for RDF • N-Triples (NT), N-Quads (NQ): subset of TTL and N3 • Simpler/minimal • Easier to parse/generate

  17. Turtle • Terse RDF Triple Language (TTL) • Triples are terminated with a full stop • URIs are enclosed in angle brackets (< and >) • Literals are enclosed by double quotes • <http://example.com/thing> <http://example.com/relation> “Hello World" . • Use @PREFIX to shorten URIs • @PREFIX ex: <http://example.com/> . • ex:thingex:relation “Hello World" .

  18. Turtle: Same Subject @PREFIX ex: <http://example.com/> . ex:thingex:relation "Some Text" . ex:thingex:otherrelationex:otherthing . @PREFIX ex: <http://example.com/> . ex:thingex:relation "Some Text" ; ex:otherrelationex:otherthing .

  19. Turtle: Same Subject-Predicate @PREFIX ex: <http://example.com/> . ex:thingex:relation "SomeText" . ex:thingex:relationex:otherthing . @PREFIX ex: <http://example.com/> . ex:thingex:relation"Some Text" , ex:otherthing .

  20. Turtle: Blank Node @PREFIX ex: <http://example.com/> . ex:thingex:relation _:a . _:a ex:property "foo" . _:a ex:property "bar” . • Use _: followed by a label • ‘a’ is the label – valid only within that particular RDF document • If _a: appears in a different document, it would refer to a different node

  21. Turtle: Literals @PREFIX ex: <http://example.com/> . ex:thingex:relation "Hello"@en . ex:thingex:relation "Bonjour"@fr . • Literals can have a language • Literals can have a datatype • But not both! @PREFIX ex: <http://example.com/> . ex:thingex:relation "49"^^<http://www.w3.org/2001/XMLSchema#int> .

  22. Vendors example Vendor 1: vendor1:productX dc:title "Cool-O-Matic" . vendor1:productX retail:price "$50.75" . vendor1:productX vendor1:partno "TTK583" . vendor1:productY dc:title "Fluffertron" . vendor1:productY retail:price "$26.50" . vendor1:productY vendor1:partno "AAL132" . Vendor 2: vendor2:product1 dc:title "Can Closer" . vendor2:product2 dc:title "Dust Unbuster" . Reviewer 1: vendor1:productX dc:description "This product is good buy!" . Reviewer 2: vendor2:product2 dc:description "Who needs something to unbust dust? A dust buster would be a better idea, and I wish they posted the price." . vendor2:product2 review:ratingreview:Excellent .

  23. Links • Government (US, UK), Wikipedia, World Bank, U.S. Census, U.S. SEC, NYTimes, etc. • http://www.w3.org/wiki/DataSetRDFDumps • http://data.nytimes.com/ • http://data.gov.uk/ • http://librdf.org/parse • http://www.rdfabout.com/demo/validator/

More Related