Multi-agent Semantic Web Systems: RDF Data Structures · Multi-agent Semantic Web Systems: RDF Data...

Preview:

Citation preview

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Multi-agent Semantic Web Systems:RDF Data Structures

Ewan Klein

MASWS — 25 January 2008

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

1 Review: RDF Basic ConceptsRDF Graphs and Triples

2 Structured ValuesIntermediary NodesBlank NodesN-ary RelationsContainers

3 Digression on N3

4 RDFS

5 Summary

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Admin stuff

Tutorial:

Tuesday 29 Jan 2008

1:00-2:00

Room 5.08 AT

Assignment:

I will update the RDFS section and add more details, plusmarking scheme.

Hopefully by Monday 28th (Jan)

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Admin stuff

Tutorial:

Tuesday 29 Jan 2008

1:00-2:00

Room 5.08 AT

Assignment:

I will update the RDFS section and add more details, plusmarking scheme.

Hopefully by Monday 28th (Jan)

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

RDF Data Model, 1

Two kinds of triple in RDF:

edstaff:9888 'Ewan Klein' foaf:name

infcourses:masws edstaff:9888dc:creator

subject predicate object

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

RDF Data Model, 1

Two kinds of triple in RDF:

edstaff:9888 'Ewan Klein' foaf:name

infcourses:masws edstaff:9888dc:creator

subject predicate object

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

RDF Data Model, 2

'Ewan Klein'

foaf:name

infcourses:masws

edstaff:9888

dc:creator

object

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

RDF Data Model, 2

'Ewan Klein'

foaf:name

infcourses:masws

edstaff:9888

dc:creator

subject

predicate

object

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

RDF Data Model, 2

'Ewan Klein'

foaf:name

infcourses:masws

edstaff:9888

dc:creator

subject

predicate

subject

object

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

URIs and QNames

An RDF vocabulary is a set of URIs, not words.

We use QNames as an abbreviatory convention for URIs.

1 Associate a prefix with a URI;2 follow it with a colon (‘:’) and a local name

Some PrefixesPrefix Namespace URI

edstaff http://www.ed.ac.uk/staffid#dc http://purl.org/dc/elements/1.1/

Example QNames

edstaff:9888dc:creator

Example RDF Triples

infcourses:masws dc:creator edstaff:9888 .

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

URIs and QNames

An RDF vocabulary is a set of URIs, not words.We use QNames as an abbreviatory convention for URIs.

1 Associate a prefix with a URI;2 follow it with a colon (‘:’) and a local name

Some PrefixesPrefix Namespace URI

edstaff http://www.ed.ac.uk/staffid#dc http://purl.org/dc/elements/1.1/

Example QNames

edstaff:9888dc:creator

Example RDF Triples

infcourses:masws dc:creator edstaff:9888 .

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

URIs and QNames

An RDF vocabulary is a set of URIs, not words.We use QNames as an abbreviatory convention for URIs.

1 Associate a prefix with a URI;

2 follow it with a colon (‘:’) and a local name

Some PrefixesPrefix Namespace URI

edstaff http://www.ed.ac.uk/staffid#dc http://purl.org/dc/elements/1.1/

Example QNames

edstaff:9888dc:creator

Example RDF Triples

infcourses:masws dc:creator edstaff:9888 .

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

URIs and QNames

An RDF vocabulary is a set of URIs, not words.We use QNames as an abbreviatory convention for URIs.

1 Associate a prefix with a URI;2 follow it with a colon (‘:’) and a local name

Some PrefixesPrefix Namespace URI

edstaff http://www.ed.ac.uk/staffid#dc http://purl.org/dc/elements/1.1/

Example QNames

edstaff:9888dc:creator

Example RDF Triples

infcourses:masws dc:creator edstaff:9888 .

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

URIs and QNames

An RDF vocabulary is a set of URIs, not words.We use QNames as an abbreviatory convention for URIs.

1 Associate a prefix with a URI;2 follow it with a colon (‘:’) and a local name

Some PrefixesPrefix Namespace URI

edstaff http://www.ed.ac.uk/staffid#dc http://purl.org/dc/elements/1.1/

Example QNames

edstaff:9888dc:creator

Example RDF Triples

infcourses:masws dc:creator edstaff:9888 .

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

URIs and QNames

An RDF vocabulary is a set of URIs, not words.We use QNames as an abbreviatory convention for URIs.

