800 likes | 1.03k Views
COMP 691B. RDF. Lei Cao; Zhen Tan; Liqun Li; Shengtian Yang; Yinghong Chen. Topics. 1. Introduction 2. RDF Model 3. RDF Syntax 4. RDF Additional Capabilities 5. RDF Schema, Application & Future. CAO. What is RDF
E N D
COMP 691B RDF Lei Cao; Zhen Tan; Liqun Li; Shengtian Yang; Yinghong Chen
Topics 1. Introduction 2. RDF Model 3. RDF Syntax 4. RDF Additional Capabilities 5. RDF Schema, Application & Future
CAO What is RDF RDF - the Resource Description Framework - is a foundation for processing metadata; it provides interoperability between applications that exchange machine-understandable information on the Web. RDF is one of the 1st applications of XML to ship RDF with digital signatures will be key to building the "Web of Trust" for electronic commerce, collaboration, and other applications. RDF is application that more than 40 content providers have planned to deploy, including Netscape, CNN, AltaVista and Amazon.
History of RDF No one individual or organization invented RDF It is very much a collaborative design effort. RDF started as an extension of the PICS (Platform for Internet Content Selection) content description technology. It is now also drawing upon the XML design as well as technology submissions, such as Microsoft's XML-Data paper, SiteMap proposals, and the Dublin Core/Warwick Framework have also influenced the RDF design.
RDF Introduction RDF is about metadata for Web resources, by resources we mean any object that can be found on the Web. RDF is a means for developing tools and applications using a common syntax for describing Web resources. The RDF data model represents the properties of a resource and the values of these properties. The model is syntax independent but can be expressed in XML, and the specification uses XML as its syntax for encoding metadata.
RDF Introduction (2.) RDF provides the syntax for interworking applications to recognize and exchange metadata for Web objects. RDF is a means to express properties of a resource and to associate values with these properties. To ensure properties have unique names, and to allow for reference to an authority for the meaning and usage of the Property name, RDF makes use of the Namespace mechanism, which is also used in XML.
Why should I be interested in RDF? • RDF provides the following features: • interoperability of metadata • machine understandable semantics for metadata • better precision in resource discovery than full text search • proofing applications as schemas evolve • Further development will enable RDF to provide: • a uniform query capability for resource discovery • a processing rules language for automated decision-making • about Web resources • language for retrieving metadata from third parties
What Is RDF Like? RDF data consists of nodes and attached attribute/value pairs. Nodes can be any web resources (pages, servers, URI), even other instances of metadata. Attributes are named properties of the nodes, and their values are either atomic (text strings, numbers, etc.) or other resources or metadata instances. This mechanism allows us to build labeled directed graphs. The essence of RDF is the model of nodes, attributes, and their values.
What is Metadata? Metadata is "data about data" (for example, a library catalog is metadata = describes publications) or "information describing content." In the context of RDF, metadata is "data describing web resources". RDF uses XML as the encoding syntax for the metadata. The resources being described by RDF are anything that can be named via a URI. The broad goal of RDF is to define a mechanism for describing resources that makes no assumptions about a particular application domain, nor defines the semantics of any application domain.
Why users want metadata Having trouble with "information overload" you should look into metadata, as this will give more control over content. A big problem with HTML, is that there are too many different interfaces to metadata information. On one page, an author might use the following: <meta name="Author" content="Janus Boye"> and other author, that wanted to display the same information, could use: <meta name="AuthorName" content="Janus Boye"> This shows some of the current problems, that search engines are facing.
RDF Features: • Resource Description Framework, as its name implies, is a framework for • describing and interchanging metadata. It is built on the following rules. • A Resource is anything that can have a URI; this includes all the Web's • pages, as well as individual elements of an XML document. • A Property is a Resource that has a name and can be used as a property, • for example Author or Title. • A Statement consists of the combination of a Resource, a Property, and • a value. These parts are known as the 'subject', 'predicate' and 'object' • of a Statement.
Example: • There is a straightforward method for expressing these abstract Properties in XML, • For example: • <rdf:Description about='http://www.textuality.com/RDF/Why-RDF.html'> • <Author>Tim Bray</Author> • <Home-Page rdf:resource='http://www.textuality.com' /> • </rdf:Description>
RDF has the following characteristics: Independence Since a Property is a resource, any independent organization (or even person) can invent them. Interchange RDF Statements can be converted into XML, they are easy for us to interchange. Scalability RDF statements are three-part records (Resource, Property, value), so they are easy to handle and look things up by, even in large numbers.
Properties are Resources Properties can have their own properties and can be found and manipulated like any other Resource. Values Can Be Resources Most web pages will have a property named Home-Page which points at the home page of their site. So the values of properties, which obviously have to include things like title and author's name, also have to include Resources. Statements Can Be Resources Statements can also have properties.
PICS and RDF PICS is a mechanism for communicating ratings of web pages from a server to clients; these ratings, or rating labels, contain information about the content of web pages. Different organizations could rate content based on their own objectives and values, and users. One of the requirements for the RDF design is that it be able to express everything that a PICS-1.1 (Platform for Internet Content Selection) label can express, and that it be possible to automatically translate PICS-1.1 labels into RDF format without loss of information.
RDF Basic & RDF Model • Common base for metadata on the WWW • Basic knowledge representation (KR) • Three representations: graph, triples, XML • Triples: (predicate, subject, object) • Facts about (subject) WWW resources and other things • Data types • Resources: Identified by URI • Literals: Text strings including XML markup • Properties: Subset of Resources • Types: Subset of Resources • Reification for statements about statements
TAN Model, Syntax and Schemes Core of RDF: RDF Data Modelfor representing named properties and their values. These properties serve both to represent attributes of resources and to represent relationships between resources. RDF Syntax is for expressing and transporting this metadata in a Manner that maximizes the interoperability of independently developed web servers and clients. RDF Schemas are a collection of information about classes of RDF nodes, including properties and relations.
RDF Model Topic: • Concepts • Examples
Concepts of RDF Model • A model for representing named properties and property values. • Draws on well-established principles from various data representation communities.
Concepts of RDF Model (Cont.) Three object types: • Resources • Properties • Statements
Concepts of RDF Model (Cont.) 1. Resources • all things being described by RDF expressions. • resources correspond to objects(OOP). • Various types: • an entire Web page; eg: "http://www.w3.org/Overview.html". • a part of a Web page; e.g. a specific HTML within the document source. • a whole collection of pages; e.g. an entire Web site. • an object that is not directly accessible via the Web; e.g. a printed book.
Concepts of RDF Model (Cont.) 2. Properties • a specific aspect, characteristic, attribute, or relation used to describe a resource. • relationships between resources. • properties correspond to instance variables(OOP). 3. Statements • A specific resource together with a named property plus the value of that property for that resource.
Subject (Resource) http://www.w3.org/Home/Make Predicate (Property) Creator Object (literal) “Mike" Examples • This sentence has the following parts: Mike is the creator of the resource http://www.w3.org/Home/Mike.
Example#1 Mikeis thecreatorof the resourcehttp://www.w3.org/Home/Mike. Creator Mike http://www.w3.org/Home/Mike Simple node and arc diagram
Example#2 The individual whose name is Mike, email<mike@w3.org>, is the creator of http://www.w3.org/Home/Mike. http://www.w3.org/Home/Mike Creator Email Name Mike Mike@w3.org Property with structured value
Example#3 Theindividual referred to by employee id 857 is named Mike and has the email address mike@w3.org. The resource http://www.w3.org/Home/Mike was created by this individual. http://www.w3.org/Home/Mike Creator http://www.w3.org/staffld/875 Email Name Mike Mike@w3.org Structured value with identifier
LI RDF Syntax • Basic RDF/XML syntax • Abbreviating and Organizing RDF URIrefs • Summary
Basic RDF/XML Syntax • RDF provides an XML syntax for writing down and exchanging RDF graphs—RDF/XML. • The basic data model consists of three object types: Resources, Properties, and Statements • RDF/XMLis the normative syntax for writing RDF • Example: • http://www.example.org/index.html has a creation-date whose value is August 16, 1999
http://www.example.org/index.html http://www.example.org/terms/creation-date August 16, 1999 Basic RDF Model This sentence has the following parts: Subject (Resource) http://www.example.org/index.html Predicate (Property) creation-date Object (literal) August 16, 1999
Basic RDF/XML Syntax (Cont.) • We could represent an RDF graph consisting of multiple statements in RDF/XML by using RDF/XML similar to Lines 4-6 in last example to separately represent each statement. For example, if we wanted to write the following two statements:
Basic RDF/XML Syntax (Cont.) • RDF/XML allows multiple property elements representing those properties to be nested within the rdf:Description element that identifies the subject resource. For example, if we wanted to represent the following group of statements about http://www.example.org/index.html:
Basic RDF/XML Syntax (Cont.) Can XML do the same job?
Basic RDF/XML Syntax (Cont.) • RDF/XML also allows us to represent graphs that include nodes that have no URIrefs, i.e., blank nodes.
Basic RDF/XML Syntax (Cont.) ?Can we ignore ID
Basic RDF/XML Syntax (Cont.) • A typed literal is represented in RDF/XML by adding an rdf:datatype attribute specifying a datatype URIref to the property element containing the literal. For example ex:index.html exterms:creation-date "1999-08-16"^^xsd:date .
Abbreviating and Organizing RDF URIrefs Sometimes we want to achieve the effect of assigning URIrefs to resources that are part of an organized group of resources. For example, suppose a sporting goods company, example.com, wanted to provide an RDF-based catalog of its products, such as tents, hiking boots, and so on, as an RDF/XML document, identified by (and located at) http://www.example.com/2002/04/products.
Abbreviating and Organizing (Cont.) • If example.org wanted to provide a duplicate catalog on a mirror site, say at http://mirror.example.com/2002/04/products. This could create a problem. • To deal with such cases, RDF/XML supports XML Base:
Abbreviating and Organizing (Cont.) • When an RDF resource is described with an rdf:type property, the value of that property is considered to be a resource that represents a category or class of things, and the subject of that property is considered to be an instance of that category or class.
Summary • The examples above have illustrated some of the basic ideas behind the RDF/XML syntax. • Provide some information to enable you to begin writing useful RDF/XML.
RDF Additional Capabilities --Some built-in types and properties YANG RDF Containers RDF Collections RDF Reification
RDF Containers There is often a need to describe groups of things. e.g. the students in a course A container is a resource that contains things. The contained things are called members. The members of a container may be resources or literals RDF defines three types of containers RDF: Bag RDF: Seq RDF: Alt
RDF Containers (Bag) A Bag (a resource having type rdf:Bag) Is a group of resources or literals, possibly including duplicate members, where there is no significance in the order of the members. e.g. The students in a course
RDF Containers (Bag Example-Graph) http://cs.concordia.ca/courses/comp691B http://www.w3.org/1999/02/22-rdf-syntax-ns#Bag rdf:type S:students http://cs.concordia.ca/grad/tim rdf_1 rdf_2 http://cs.concordia.ca/grad/Li rdf_3 http://cs.concordia.ca/grad/tomato rdf_4 rdf_5 http://cs.concordia.ca/grad/Tan http://cs.concordia.ca/grad/raymond e.g. The students in a course comp691B