rdf and owl

35
RDF & OWL A simple overview of the building blocks of the Semantic Web Presented by Rachel Lovinger Semantic Web Affinity Group December 2007

Upload: rachel-lovinger

Post on 15-Jan-2015

20.850 views

Category:

Technology


3 download

DESCRIPTION

A simple overview of the building blocks of the Semantic Web. I created this to present to the Semantic Web Affinity Group at Razorfish.

TRANSCRIPT

Page 1: RDF and OWL

RDF & OWLA simple overview of the building blocks of

the Semantic WebPresented by Rachel Lovinger

Semantic Web Affinity Group

December 2007

Page 2: RDF and OWL

Semantic Web Affinity Group – Dec 2007

RDF = Resource Description Framework

Page 3: RDF and OWL

Semantic Web Affinity Group – Dec 2007

Purpose: To provide a structure (aka framework) for describing identified things (aka resources)

RDF

Page 4: RDF and OWL

Semantic Web Affinity Group – Dec 2007

Identified?

In order to make meaningful statements in RDF, the thing you’re talking about has to be identified in some unique way.

http://www.foaf.com/Person#RachelLovingerhttp://www.allmovie.com/Actor#WillSmith

URIs (uniform resource identifiers) look like URLs, but they may not represent an actual web page.

RDF

Page 5: RDF and OWL

Semantic Web Affinity Group – Dec 2007

Composed of three basic elements• Resources – the things being described• Properties – the relationships between things• Classes – the buckets used to group the things

RDF

Page 6: RDF and OWL

Semantic Web Affinity Group – Dec 2007

The elements are combined to make simple statements in the form of Triples

<Subject> <Predicate> <Object>

Men In Black stars Will Smith

<MenInBlack> <hasStar> <WillSmith>

RDF

Page 7: RDF and OWL

Semantic Web Affinity Group – Dec 2007

Information Expressed in Triples<http://www.w3.org/2001/sw/RDFCore/ntriples/> <dc:creator> "Dave Beckett" .<http://www.w3.org/2001/sw/RDFCore/ntriples/> <dc:creator> "Art Barstow" .<http://www.w3.org/2001/sw/RDFCore/ntriples/> <dc:publisher> <http://www.w3.org/> .

Can also be expressed as XML<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:dc="http://purl.org/dc/elements/1.1/"> <rdf:Description rdf:about="http://www.w3.org/2001/sw/RDFCore/ntriples/"> <dc:creator>Art Barstow</dc:creator>

<dc:creator>Dave Beckett</dc:creator> <dc:publisher rdf:resource="http://www.w3.org/"/>

</rdf:Description> </rdf:RDF>

RDF

Page 8: RDF and OWL

Semantic Web Affinity Group – Dec 2007

RDF Properties• type • subClassOf• subPropertyOf• range • domain• label• comment

RDF

Page 9: RDF and OWL

Semantic Web Affinity Group – Dec 2007

type – a resource belongs to a certain class

<WillSmith> <type> <Actor>

This defines which properties will be relevant to Will Smith.

RDF

Page 10: RDF and OWL

Semantic Web Affinity Group – Dec 2007

subClassOf – a class belongs to a parent class

<Actor> <subClassOf> <Person>

This means that all members of the actor class are also members of the Person class. All properties are inherited, and new properties specific to Actor can be added.

<WillSmith> <type> <Actor>implies <WillSmith> <type> <Person>

RDF

Page 11: RDF and OWL

Semantic Web Affinity Group – Dec 2007

subPropertyOf – a property has a parent property

<hasStar> <subPropertyOf> <hasActor>

This means that, if you make a statement using the hasStar property, a more general statement using the hasActor property is also true.

<MenInBlack> <hasStar> <WillSmith>implies <MenInBlack> <hasActor> <WillSmith>

RDF

Page 12: RDF and OWL

Semantic Web Affinity Group – Dec 2007

range & domain – the types of resources that use a property

<hasStar> <range> <Actor><hasStar> <domain> <Movie>

This means that, if you make a statement using the hasStar property, the system will assume that the subject is a Movie and the object is an Actor.

<WillSmith> <hasStar> <MenInBlack>

is an untrue statement, but not invalid

RDF

Page 13: RDF and OWL

Semantic Web Affinity Group – Dec 2007

label – a human-readable name for a resource

<http://www.allmovie.com/Actor#WillSmith> <label> <Will Smith>

RDF

Page 14: RDF and OWL

Semantic Web Affinity Group – Dec 2007

comment – a human-readable description

<https://aarfwiki.main.corp/wiki/index.php/File:RDF_OWL.pdf> <comment> <A presentation that Rachel gave at the December 2007 Semantic Web Affinity Group Meeting>

RDF

Page 15: RDF and OWL

Semantic Web Affinity Group – Dec 2007

RDF

Blackberry

Fruit

typeOfBerryPie

EdibleThing

typeOf

subClassOf

ingredientOf

Blackberry

Page 16: RDF and OWL

Semantic Web Affinity Group – Dec 2007

Why is RDF uniquely suited to expressing data and data relationships?• More flexible – data relationships can be explored from all angles• More efficient – large scale, data can be read more quickly

– not linear like a traditional database– not hierarchical like XML

RDF

