resource description framework building the semantic web

Post on 20-Jan-2016

54 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Resource Description Framework Building the Semantic Web. CS 502 – 20020226 Carl Lagoze – Cornell University. Acknowledgements: Eric Miller Dieter Fensel. Illustration is a type of contribution. M. Doe illustrated the book “Best Stories”. - PowerPoint PPT Presentation

TRANSCRIPT

Cornell CS 502

Resource Description FrameworkBuilding the Semantic Web

CS 502 – 20020226Carl Lagoze – Cornell University

Acknowledgements:Eric MillerDieter Fensel

Cornell CS 502

Motivating the “Semantic Web”

M. Doe illustrated the book “Best

Stories”Mary Doe

animated the cartoon “Best Stories – the

movie”

Illustration is a type of

contribution

animation is a type of

contribution

M. Doe and Mary Doe are

pseudonyms forSusan Mann

Show me the works to which Susan

Mann contributed?

Cartoons and Books are types

of Works

Cornell CS 502

Modeling & Encoding Metadata Components: RDF

• RDF (Resource Description Format)• The instantiation of the Warwick Framework on

the Web– Support for and integration of multiple independent

metadata vocabularies

• Provides enabling technology for richly-structured metadata

• Rich data model supporting notions of distinct entities and properties

• Primitives permit semantic inferencing • Expressible in machine readable manner (e.g.,

XML)

Cornell CS 502

RDF Components

• Formal data model• Syntax for interchange of data• Schema Type system (schema model)• Syntax for machine-understandable schemas• Query and profile protocols

• Ontologies layered on top

Cornell CS 502

RDF Data Model

• Imposes structural constraints on the expression of application data models– for consistent encoding, exchange and processing of

metadata– Provides for structural interoperability

• Enables resource description communities to define their own semantics

Cornell CS 502

RDF Data Model

• Directed labeled graphs• Model elements

– Resource– Property– Value– Statement– Containers

Cornell CS 502

RDF Model Primitives

ResourceProperty

ValueResource

Statement

Cornell CS 502

Simple Example

ResourceAuthor

“Eric”

Cornell CS 502

RDF Syntax

• RDF Model defines a formal relationships among resources, properties and values

• Syntax is required to...– Store instances of the model into files– Communicate files from one application to another

• XML is one well-supported syntax• There are syntax alternatives

– Relational databases– Triple Stores

Cornell CS 502

RDF Model Example #1

URI:R“CIMI Presentation”

Title

Creatordc:

dc:

“Eric Miller”

Cornell CS 502

RDF Syntax Example #1

URI:R“CIMI Presentation”

Title

Creatordc:

dc:

“Eric Miller”

<RDF xmlns = “http://www.w3.org/TR/WD-rdf-syntax#” xmlns:dc = “http://purl.org/dc/elements/1.0/”> <Description about = “URI:R”> <dc:Title> CIMI Presentation </dc:Title> <dc:Creator> Eric Miller </dc:Creator> </Description></RDF>

Cornell CS 502

“Eric Miller”

RDF Model Example #2

URI:R

URI:ERIC

“emiller@oclc.org”“Eric Miller”

“OCLC”

bib:Emailbib:Affbib:Name

URI:OCLC

“CIMI Presentation”Title

Creatoroa:

dc:

Cornell CS 502

<RDF xmlns = “http://www.w3.org/TR/WD-rdf-syntax#” xmlns:dc = “http://purl.org/dc/elements/1.0/” xmlns:bib = “http://www.bib.org/persons#”> <Description about = “URI:R”> <dc:Title> CIMI Presentation </dc:Title> <oa:Creator> <Description> <bib:Name> Eric Miller </bib:Name> <bib:Email> emiller@oclc.org </bib:Email> <bib:Aff resource = “http://www.oclc.org” /> </Description> </oa:Creator> </Description></RDF>

RDF Syntax Example #2

Cornell CS 502

“Eric Miller”

RDF Model Example #3

URI:R

URI:ERIC

“emiller@oclc.org”“Eric Miller”

“OCLC”

bib:Emailbib:Affbib:Name

URI:OCLC

“CIMI Presentation”Title

Creator admin:By

admin:On

“LOC”

“03-09-99”

admin:For“...”

dc:

dc:

Cornell CS 502

RDF Containers

• Permit the aggregation of several values for a property

• Express multiple aggregation semantics– unordered– sequential or priority order– alternative

Cornell CS 502

RDF Containers

• Permit the aggregation of several values for a property

• Express multiple aggregation semantics– unordered– sequential or priority order– alternative

Cornell CS 502

RDF Containers

• Bag– unordered grouping

• Sequence– ordered grouping

• Alternatives– alternate values

• need to choose

– at least one value– first value is default or preferred value

Cornell CS 502

