You are on page 1of 30

RDF & OWL

A simple overview of the building blocks of


the Semantic Web
Presented by Rachel Lovinger

Semantic Web Affinity Group


December 2007
RDF =
Resource Description Framework

Semantic Web Affinity Group – Dec 2007


RDF

Purpose: To provide a structure (aka framework)


for describing identified things (aka resources)

Semantic Web Affinity Group – Dec 2007


RDF

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#RachelLovinger
http://www.allmovie.com/Actor#WillSmith

URIs (uniform resource identifiers) look like URLs,


but they may not represent an actual web page.

Semantic Web Affinity Group – Dec 2007


RDF

Composed of three basic elements


• Resources – the things being described
• Properties – the relationships between things
• Classes – the buckets used to group the things

Semantic Web Affinity Group – Dec 2007


RDF

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>

Semantic Web Affinity Group – Dec 2007


RDF

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>

Semantic Web Affinity Group – Dec 2007


RDF

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

Semantic Web Affinity Group – Dec 2007


RDF

type – a resource belongs to a certain class

<WillSmith> <type> <Actor>

This defines which properties will be relevant to Will Smith.

Semantic Web Affinity Group – Dec 2007


RDF

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>

Semantic Web Affinity Group – Dec 2007


RDF

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>

Semantic Web Affinity Group – Dec 2007


RDF

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

Semantic Web Affinity Group – Dec 2007


RDF

label – a human-readable name for a resource

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

Semantic Web Affinity Group – Dec 2007


RDF

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>

Semantic Web Affinity Group – Dec 2007


RDF

EdibleThing
subClassOf

typeOf
Fruit

BerryPie
typeOf ingredientOf

Blackberry

Semantic Web Affinity Group – Dec 2007


RDF

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

Semantic Web Affinity Group – Dec 2007


Namespaces

Semantic Web Affinity Group – Dec 2007


Namespaces

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

Semantic Web Affinity Group – Dec 2007


OWL =
Web Ontology Language

Semantic Web Affinity Group – Dec 2007


OWL

Semantic Web Affinity Group – Dec 2007


OWL

Purpose: To develop ontologies that are


compatible with the World Wide Web.

Semantic Web Affinity Group – Dec 2007


OWL

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

Semantic Web Affinity Group – Dec 2007


OWL

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)

Semantic Web Affinity Group – Dec 2007


OWL

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>

Semantic Web Affinity Group – Dec 2007


OWL

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>

Semantic Web Affinity Group – Dec 2007


OWL

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>

Semantic Web Affinity Group – Dec 2007


OWL

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>

Semantic Web Affinity Group – Dec 2007


OWL

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

Semantic Web Affinity Group – Dec 2007


OWL

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

Semantic Web Affinity Group – Dec 2007


OWL

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>

Semantic Web Affinity Group – Dec 2007

You might also like