1 Associate a prefix with a URI;2 follow it with a colon (‘:’) and a local name

Some PrefixesPrefix Namespace URI

edstaff http://www.ed.ac.uk/staffid#dc http://purl.org/dc/elements/1.1/

Example QNames

edstaff:9888dc:creator

Example RDF Triples

infcourses:masws dc:creator edstaff:9888 .

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Structured Values, 1

So far, a value is always a resource or a literal.

How do we deal with structured values?

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Structured Values, 1

So far, a value is always a resource or a literal.

How do we deal with structured values?

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Structured Values, 2

Example: Complex value as a string

meals:lunch06 meals:mainCourse ’beef, peas, rice’ .

Using a string doesn’t allow us to look at the parts of acomplex value.

Wrong

meals:lunch06 meals:mainCourse ’beef’ .meals:lunch06 meals:mainCourse ’peas’ .meals:lunch06 meals:mainCourse ’rice’ .

We don’t really want to say that beef, peas and rice arethemselves main courses;

they are parts of a main course.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Structured Values, 2

Example: Complex value as a string

meals:lunch06 meals:mainCourse ’beef, peas, rice’ .

Using a string doesn’t allow us to look at the parts of acomplex value.

Wrong

meals:lunch06 meals:mainCourse ’beef’ .meals:lunch06 meals:mainCourse ’peas’ .meals:lunch06 meals:mainCourse ’rice’ .

We don’t really want to say that beef, peas and rice arethemselves main courses;

they are parts of a main course.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Structured Values, 2

Example: Complex value as a string

meals:lunch06 meals:mainCourse ’beef, peas, rice’ .

Using a string doesn’t allow us to look at the parts of acomplex value.

Wrong

meals:lunch06 meals:mainCourse ’beef’ .meals:lunch06 meals:mainCourse ’peas’ .meals:lunch06 meals:mainCourse ’rice’ .

We don’t really want to say that beef, peas and rice arethemselves main courses;

they are parts of a main course.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Structured Values, 2

Example: Complex value as a string

meals:lunch06 meals:mainCourse ’beef, peas, rice’ .

Using a string doesn’t allow us to look at the parts of acomplex value.

Wrong

meals:lunch06 meals:mainCourse ’beef’ .meals:lunch06 meals:mainCourse ’peas’ .meals:lunch06 meals:mainCourse ’rice’ .

We don’t really want to say that beef, peas and rice arethemselves main courses;

they are parts of a main course.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Aggregate Resource

Example of Aggregate Resource

meals:lunch06 meals:mainCourse meals:mainCourse10.

meals:mainCourse10 terms:meatPart ’beef’ .meals:mainCourse10 terms:vegPart ’peas’ .meals:mainCourse10 terms:starchPart ’rice’ .

lunch06 mainCourse10mainCourse 'peas'

'beef'

'rice'

meatPart

vegPart

starchPart

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Aggregate Resource

Example of Aggregate Resource

meals:lunch06 meals:mainCourse meals:mainCourse10.meals:mainCourse10 terms:meatPart ’beef’ .

meals:mainCourse10 terms:vegPart ’peas’ .meals:mainCourse10 terms:starchPart ’rice’ .

lunch06 mainCourse10mainCourse 'peas'

'beef'

'rice'

meatPart

vegPart

starchPart

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Aggregate Resource

Example of Aggregate Resource

meals:lunch06 meals:mainCourse meals:mainCourse10.meals:mainCourse10 terms:meatPart ’beef’ .meals:mainCourse10 terms:vegPart ’peas’ .

meals:mainCourse10 terms:starchPart ’rice’ .

lunch06 mainCourse10mainCourse 'peas'

'beef'

'rice'

meatPart

vegPart

starchPart

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Aggregate Resource

Example of Aggregate Resource

meals:lunch06 meals:mainCourse meals:mainCourse10.meals:mainCourse10 terms:meatPart ’beef’ .meals:mainCourse10 terms:vegPart ’peas’ .meals:mainCourse10 terms:starchPart ’rice’ .

lunch06 mainCourse10mainCourse 'peas'

'beef'

'rice'

meatPart

vegPart

starchPart

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Aggregate Resource

Example of Aggregate Resource

