Understanding RDF The Resource Description Framework in Context Dan Brickley  ILRT, University of Bristol [email_address]
Outline RDF overview (origin, aims…) target applications components of RDF RDF data model RDF syntax (in XML) RDF vocabularies (schemas) current status issues and challenges
RDF origins W3C Metadata Activity 1997-1999 PICS (Internet content selection) Warwick Framework / Dublin Core XML (XML Data, Channels etc) MCF (Apple, Netscape) PICS-NG Working Group  URI specification for Web identifiers
RDF - architectural aims   W3C Metadata needs: PICS,Dsig, DC Defines a convention for applications that exchange metadata on the Web XML used for ‘serialisation syntax’ Vocabulary semantics defined by communities of expertise, not W3C Fine-grained mixing of diverse metadata
What is RDF, really?  “ R esource  D escription  F ramework” Resources : things that can be named with URIs  (http, urn, doi...) Description : statements about the  properties  of these resources Framework : a common model for diversity Builds on: URI  for identifiers, XML for syntax (file format) URI: Uniform Resource Identifiers XML: Extensible Markup Language Self Describing! - a framework for describing resources...
Target applications resource discovery, indexing,   cataloging   privacy, preferences, user profiles sitemaps / web collections content rating, filtering, trust (Dsig/PICS) intellectual property rights... What can these diverse applications have in common?
Syntax: RDF uses XML ( What does RDF add to XML?) <XML> Extensible Markup Language </XML> A simple universal file format RDF adds interpretation rules:  what does this data tell us?  XML/RDF uses URIs to unambiguously name vocabularies When we see XML using the  RDF syntax, we can interpret the markup as making  statements  about the named  properties  of Web  resources .   Even if we’ve never heard of that vocabulary...
RDF / Dublin Core example… <?xml version=&quot;1.0&quot;?> <rdf:RDF  xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; xmlns: dc =&quot; http://purl.org/dc/elements/1.0/ ” > <rdf:Description about=&quot; http://docs ” > < dc:creator >   Joe Smith   </ dc:creator > </rdf:Description> </rdf:RDF>
RDF Model = Warwick Framework ? No single vocabulary can describe it all... Dublin Core (common ‘discovery’ core) IMS Metadata (educational content) V-Card (data about people) Classification systems (thesauri etc.) Industry specific (eg. XMLNews.org) (your metadata application here…)
RDF data model - example
RDF data model: details... R1 R2 Nodes are  resources  connected by named  properties P1 R1 “ foo” The degenerate case is an arc  terminating in a fixed value P1 R1 R2 R3 R6 R4 An  RDF description  consists of a directed graph of  arbitrary complexity R7 R5 R8 P1 P2 P3 P4 P5 P6 P7
RDF model: one simple idea... (the same idea that underpins the Web) “ The most fundamental specification of Web architecture, while one of the simpler, is that of the Universal Resource Identifier, or URI. The principle that anything, absolutely anything, ‘on the Web’ should identified distinctly is core.”  (Tim Berners-Lee) RDF aims to build a Web of overlapping metadata vocabularies We use URIs to define metadata vocabularies We build ‘graphs’ using these vocabularies to say things...
The common model:  Why use “Nodes and Arcs”? Arbitrarily extensible (just add more arcs!) ‘ Node and arc’ model can use multiple vocabularies, distinguished by URI We can disagree about semantics, but share infrastructure (syntax, query, editors) URIs create market for data merging, aggregation, annotation and filtering services
RDF Schema Specification RDF schemas are Web resources (and have URIs) and can be described using RDF RDF  properties  (size, colour, price, creator...) describe resources and their relationships Resources are grouped into  classes , which can be organised hierarchically  Properties ‘make sense’ in context of certain classes of Web resource, eg. ‘sizeInBytes’
RDF Schema: example
RDF Schema: extensibility properties and classes in an RDF schema have URIs Things with URIs can be described in RDF A foundation for mapping between vocabularies http://mymetadata.vocab.org/author --- rdfs:subPropertyOf ---> http://purl.org/dc/elements/1.0/Creator
Current Status Model and Syntax is now W3C Recommendation RDF Schema is a Proposed Recommendation RDF Query - likely future work Tools are becoming available...
Getting started… W3C Site: http://www.w3.org/RDF/  RDF-DEV developers list http://www.ilrt.bris.ac.uk/discovery/rdf-dev/ Several RDF parsers now available (Perl, Java...) Netscape / Mozilla RDF implementation  http://www.mozilla.org/rdf/doc/ Applications are starting to appear...
For discussion...  What is the URI of a  person ?  Of a  museum artifact ? Of a Web  site  or  page  or alternate-language  version  of that page?  E-commerce will require unambiguity. Progress with URIs needed  - RDF alone can’t fix the Web...

