Presentation on theme: "Dr. Alexandra I. Cristea CS 253: Topics in Database Systems: C3."— Presentation transcript:
Dr. Alexandra I. Cristea CS 253: Topics in Database Systems: C3
2 Previously we looked at: –XML and its query language(s) Next: –RDF and its query languages
4 RDF Definition The Resource Description Framework (RDF) is a W3C standard for describing resources on the Web. RDF is a framework for describing Web resources, –e.g., title, author, modification date, content, and copyright information of a Web page.
5 What (else) is RDF? RDF provides a model for data, and a syntax so that independent parties can exchange and use it RDF is designed to be read and understood by computers RDF is not designed for being displayed to people RDF (can be) written in XML RDF is a part of the W3C's Semantic Web Activity RDF is a W3C Recommendation (so a standard!)
6 RDF Usage Examples Describing properties for shopping items, such as price and availability Describing time schedules for web events Describing information about web pages, such as content, author, created and modified date Describing content and rating for web pictures Describing content for search engines Describing electronic libraries
7 RDF is Designed to be Read by Computers RDF was designed to provide a common way to describe information so it can be read and understood by computer applications. RDF descriptions are not designed to be displayed on the web.
8 RDF can be Written in XML RDF documents can be written in XML. XML language : RDF/XML. information exchange between –different types of computers –types of operating systems and –application languages.
9 RDF and "The Semantic Web" The RDF language is a part of the W3C's Semantic Web Activity. W3C's "Semantic Web Vision" is a future where: –Web information has exact meaning –Web information can be understood and processed by computers –Computers can integrate information from the web
10 RDF Statements RDF is built of Statement s known as the –subject, –predicate and –object (of a Statement).
11 RDF Statements Subject Predicate Object
12 Examples Let's look at some example statements to get a better understanding: –Statement: "The author of is Jan Egil Refsnes". –Statement: "The homepage of is
13 Examples – cont. Statement: "The author of is Jan Egil Refsnes". –The subject of the statement above is: –The predicate is: author –The object is: Jan Egil Refsnes Statement: "The homepage of is –The subject of the statement above is: –The predicate is: homepage –The object is:
15 RDF Resource, Property, and Property Value RDF identifies things using Web identifiers (URIs), and describes resources with properties and property values. A Resource is anything that can have a URI, –such as "http://www.w3schools.com/RDF" A Property is a Resource that has a name, –such as "author" or "homepage" A Property value is the value of a Property, –such as "Jan Egil Refsnes" or "http://www.w3schools.com" (note that a property value can be another resource)
16 RDF Statements Subject Predicate author Resource Property Can be another resource !! Object Jan Egil Refsnes Property Value
18 RDF original purpose & the metadata originally created in 1999 as a standard on top of XML, for encoding metadata –literally, data about data. –e.g., who authored a web page, what date a blog entry was published, etc., –secondary info
19 So, RDF.. Different world view Triples (instead of pairs) More natural? This is the concept … how to implement it?
21 Example RDF/XML Resource Property Jan Egil Refsnes Property value
22 RDF/XML Is not the only solution, but the recommended one No one-to-one mapping –RDF doesnt have ordering –XML does! –Serialization of a graph! –So is this the price to pay? Others: Notation 3 Turtle
23 RDF namespace
24 Other namespaces
25 RDF Online Validator W3C's RDF Validation Service is useful when learning RDF. Here you can experiment with RDF files.W3C's RDF Validation Service The online RDF Validator parses your RDF document, checks your syntax, and generates tabular and graphical views of your RDF document. Sample result: the triple(s):
26 The Element is the root element of an RDF document. It defines the XML document to be an RDF document. It also contains a reference to the RDF namespace... Description goes here
27 The Element The element identifies a resource with the about attribute. The element contains elements that describe the resource. Bob Dylan USA Columbia
28 A Resource and its Description …...
29 Another example TitleArtistCountryCompanyPriceYear Empire BurlesqueBob DylanUSAColumbia Hide your heartBonnie TylerUKCBS Records
30 Bob Dylan USA Columbia Bonnie Tyler UK CBS Records RDF Declaration
31 Properties as Attributes The property elements can also be defined as attributes (instead of elements): Can you identify the triples here? (resource, property, value)
32 Properties as Resources The property elements can also be defined as resources:...
33 Compare: properties as elements Bob Dylan attributes resources
34 RDF Containers RDF containers are used to describe group of things. e.g, to list the authors of a book or to list the members in a band. The following RDF elements are used to describe such groups:,, and.
35 RDF Bag The element is used to describe a list of values that is intended to be unordered. The element may contain duplicate values. John Paul George Ringo
36 Student example
37 RDF Bag
38 The Element The element is used to describe a list of values that is intended to be ordered (For example, in alphabetical order). The element may contain duplicate values. George John Paul Ringo
39 The Element The element is used to describe a list of alternative values (the user can select only one of the values). CD Record Tape
40 RDF Alt
41 The rdf:parseType="Collection" Attribute container cannot be closed. other members are allowed. RDF collections are used to describe group that contains ONLY the specified members. A collection is described by the attribute rdf:parseType="Collection".
42 Collection attribute example
43 Collection: a graphical representation
44 RDF Reification Statements about statements –E.g., record info about when statements were made, who made them, etc. ("provenance" information).
45 Example example.com could record the fact that: John Smith made the original statement about the tent's weight By: –original statement URIref (exproducts:triple12345), describing it w. reification, then –adding an additional statement that exproducts:triple12345 was written by John Smith (w. URIref for John Smith)
46 Example figure: reification original statement John
47 RDF Schema and Application Classes RDF describes resources with classes, properties, and values RDF needs to define application- specific classes and properties –with extensions to RDF One such extension is RDF Schema
48 RDF Schema (RDFS) does not provide actual application- specific classes and properties. … but framework to describe them Classes ~ OO programming languages. Resources: –instances of classes, or –subclasses of classes.
49 RDFS Example The following example demonstrates some of the RDFS facilities: In the example above, the resource "horse" is a subclass of the class "animal".
50 Example of class structure
51 Multiple inheritance!
52 Example Abbreviated Since an RDFS class is an RDF resource we can abbreviate it using rdfs:Class instead of rdf:Description, and drop the rdf:type information
53 Original Class declaration
54 Example Class Abbreviated
55 Original and abbreviated class So we replace: with
56 RDF Conclusion We have learned: –RDF definition –Usage scenarios, basics –Existence of RDFS –Comparison w. XML