Page 17: RDF and OWL

Semantic Web Affinity Group – Dec 2007

Namespaces

Page 18: RDF and OWL

Semantic Web Affinity Group – Dec 2007

A method for qualifying names used in an XML document. Can be used to indicate usage of a standard, or to specify a unique version of the term.• dc:creator• rdf:type• foaf:Person• foaf:knows• aarf:Employee

Namespaces

Page 19: RDF and OWL

Semantic Web Affinity Group – Dec 2007

OWL = Web Ontology Language

Page 20: RDF and OWL

Semantic Web Affinity Group – Dec 2007

OWL

Page 21: RDF and OWL

Semantic Web Affinity Group – Dec 2007

Purpose: To develop ontologies that are compatible with the World Wide Web.

OWL

Page 22: RDF and OWL

Semantic Web Affinity Group – Dec 2007

Ontologies?

Definition and classification of concepts and entities, and the relationships between them.

OWL

Page 23: RDF and OWL

Semantic Web Affinity Group – Dec 2007

Based on the basic elements of RDF; adds more vocabulary for describing properties and classes.

• Relationships between classes (ex: disjointWith)• Equality (ex: sameAs)• Richer properties (ex: symmetrical)• Class property restrictions (ex: allValuesFrom)

OWL

Page 24: RDF and OWL

Semantic Web Affinity Group – Dec 2007

Relationships between Classes• disjointWith – resources belonging to one class

cannot belong to the other<Person> <disjointWith> <Country>

• complementOf – the members of one class are all the resources that do not belong to the other <InanimateThings> <complementOf> <LivingThings>

OWL

Page 25: RDF and OWL

Semantic Web Affinity Group – Dec 2007

Equality• sameAs – indicates that two resources actually

refer to the same real-world thing or concept<wills> <sameAs> <wismith>

• equivalentClass – indicates that two classes have the same set of members<CoopBoardMembers> <equivalentClass> <CoopResidents>

OWL

Page 26: RDF and OWL

Semantic Web Affinity Group – Dec 2007

Richer Properties• Symmetric – a relationship between A and B is

also true between B and A<WillSmith> <marriedTo> <JadaPinkettSmith>implies <JadaPinkettSmith> <marriedTo> <WillSmith>

• Transitive – a relationship between A and B and between B and C is also true between A and C<piston> <isPartOf> <engine><engine> <isPartOf> <automobile>implies <piston> <isPartOf> <automobile>

OWL

Page 27: RDF and OWL

Semantic Web Affinity Group – Dec 2007

Richer Properties continued• inverseOf – a relationship of type X between A

and B implies a relationship of type Y between B and A<starsIn> <inverseOf> <hasStar><MenInBlack> <hasStar> <WillSmith>implies <WillSmith> <starsIn> <MenInBlack>

OWL

Page 28: RDF and OWL

Semantic Web Affinity Group – Dec 2007

Class Property Restrictions – define the members of a class based on their properties

• allValuesFrom – resources with properties that only have values that meet this criteria– Example: Property: hasParents, allValuesFrom: Human – Resources that meet this criteria can be defined as also being

members of the Human class

• someValuesFrom – resources with properties that have at least one value that meets criteria– Example: Property: hasGraduated, someValuesFrom: College – Resources that meet this criteria can be defined as being

members of the CollegeGraduates class

OWL

Page 29: RDF and OWL

Semantic Web Affinity Group – Dec 2007

This seems complicated. Why do it?

These capabilities allows systems to express and make sense of first order logic.• All men are mortal • Socrates is a man • Therefore, Socrates is mortal

OWL

Page 30: RDF and OWL

Semantic Web Affinity Group – Dec 2007

Inferences• Create new triples based on existing triples• Deduce new facts based on the stated facts

<piston> <isPartOf> <engine><engine> <isPartOf> <automobile>implies <piston> <isPartOf> <automobile>

OWL

Page 31: RDF and OWL

Semantic Web Affinity Group – Dec 2007

Three Flavors of OWL• OWL Lite – uses a subset of the capabilities• OWL DL – uses all the capabilities, but some

are used in restricted ways• OWL Full – unrestricted use of capabilities; no

guarantee that all resulting statements are valid

OWL

Page 32: RDF and OWL

Semantic Web Affinity Group – Dec 2007

SKOS = Simple Knowledge Organization System

Page 33: RDF and OWL

Semantic Web Affinity Group – Dec 2007

• Also based on RDF• Designed specifically to express information

that’s more hierarchical – broader terms, narrower terms, preferred terms and other thesaurus-like relationships

• Extendable into OWL, if needed

SKOS

Page 34: RDF and OWL

Semantic Web Affinity Group – Dec 2007

Need more?

Page 35: RDF and OWL

Semantic Web Affinity Group – Dec 2007

• SchemaWeb: http://www.schemaweb.info/default.aspx • RDF Primer: http://www.w3.org/TR/REC-rdf-syntax/ • OWL / Semantic Web: http://www.w3.org/2004/OWL/ • SKOS: http://www.w3.org/2004/02/skos/ • Dublin Core: http://dublincore.org/ • Namespaces: http://www.w3.org/TR/REC-xml-names/• URIs: http://www.w3.org/Addressing/

Resources