RDF - Bag

• Unordered group• “Carl Lagoze and Stuart Weibel are co-authors”

<BIB:Author> <Bag> <li> Carl Lagoze </li> <li> Stuart Weibel </li></Bag></BIB:Author>

Cornell CS 502

RDF - Sequence

• Ordered or priority group• “Carl Lagoze is primary author and Stuart Weibel is

second author”

<BIB:Author> <Seq> <li> Carl Lagoze </li> <li> Stuart Weibel </li></Seq></BIB:Author>

Cornell CS 502

RDF - Alt

• Client chooses one of several values• First value is default• “The distance is 15 kilometers or 9.3 miles”

<DC:Coverage> <Alt> <li> 15KM </li> <li> 9.3M </li></Alt></DC:Coverage>

Cornell CS 502

Formalizing the RDF model – Thinking in triples

• RDF basic types– rdf:Resource – everything that can be identified (with

a URI)– rdf:Property – specialization of a resource expressing

a binary relation between two resources– rdf:statement – a triple with properties rdf:subject,

rdf:predicate, rdf:object

• An RDF statement is a triple consisting of a resource (subject), a property and a second resource (object)– (:s :p :o)

• Expressible also as binary relations– P(S,O) – e.g., Title(R, “War & Peace”)

Cornell CS 502

RDF triple model

Cornell CS 502

RDF statements and basic types

WYA

creator

DigitalLibraries

rdf:s

ubje

ct

rdf:p

red

icate

rdf:object

rdf:statement

rdf:property

“CL says ‘WYA wrote Digital Libraries’”

Cornell CS 502

Reification – Statements about statements

“CL says ‘WYA wrote Digital Libraries’”

WYA

creator

DigitalLibraries

rdf:s

ubje

ct

rdf:p

red

icate

rdf:object

rdf:statement

rdf:property

CLassertedBy

Cornell CS 502

From Graphs to Triples

alice

betty

charles

doris

eve

Cornell CS 502

Expressing Collection Primitives in Binary Relations

Cornell CS 502

RDF Schemas

• Declaration of vocabularies– properties defined by a particular community– characteristics of properties and/or constraints on

corresponding values

• Schema Type System - Basic Types– Property, Class, SubClassOf, Domain, Range– Minimal (but extensible) at this time– Expressible in the RDF model and syntax

Cornell CS 502

Schema Vocabularies

• Enables communities to share machine readable tokens and locally define human readable labels.

dc:Creator“Nom”rdfs:label

“Author”rdfs:label

“$100 $a”

rdfs:label

Cornell CS 502

Relationships among vocabularies

dc:Creator

ms:director

marc:100

bib:Author

Cornell CS 502

Relationships among vocabulary elements

URI:R “John Smith”ms:director

dc:Creatorms:director

rdfs:subPropertyOf

rdfs:label“Director”

dc:Creator

Cornell CS 502

RDF Schema: Specializing Properties

• rdfs:subPropertyOf – allows specialization of relations– E.g., the property “father” is a subPropertyOf the

property parent

• subProperty semantics

Cornell CS 502

Sub-Property Semantics

Cornell CS 502

Constraints on Properties

• Force objects to be of a certain type• rdfs:domain

– Restricts the type of resources that may have a specific property

• rdfs:range– Restricts the type of resources that may be the value

of a specific property

Cornell CS 502

Inferences from Constraints

Cornell CS 502

Class Hierarchy

• rdfs:Class– Resources denoting a set of resources; range of

rdf:type

• rdfs:subClassOf– Create class hierarchy

rdf:type rdf:typerdfs:class

rdfs:subClassOf

rdf:type

rdf:class

rdf:type

rdf:class

Cornell CS 502

Sub-Class Inferencing

Cornell CS 502

Sub-class Inferencing Example

Cornell CS 502

Storing and querying RDF models – Relational DB

• Issues– Scalability: potentially huge # of triples– Tables: number, sparseness, joins– Queries: how and how expensive– Reification?

Cornell CS 502

Storing and querying RDF models – SQUISH

SELECT ?sal, ?t, ?x FROM http://ilrt.org/discovery/2000/11/rss-query/jobs-rss.rdf, http://ilrt.org/discovery/2000/11/rss-query/jobs.rss WHERE (job::advertises ?x ?y) (job::salary ?y ?sal) (job::title ?y ?t) AND ?sal > 55000 USING job for http://ilrt.org/discovery/2000/11/rss-query/jobvocab.rdf#

http://swordfish.rdfweb.org:8085/rdfquery/index.html

Cornell CS 502

Where do you stop?

• Model provides enabling technology• Degree of metadata simplicity/complexity is a matter of:

– Resource description communities needs, best-practice and experience

– Organization/Institution’s Policy– Economics– Goals and requirements of implementation

top related