meals:lunch06 meals:mainCourse meals:mainCourse10.meals:mainCourse10 terms:meatPart ’beef’ .meals:mainCourse10 terms:vegPart ’peas’ .meals:mainCourse10 terms:starchPart ’rice’ .

lunch06 mainCourse10mainCourse 'peas'

'beef'

'rice'

meatPart

vegPart

starchPart

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Blank Nodes

We don’t necessarily want to create a new resource (suchas meals:mainCourse10) to name the aggregatestructure.

Relevant node in the graph could have been left blank:

lunch06 mainCourse 'peas'

'beef'

'rice'

meatPart

vegPart

starchPart

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Blank Nodes

We don’t necessarily want to create a new resource (suchas meals:mainCourse10) to name the aggregatestructure.

Relevant node in the graph could have been left blank:

lunch06 mainCourse 'peas'

'beef'

'rice'

meatPart

vegPart

starchPart

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Blank Nodes

We don’t necessarily want to create a new resource (suchas meals:mainCourse10) to name the aggregatestructure.

Relevant node in the graph could have been left blank:

lunch06 mainCourse 'peas'

'beef'

'rice'

meatPart

vegPart

starchPart

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Blank Nodes, 2

How do we represent blank nodes in N3 triples?

Blank node identifiers (also called anonymous resources)are of the form _:label

Example of Blank Node Identifier

meals:lunch06 meals:mainCourse _:a ._:a terms:meatPart ’beef’ ._:a terms:vegPart ’peas’ ._:a terms:starchPart ’rice’ .

Blank node identifiers are not intended to be globallyunique;

only unique relative to a single ‘graph’.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Blank Nodes, 2

How do we represent blank nodes in N3 triples?

Blank node identifiers (also called anonymous resources)are of the form _:label

Example of Blank Node Identifier

meals:lunch06 meals:mainCourse _:a ._:a terms:meatPart ’beef’ ._:a terms:vegPart ’peas’ ._:a terms:starchPart ’rice’ .

Blank node identifiers are not intended to be globallyunique;

only unique relative to a single ‘graph’.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Blank Nodes, 2

How do we represent blank nodes in N3 triples?

Blank node identifiers (also called anonymous resources)are of the form _:label

Example of Blank Node Identifier

meals:lunch06 meals:mainCourse _:a ._:a terms:meatPart ’beef’ ._:a terms:vegPart ’peas’ ._:a terms:starchPart ’rice’ .

Blank node identifiers are not intended to be globallyunique;

only unique relative to a single ‘graph’.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Blank Nodes, 2

How do we represent blank nodes in N3 triples?

Blank node identifiers (also called anonymous resources)are of the form _:label

Example of Blank Node Identifier

meals:lunch06 meals:mainCourse _:a ._:a terms:meatPart ’beef’ ._:a terms:vegPart ’peas’ ._:a terms:starchPart ’rice’ .

Blank node identifiers are not intended to be globallyunique;

only unique relative to a single ‘graph’.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Blank Nodes, 2

How do we represent blank nodes in N3 triples?

Blank node identifiers (also called anonymous resources)are of the form _:label

Example of Blank Node Identifier

meals:lunch06 meals:mainCourse _:a ._:a terms:meatPart ’beef’ ._:a terms:vegPart ’peas’ ._:a terms:starchPart ’rice’ .

Blank node identifiers are not intended to be globallyunique;

only unique relative to a single ‘graph’.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

When we can’t find a good URI

Even without aggregates, difficult to find URIs for manyresources.

Which URI would be ‘canonical’ for Ali Farka Toure?http://en.wikipedia.org/wiki/Ali Farka Toure

http://africanmusic.org/artists/alifarka.html

Some objects are just too ephemeral or not worth coiningidentifiers for:

the glass of red wine that I drank last nightthe car that almost ran into my bike this morningthe file transfer that was initiated when I checked in a copyof this lecture to the CVS repository

Alternative: represent resources via a cluster of ‘definitive’properties, using a blank node.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

When we can’t find a good URI

Even without aggregates, difficult to find URIs for manyresources.

Which URI would be ‘canonical’ for Ali Farka Toure?http://en.wikipedia.org/wiki/Ali Farka Toure

http://africanmusic.org/artists/alifarka.html

Some objects are just too ephemeral or not worth coiningidentifiers for:

the glass of red wine that I drank last nightthe car that almost ran into my bike this morningthe file transfer that was initiated when I checked in a copyof this lecture to the CVS repository