Understanding RDF: the Resource Description Framework in Context (1999)

  • 1.
    Understanding RDF TheResource Description Framework in Context Dan Brickley ILRT, University of Bristol [email_address]
  • 2.
    Outline RDF overview(origin, aims…) target applications components of RDF RDF data model RDF syntax (in XML) RDF vocabularies (schemas) current status issues and challenges
  • 3.
    RDF origins W3CMetadata Activity 1997-1999 PICS (Internet content selection) Warwick Framework / Dublin Core XML (XML Data, Channels etc) MCF (Apple, Netscape) PICS-NG Working Group URI specification for Web identifiers
  • 4.
    RDF - architecturalaims W3C Metadata needs: PICS,Dsig, DC Defines a convention for applications that exchange metadata on the Web XML used for ‘serialisation syntax’ Vocabulary semantics defined by communities of expertise, not W3C Fine-grained mixing of diverse metadata
  • 5.
    What is RDF,really? “ R esource D escription F ramework” Resources : things that can be named with URIs (http, urn, doi...) Description : statements about the properties of these resources Framework : a common model for diversity Builds on: URI for identifiers, XML for syntax (file format) URI: Uniform Resource Identifiers XML: Extensible Markup Language Self Describing! - a framework for describing resources...
  • 6.
    Target applications resourcediscovery, indexing, cataloging privacy, preferences, user profiles sitemaps / web collections content rating, filtering, trust (Dsig/PICS) intellectual property rights... What can these diverse applications have in common?
  • 7.
    Syntax: RDF usesXML ( What does RDF add to XML?) <XML> Extensible Markup Language </XML> A simple universal file format RDF adds interpretation rules: what does this data tell us? XML/RDF uses URIs to unambiguously name vocabularies When we see XML using the RDF syntax, we can interpret the markup as making statements about the named properties of Web resources . Even if we’ve never heard of that vocabulary...
  • 8.
    RDF / DublinCore example… <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; xmlns: dc =&quot; http://purl.org/dc/elements/1.0/ ” > <rdf:Description about=&quot; http://docs ” > < dc:creator > Joe Smith </ dc:creator > </rdf:Description> </rdf:RDF>
  • 9.
    RDF Model =Warwick Framework ? No single vocabulary can describe it all... Dublin Core (common ‘discovery’ core) IMS Metadata (educational content) V-Card (data about people) Classification systems (thesauri etc.) Industry specific (eg. XMLNews.org) (your metadata application here…)
  • 10.
    RDF data model- example
  • 11.
    RDF data model:details... R1 R2 Nodes are resources connected by named properties P1 R1 “ foo” The degenerate case is an arc terminating in a fixed value P1 R1 R2 R3 R6 R4 An RDF description consists of a directed graph of arbitrary complexity R7 R5 R8 P1 P2 P3 P4 P5 P6 P7
  • 12.
    RDF model: onesimple idea... (the same idea that underpins the Web) “ The most fundamental specification of Web architecture, while one of the simpler, is that of the Universal Resource Identifier, or URI. The principle that anything, absolutely anything, ‘on the Web’ should identified distinctly is core.” (Tim Berners-Lee) RDF aims to build a Web of overlapping metadata vocabularies We use URIs to define metadata vocabularies We build ‘graphs’ using these vocabularies to say things...
  • 13.
    The common model: Why use “Nodes and Arcs”? Arbitrarily extensible (just add more arcs!) ‘ Node and arc’ model can use multiple vocabularies, distinguished by URI We can disagree about semantics, but share infrastructure (syntax, query, editors) URIs create market for data merging, aggregation, annotation and filtering services
  • 14.
    RDF Schema SpecificationRDF schemas are Web resources (and have URIs) and can be described using RDF RDF properties (size, colour, price, creator...) describe resources and their relationships Resources are grouped into classes , which can be organised hierarchically Properties ‘make sense’ in context of certain classes of Web resource, eg. ‘sizeInBytes’
  • 15.
  • 16.
    RDF Schema: extensibilityproperties and classes in an RDF schema have URIs Things with URIs can be described in RDF A foundation for mapping between vocabularies http://mymetadata.vocab.org/author --- rdfs:subPropertyOf ---> http://purl.org/dc/elements/1.0/Creator
  • 17.
    Current Status Modeland Syntax is now W3C Recommendation RDF Schema is a Proposed Recommendation RDF Query - likely future work Tools are becoming available...
  • 18.
    Getting started… W3CSite: http://www.w3.org/RDF/ RDF-DEV developers list http://www.ilrt.bris.ac.uk/discovery/rdf-dev/ Several RDF parsers now available (Perl, Java...) Netscape / Mozilla RDF implementation http://www.mozilla.org/rdf/doc/ Applications are starting to appear...
  • 19.
    For discussion... What is the URI of a person ? Of a museum artifact ? Of a Web site or page or alternate-language version of that page? E-commerce will require unambiguity. Progress with URIs needed - RDF alone can’t fix the Web...

