Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Introduction to the RDF Data Model Sources: Ian Davis (Talis), Prof. Praveen Rao (UMKC), http://rdfabout.com/ 1 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 2 Represent information about resources in the WWW and the relationships b/w them Designed to represent knowledge in a distributed world Particularly concerned with meaning 2 The Relational Model 3 Relation = table Tuple = row Attribute = column 3 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 4 Example 5 Example Relationship between entities/resources 6 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 7 URIs you see in RDF documents are merely verbose names for entities, nothing more 7 RDF Graphs Can have named things, literals (text or numeric values), named relations/properties, unnamed things… 8 As a set of statements (triples) vs. as a graph 8 RDF Graphs Subjects can be URIs or unnamed (a.k.a blank nodes) Predicates are URIs Objects can be URIs, literals, or unnamed 9 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 10 Example (1/2) 11 Example (2/2) 12 12 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 13 RDF vs. RDBMS example foaf:name(predicate/property) subject object _:personA “John” _:personB “Jane” _:personC “Fred” 14 RDF triples expressed as binary relations in RDBMS 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 15 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 16 All (other than RDF/XML) are non-XML and are designed with human-readability in mind S,p,o,c 16 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:thing ex:relation “Hello World" . 17 RDF/XML, notation3, triples, turtle, ntriples, nquads 17 Turtle: Same Subject 18 @PREFIX ex: <http://example.com/> . ex:thing ex:relation "Some Text" ; ex:otherrelation ex:otherthing . @PREFIX ex: <http://example.com/> . ex:thing ex:relation "Some Text" . ex:thing ex:otherrelation ex:otherthing . Turtle: Same Subject-Predicate 19 @PREFIX ex: <http://example.com/> . ex:thing ex:relation "Some Text" . ex:thing ex:relation ex:otherthing . @PREFIX ex: <http://example.com/> . ex:thing ex:relation "Some Text" , ex:otherthing . Turtle: Blank Node 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 20 @PREFIX ex: <http://example.com/> . ex:thing ex:relation _:a . _:a ex:property "foo" . _:a ex:property "bar” . Turtle: Literals Literals can have a language Literals can have a datatype But not both! 21 @PREFIX ex: <http://example.com/> . ex:thing ex:relation "Hello"@en . ex:thing ex:relation "Bonjour"@fr . @PREFIX ex: <http://example.com/> . ex:thing ex:relation "49"^^<http://www.w3.org/2001/XMLSchema#int> . 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:rating review:Excellent . 22 RDF allows the vendors and reviewers to agree on what they need to agree on, without forcing anyone to use one particular vocabulary. Unconstraining while allowing the application to relate information together. Interoperability: v1’s format is interoperable with v2 even though didn’t have to agree on common meanings 22 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/ 23
Compartilhar