Alternative: represent resources via a cluster of ‘definitive’properties, using a blank node.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

When we can’t find a good URI

Even without aggregates, difficult to find URIs for manyresources.

Which URI would be ‘canonical’ for Ali Farka Toure?http://en.wikipedia.org/wiki/Ali Farka Toure

http://africanmusic.org/artists/alifarka.html

Some objects are just too ephemeral or not worth coiningidentifiers for:

the glass of red wine that I drank last nightthe car that almost ran into my bike this morningthe file transfer that was initiated when I checked in a copyof this lecture to the CVS repository

Alternative: represent resources via a cluster of ‘definitive’properties, using a blank node.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

When we can’t find a good URI

Even without aggregates, difficult to find URIs for manyresources.

Which URI would be ‘canonical’ for Ali Farka Toure?http://en.wikipedia.org/wiki/Ali Farka Toure

http://africanmusic.org/artists/alifarka.html

Some objects are just too ephemeral or not worth coiningidentifiers for:

the glass of red wine that I drank last night

the car that almost ran into my bike this morningthe file transfer that was initiated when I checked in a copyof this lecture to the CVS repository

Alternative: represent resources via a cluster of ‘definitive’properties, using a blank node.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

When we can’t find a good URI

Even without aggregates, difficult to find URIs for manyresources.

Which URI would be ‘canonical’ for Ali Farka Toure?http://en.wikipedia.org/wiki/Ali Farka Toure

http://africanmusic.org/artists/alifarka.html

Some objects are just too ephemeral or not worth coiningidentifiers for:

the glass of red wine that I drank last nightthe car that almost ran into my bike this morning

the file transfer that was initiated when I checked in a copyof this lecture to the CVS repository

Alternative: represent resources via a cluster of ‘definitive’properties, using a blank node.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

When we can’t find a good URI

Even without aggregates, difficult to find URIs for manyresources.

Which URI would be ‘canonical’ for Ali Farka Toure?http://en.wikipedia.org/wiki/Ali Farka Toure

http://africanmusic.org/artists/alifarka.html

Some objects are just too ephemeral or not worth coiningidentifiers for:

the glass of red wine that I drank last nightthe car that almost ran into my bike this morningthe file transfer that was initiated when I checked in a copyof this lecture to the CVS repository

Alternative: represent resources via a cluster of ‘definitive’properties, using a blank node.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

When we can’t find a good URI

Even without aggregates, difficult to find URIs for manyresources.

Which URI would be ‘canonical’ for Ali Farka Toure?http://en.wikipedia.org/wiki/Ali Farka Toure

http://africanmusic.org/artists/alifarka.html

Some objects are just too ephemeral or not worth coiningidentifiers for:

the glass of red wine that I drank last nightthe car that almost ran into my bike this morningthe file transfer that was initiated when I checked in a copyof this lecture to the CVS repository

Alternative: represent resources via a cluster of ‘definitive’properties, using a blank node.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Blank Nodes, 3

XY-33-53-60-C

'Kim'

mailto:kim@wanna.be

name

natInsurNo

maibox

∃x .[name(x) = ”Kim”∧natInsurNo(x) = "XY-33-53-60-C" ∧mailbox(x) = mailto:kim@wanna.be]

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Representing N-ary Relations in RDF

Not all relations are binary!

Examples of Relations with 3 Arguments

Livedoor shares fell by 14.4% on TuesdayJohn gave the flower to Sue