Editor's Notes

  • #2 structured babel Often hear talk about prospect of turning the Web into a &apos;giant database&apos;, and that XML is the technology that will enable this. RDF suggests that the crucial technology here is one we&apos;ve had since the beginning: a universal addressing system, the URI. Analogy: relational database technology is now a desktop commonplace. How do we hook together different tables of information describing different classes of object? Uniquely identifying keys. Simple SQL example: select firstname, surname, street from Person, Address where WorksAt.person_id = Person.person_id and WorksAt.address_id = Address.address_id person_34 --- worksAt---&gt; building_101 -----firstname---&gt; &amp;quot;Dan&amp;quot; -----surname----&gt; &amp;quot;Brickley&amp;quot; building_101 ---street--&gt; &amp;quot;Berkeley Square&amp;quot; Fragmented data is joined through use of reliable identifiers, in this cases, for people and their various addresses. RDF and the Web does exactly the same thing, but on a global scale. The enabling technology here is not a file format but a convention for uniquely identifying objects: the URI. Goals / The Semantic Web promise: data aggregation on a massive scale. RDF&apos;s graph data model provides a simple formalism for aggregating data from diverse sources. Simple overlay one graph on top of another. URIs provide a global framework for joining together diverse collections of metadata. Open Issues / challenges /dangers: what is the URI of a person? Of a museum artifact? Of an idea? Of a Web site versus a Web page versus a content or language negotiated rendering of that Web page? Dangers: &apos;category mistakes&apos; (Ryle 1945) Inspecting URIs: can we tell from inspecting the URI &apos;http://www.mozilla.org/&apos; whether it refers to a Web page or a Web site? These are two very different objects, each with different properties. Danger of ambiguity: if I decide to use my home page URI or my email address to represent myself in metadata, this may confuse others. If we get this wrong, confusion follows: does &apos;http://purl.org/net/danbri/&apos; have a size-in-bytes or a weight-in-pounds? Solution: Inscrutable URIs? uuid:342342-2342342-2342342-2342