Two approaches(http://www.w3.org/TR/swbp-n-aryRelations):

1 Keep one argument as subject, and add an intermediarynode.

2 Make the relation into the subject node, and use ‘role’predicates.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Representing N-ary Relations in RDF

Not all relations are binary!

Examples of Relations with 3 Arguments

Livedoor shares fell by 14.4% on TuesdayJohn gave the flower to Sue

Two approaches(http://www.w3.org/TR/swbp-n-aryRelations):

1 Keep one argument as subject, and add an intermediarynode.

2 Make the relation into the subject node, and use ‘role’predicates.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Representing N-ary Relations in RDF

Not all relations are binary!

Examples of Relations with 3 Arguments

Livedoor shares fell by 14.4% on TuesdayJohn gave the flower to Sue

Two approaches(http://www.w3.org/TR/swbp-n-aryRelations):

1 Keep one argument as subject, and add an intermediarynode.

2 Make the relation into the subject node, and use ‘role’predicates.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Approach 1

livedoorShares fellRelation22fell

14%

2006-01-17

amount

date

livedoorShares is the subject of the statement.

fellRelation22 is a new intermediary node, allowing usto aggregate the percentage drop and the date.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Approach 2

giving1002 'flower'

'John'

'Sue'

donor

object

recipient

giving1002 is a specific instance of the giving relation.

The arguments of the relation are assigned named roles.

(Various proposals exist for what labels to assign to theseroles.)

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

RDF Containers

RDF defines a syntax for describing collections of resources:

bag: set with duplicates

sequence: ordered collection

alternative: alternative values

Also, collection, which is a closed container.Not discussed further right now.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

N3 Abbreviations

One subject, multiple properties

_:x foaf:name "Kim" ;foaf:mbox mailto:kim@hotmail.com .

_:x foaf:name "Kim" ._:x foaf:mbox mailto:kim@hotmail.com .

One subject, one predicate, multiple objects

ex:kim foaf:mbox mailto:kim@hotmail.com ,mailto:buzz39@google.com .

ex:kim foaf:mbox mailto:kim@hotmail.com .ex:kim foaf:mbox mailto:buzz39@google.com .

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Ground Assertions

RDF allows us to make factual statements (assertions).

These statements are always about individual objects.

We can’t say things like the following:

Every page was created by some person.Dogs are mammals.Dogs bark.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Ground Assertions

RDF allows us to make factual statements (assertions).

These statements are always about individual objects.

We can’t say things like the following:

Every page was created by some person.Dogs are mammals.Dogs bark.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Ground Assertions

RDF allows us to make factual statements (assertions).

These statements are always about individual objects.

We can’t say things like the following:

Every page was created by some person.Dogs are mammals.Dogs bark.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Ground Assertions

RDF allows us to make factual statements (assertions).

These statements are always about individual objects.

We can’t say things like the following:

Every page was created by some person.

Dogs are mammals.Dogs bark.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Ground Assertions

RDF allows us to make factual statements (assertions).

These statements are always about individual objects.

We can’t say things like the following:

Every page was created by some person.Dogs are mammals.

Dogs bark.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Ground Assertions

RDF allows us to make factual statements (assertions).

These statements are always about individual objects.

We can’t say things like the following:

Every page was created by some person.Dogs are mammals.Dogs bark.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

No Semantic Constraints

By itself, RDF places no semantic restrictions on howpredicates combine with subjects and objects.

Even worse, RDF has no way of telling which URIs cansemantically act as predicates!

Anomalous Statements

infcourses:masws terms:knows edstaff:9888 .meals:lunch06 terms:homepage dc:title .mailto:kim@wanna.be edstaff:9888 ’chicken’ .

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

No Semantic Constraints

By itself, RDF places no semantic restrictions on howpredicates combine with subjects and objects.

Even worse, RDF has no way of telling which URIs cansemantically act as predicates!

Anomalous Statements

infcourses:masws terms:knows edstaff:9888 .meals:lunch06 terms:homepage dc:title .mailto:kim@wanna.be edstaff:9888 ’chicken’ .

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

No Semantic Constraints

By itself, RDF places no semantic restrictions on howpredicates combine with subjects and objects.

Even worse, RDF has no way of telling which URIs cansemantically act as predicates!

Anomalous Statements

infcourses:masws terms:knows edstaff:9888 .meals:lunch06 terms:homepage dc:title .mailto:kim@wanna.be edstaff:9888 ’chicken’ .

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

No Semantic Constraints

By itself, RDF places no semantic restrictions on howpredicates combine with subjects and objects.

Even worse, RDF has no way of telling which URIs cansemantically act as predicates!

Anomalous Statements

infcourses:masws terms:knows edstaff:9888 .

meals:lunch06 terms:homepage dc:title .mailto:kim@wanna.be edstaff:9888 ’chicken’ .

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

No Semantic Constraints

By itself, RDF places no semantic restrictions on howpredicates combine with subjects and objects.

Even worse, RDF has no way of telling which URIs cansemantically act as predicates!

Anomalous Statements

infcourses:masws terms:knows edstaff:9888 .meals:lunch06 terms:homepage dc:title .

mailto:kim@wanna.be edstaff:9888 ’chicken’ .

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

No Semantic Constraints

By itself, RDF places no semantic restrictions on howpredicates combine with subjects and objects.

Even worse, RDF has no way of telling which URIs cansemantically act as predicates!

Anomalous Statements

infcourses:masws terms:knows edstaff:9888 .meals:lunch06 terms:homepage dc:title .mailto:kim@wanna.be edstaff:9888 ’chicken’ .

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

RDF Vocabulary Definition

RDF has been extended with mechanisms to allow newvocabularies to be defined.

Resulting language known as RDF Schema (RDFS; cf.http://www.w3.org/TR/rdf-schema/)

Basic idea is to allow statements like the following:

Example RDFS Constraints

The subject of ‘birthday’ must be an Agent.The object of ‘homepage’ must be a Document.Every instance of Person is an instance of Agent.

These vocabularies, and similar sets of definitions, arefrequently called ontologies.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

RDF Vocabulary Definition

RDF has been extended with mechanisms to allow newvocabularies to be defined.

Resulting language known as RDF Schema (RDFS; cf.http://www.w3.org/TR/rdf-schema/)

Basic idea is to allow statements like the following:

Example RDFS Constraints

The subject of ‘birthday’ must be an Agent.The object of ‘homepage’ must be a Document.Every instance of Person is an instance of Agent.

These vocabularies, and similar sets of definitions, arefrequently called ontologies.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

RDF Vocabulary Definition

RDF has been extended with mechanisms to allow newvocabularies to be defined.

Resulting language known as RDF Schema (RDFS; cf.http://www.w3.org/TR/rdf-schema/)

Basic idea is to allow statements like the following:

Example RDFS Constraints

The subject of ‘birthday’ must be an Agent.The object of ‘homepage’ must be a Document.Every instance of Person is an instance of Agent.

These vocabularies, and similar sets of definitions, arefrequently called ontologies.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

RDF Vocabulary Definition

RDF has been extended with mechanisms to allow newvocabularies to be defined.

Resulting language known as RDF Schema (RDFS; cf.http://www.w3.org/TR/rdf-schema/)

Basic idea is to allow statements like the following:

Example RDFS Constraints

The subject of ‘birthday’ must be an Agent.The object of ‘homepage’ must be a Document.Every instance of Person is an instance of Agent.

These vocabularies, and similar sets of definitions, arefrequently called ontologies.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

RDF Vocabulary Definition

RDF has been extended with mechanisms to allow newvocabularies to be defined.

Resulting language known as RDF Schema (RDFS; cf.http://www.w3.org/TR/rdf-schema/)

Basic idea is to allow statements like the following:

Example RDFS Constraints

The subject of ‘birthday’ must be an Agent.The object of ‘homepage’ must be a Document.Every instance of Person is an instance of Agent.

These vocabularies, and similar sets of definitions, arefrequently called ontologies.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Frame-based KR

isa and io links from frame-based knowledgerepresentation:

hasLegs 4Mammal

eats PlantHerbivore

eats AnimalCarnivore

LionGiraffe

Jerome Leo

isa isa

isa isa

io io

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Classes and Instances

Declaring Classes

terms:Giraffe rdf:type rdfs:Class .terms:Herbivore rdf:type rdfs:Class .

Giraffe and Herbivore are classes.

Instances

myzoo:gerome rdf:type terms:Giraffe .myzoo:gerome a terms:Giraffe .

jerome is an instance of (io) Giraffe.

Subclasses

terms:Giraffe rdfs:subClassOf terms:Herbivore .

Giraffe is a subclass of (isa) Herbivore.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Classes and Instances

Declaring Classes

terms:Giraffe rdf:type rdfs:Class .terms:Herbivore rdf:type rdfs:Class .

Giraffe and Herbivore are classes.

Instances

myzoo:gerome rdf:type terms:Giraffe .myzoo:gerome a terms:Giraffe .

jerome is an instance of (io) Giraffe.

Subclasses

terms:Giraffe rdfs:subClassOf terms:Herbivore .

Giraffe is a subclass of (isa) Herbivore.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Classes and Instances

Declaring Classes

terms:Giraffe rdf:type rdfs:Class .terms:Herbivore rdf:type rdfs:Class .

Giraffe and Herbivore are classes.

Instances

myzoo:gerome rdf:type terms:Giraffe .myzoo:gerome a terms:Giraffe .

jerome is an instance of (io) Giraffe.

Subclasses

terms:Giraffe rdfs:subClassOf terms:Herbivore .

Giraffe is a subclass of (isa) Herbivore.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Properties

Properties

terms:eats rdf:type rdf:Property .terms:eats a rdf:Property .

eats is a property.

Domain

terms:eats rdfs:domain terms:Animal .

The subjects of eats are instances of Animals.

Range

terms:eats rdfs:range terms:Plant .

The values of eats are instances of Plant.eats : Animal 7→ Plant

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Properties

Properties

terms:eats rdf:type rdf:Property .terms:eats a rdf:Property .

eats is a property.

Domain

terms:eats rdfs:domain terms:Animal .

The subjects of eats are instances of Animals.

Range

terms:eats rdfs:range terms:Plant .

The values of eats are instances of Plant.eats : Animal 7→ Plant

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Properties

Properties

terms:eats rdf:type rdf:Property .terms:eats a rdf:Property .

eats is a property.

Domain

terms:eats rdfs:domain terms:Animal .

The subjects of eats are instances of Animals.

Range

terms:eats rdfs:range terms:Plant .

The values of eats are instances of Plant.eats : Animal 7→ Plant

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Summary, 1

We can use intermediary nodes to aggregate a subset ofstatements.

Aggregates can be rooted in an ordinary resource node orin a blank node.

Blank nodes are referred to with a special namingconvention in triples: _:label.

Blank nodes can also be used for other things:

Referring to individuals via a cluster of properties.Expressing relations of arity > 2 (via two patterns).

RDF only allows us to make statements about individuals;no quantifiers, no general statements.

We need something richer on top of RDF to define whatcounts as ‘semantically well-formed’ statements ⇒ RDFS

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Summary, 1

We can use intermediary nodes to aggregate a subset ofstatements.

Aggregates can be rooted in an ordinary resource node orin a blank node.

Blank nodes are referred to with a special namingconvention in triples: _:label.

Blank nodes can also be used for other things:

Referring to individuals via a cluster of properties.Expressing relations of arity > 2 (via two patterns).

RDF only allows us to make statements about individuals;no quantifiers, no general statements.

We need something richer on top of RDF to define whatcounts as ‘semantically well-formed’ statements ⇒ RDFS

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Summary, 1

We can use intermediary nodes to aggregate a subset ofstatements.

Aggregates can be rooted in an ordinary resource node orin a blank node.

Blank nodes are referred to with a special namingconvention in triples: _:label.

Blank nodes can also be used for other things:

Referring to individuals via a cluster of properties.Expressing relations of arity > 2 (via two patterns).

RDF only allows us to make statements about individuals;no quantifiers, no general statements.

We need something richer on top of RDF to define whatcounts as ‘semantically well-formed’ statements ⇒ RDFS

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Summary, 1

We can use intermediary nodes to aggregate a subset ofstatements.

Aggregates can be rooted in an ordinary resource node orin a blank node.

Blank nodes are referred to with a special namingconvention in triples: _:label.

Blank nodes can also be used for other things:

Referring to individuals via a cluster of properties.Expressing relations of arity > 2 (via two patterns).

RDF only allows us to make statements about individuals;no quantifiers, no general statements.

We need something richer on top of RDF to define whatcounts as ‘semantically well-formed’ statements ⇒ RDFS

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Summary, 1

We can use intermediary nodes to aggregate a subset ofstatements.

Aggregates can be rooted in an ordinary resource node orin a blank node.

Blank nodes are referred to with a special namingconvention in triples: _:label.

Blank nodes can also be used for other things:

Referring to individuals via a cluster of properties.

Expressing relations of arity > 2 (via two patterns).

RDF only allows us to make statements about individuals;no quantifiers, no general statements.

We need something richer on top of RDF to define whatcounts as ‘semantically well-formed’ statements ⇒ RDFS

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Summary, 1

We can use intermediary nodes to aggregate a subset ofstatements.

Aggregates can be rooted in an ordinary resource node orin a blank node.

Blank nodes are referred to with a special namingconvention in triples: _:label.

Blank nodes can also be used for other things:

Referring to individuals via a cluster of properties.Expressing relations of arity > 2 (via two patterns).

RDF only allows us to make statements about individuals;no quantifiers, no general statements.

We need something richer on top of RDF to define whatcounts as ‘semantically well-formed’ statements ⇒ RDFS

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Summary, 1

We can use intermediary nodes to aggregate a subset ofstatements.

Aggregates can be rooted in an ordinary resource node orin a blank node.

Blank nodes are referred to with a special namingconvention in triples: _:label.

Blank nodes can also be used for other things:

Referring to individuals via a cluster of properties.Expressing relations of arity > 2 (via two patterns).

RDF only allows us to make statements about individuals;no quantifiers, no general statements.

We need something richer on top of RDF to define whatcounts as ‘semantically well-formed’ statements ⇒ RDFS

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Summary, 1

We can use intermediary nodes to aggregate a subset ofstatements.

Aggregates can be rooted in an ordinary resource node orin a blank node.

Blank nodes are referred to with a special namingconvention in triples: _:label.

Blank nodes can also be used for other things:

Referring to individuals via a cluster of properties.Expressing relations of arity > 2 (via two patterns).

RDF only allows us to make statements about individuals;no quantifiers, no general statements.

We need something richer on top of RDF to define whatcounts as ‘semantically well-formed’ statements ⇒ RDFS

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Summary, 2

RDF Schema (RDFS) provides mechanisms for describing(simple) ontologies.

RDFS built on top of RDF, using rdf:type.

Provides

Class, subClassOfProperty, subPropertyOfdomain, range

Deliberately not ‘object-oriented’

Classes are primitives, not defined in terms of necessaryand sufficient properties.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Summary, 2

RDF Schema (RDFS) provides mechanisms for describing(simple) ontologies.

RDFS built on top of RDF, using rdf:type.

Provides

Class, subClassOfProperty, subPropertyOfdomain, range

Deliberately not ‘object-oriented’

Classes are primitives, not defined in terms of necessaryand sufficient properties.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Summary, 2

RDF Schema (RDFS) provides mechanisms for describing(simple) ontologies.

RDFS built on top of RDF, using rdf:type.

Provides

Class, subClassOfProperty, subPropertyOfdomain, range

Deliberately not ‘object-oriented’

Classes are primitives, not defined in terms of necessaryand sufficient properties.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Summary, 2

RDF Schema (RDFS) provides mechanisms for describing(simple) ontologies.

RDFS built on top of RDF, using rdf:type.

Provides

Class, subClassOf

Property, subPropertyOfdomain, range

Deliberately not ‘object-oriented’

Classes are primitives, not defined in terms of necessaryand sufficient properties.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Summary, 2

RDF Schema (RDFS) provides mechanisms for describing(simple) ontologies.

RDFS built on top of RDF, using rdf:type.

Provides

Class, subClassOfProperty, subPropertyOf

domain, range

Deliberately not ‘object-oriented’

Classes are primitives, not defined in terms of necessaryand sufficient properties.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Summary, 2

RDF Schema (RDFS) provides mechanisms for describing(simple) ontologies.

RDFS built on top of RDF, using rdf:type.

Provides

Class, subClassOfProperty, subPropertyOfdomain, range

Deliberately not ‘object-oriented’

Classes are primitives, not defined in terms of necessaryand sufficient properties.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Summary, 2

RDF Schema (RDFS) provides mechanisms for describing(simple) ontologies.

RDFS built on top of RDF, using rdf:type.

Provides

Class, subClassOfProperty, subPropertyOfdomain, range

Deliberately not ‘object-oriented’

Classes are primitives, not defined in terms of necessaryand sufficient properties.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Summary, 2

RDF Schema (RDFS) provides mechanisms for describing(simple) ontologies.

RDFS built on top of RDF, using rdf:type.

Provides

Class, subClassOfProperty, subPropertyOfdomain, range

Deliberately not ‘object-oriented’

Classes are primitives, not defined in terms of necessaryand sufficient properties.

Multi-agentSemantic Web

Systems:RDF DataStructures

Ewan Klein

Outline

Review: RDFBasicConcepts

RDF Graphs andTriples

StructuredValues

IntermediaryNodes

Blank Nodes

N-ary Relations

Containers

Digression onN3

RDFS

Summary

Reading

RDF in general

Passin: Chapter 2 (on RDF)

W3C RDF Primer http://www.w3.org/TR/rdf-primer/

N3 / Turtle

N3 Primer: http://www.w3.org/2000/10/swap/Primer

Turtle: http://www.dajobe.org/2004/01/turtle/

Recommended