SlideShare a Scribd company logo
1 of 33
Download to read offline
RDF, RDFS and OWL:
Graph Data Models for the
Semantic Web
Semantic Web: The Idea
Semantic Web
 does not mean computers are going to understand the
meaning of everything on the web
 does mean that we can create some standards ways of
representing web-information such the logical pieces of
meaning can be mechanically manipulated by programs
(applications) in a generic way
 One such mechanism involves representing, manipulating and
using metadata
Linked Data: The Vision
Linked Data is about using the Web to
connect related data that wasn't
previously linked, or using the Web to
lower the barriers to linking data
currently linked using other methods.
Is there any reason to connect
these two pages?
What is RDF?
RDF (Resource Description Framework) was
originally designed to develop metadata for the
web
Example: my SDSC web page
http://www.sdsc.edu/~gupta
Amarnath Gupta gupta@sdsc.edu
dcterms:creator
name email
The individual whose name is
Amarnath Gupta, email
<gupta@sdsc.edu>, is the creator
of http://www.sdsc.edu/~gupta
Another Example
A book website
Now a program can “integrate”
information from the two sites
correctly (i.e., by URI and not by
value)
http://www.morganclaypool.com/
doi/abs/10.2200/S00374ED1V0
1Y201107DTM019
http://www.sdsc.edu/~gupta
dcterms:creator
dcterms:title
http://www.ics.uci.edu/faculty/profil
es/view_faculty.php?ucinetid=jain
dcterms:creator
Managing Event Information:
Modeling, Retrieval, and
Applications
Morgan &
Claypool
dcterms:publisher
name
URI Literal
Anonymous Node
Label from
Vocabulary
URIs
Name Definition Example
URL a character string that specifies
where a known resource is
available on the Internet and the
mechanism for retrieving it
scheme://username:password@domai
n:port/path?query_string#fragment_id
URI A character string used to identify a
name or a resource on the Internet
ftp://example.org/resource.txt
/relative/URI/with/absolute/path/to/res
ource.txt
URN A character string that designates
the universal name of something.
URNs usually use namespaces
urn:isan:0000-0000-9E59-0000-O-
0000-0000-2
Data Types in RDF
A data type is:
A set of values called the value space
A set of character strings called the lexical space
A lexical to value mapping
RDF has no built-in set of data types of its own
In RDF, one uses typed literals and explicitly indicates
what datatype should be used to interpret it
RDF takes many of its data types from XML Schema
 xsd:string, xsd:boolean, xsd:date
 ucsd:85740 exterms:age “31"^^xsd:integer
 ucsd:85740 exterms:age “pumpkin"^^xsd:integer
Valid and correct
Valid but incorrect
Representing the RDF graph (N-Triples)
Representing as a Collection of Edges
Subject Predicate Object
http://www.morganclaypool.com/doi/a
bs/10.2200/S00374ED1V01Y201107
DTM019
dcterms:creator http://www.sdsc.edu/~gupta
http://www.morganclaypool.com/doi/a
bs/10.2200/S00374ED1V01Y201107
DTM019
dcterms:title Managing Event Information:
Modeling, Retrieval, and
Applications
http://www.morganclaypool.com/doi/a
bs/10.2200/S00374ED1V01Y201107
DTM019
dcterms:publisher :_anon1
:_anon1 name Morgan & Claypool
http://www.morganclaypool.com/doi/a
bs/10.2200/S00374ED1V01Y201107
DTM019
dcterms:creator http://www.ics.uci.edu/faculty/pr
ofiles/view_faculty.php?ucinetid
=jain
Representing the RDF graph (XML)
Representing as Node Properties
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:edu="http://www.example.org/">
<rdf:Description
rdf:about="http://www.morganclaypool.com/doi/abs/10.2200/S00374ED1V01Y201107DTM019">
<dcterms:title>Managing Event Information: Modeling, Retrieval, and
Applications</dcterms:title>
<dcterms:creator rdf:resource=“http://www.sdsc.edu/~gupta”/>
<dcterms:creator rdf:resource=“http://www.ics.uci.edu/faculty/profiles/view_faculty.php?ucinetid=jain”/>
<dcterms:publisher rdf:resource =“:_anon1”/>
</rdf:Description>
…
Using Data Types in RDF/XML
A typical data record
<rdf:Description rdf:ID="item10245">
<exterms:model rdf:datatype="&xsd;string">Overnighter</exterms:model>
<exterms:sleeps rdf:datatype="&xsd;integer">2</exterms:sleeps>
<exterms:weight rdf:datatype="&xsd;decimal">2.4</exterms:weight>
<exterms:packedSize rdf:datatype="&xsd;integer">784</exterms:packedSize>
</rdf:Description>
RDF and Nested Relations
Consider a relation Product with a tuple-valued
attribute
The RDF way
Name ID Weight
Amount Unit
ABC 123 34.57 kg
Product:123 name ABC
Product:123 weight _wt1
_wt1 rdf:value “34.57”^^xsd:decimal
_wt1 unit kg
RDF “Collections”
RDF Collection
The s:students node
Has the built-in type rdf:List
Is a named closed collection
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:s="http://example.org/students/vocab#">
<rdf:Description rdf:about="http://example.org/courses/6.001">
<s:students rdf:parseType="Collection">
<rdf:Description rdf:about=“s:student/Amy"/>
<rdf:Description rdf:abouts:student/Mohamed"/>
<rdf:Description rdf:about=“s:student/Johann"/>
</s:students>
</rdf:Description>
<rdf:Description rdf:about="http://example.org/courses/6.001">
<s:students rdf:nodeID="sch1"/>
</rdf:Description>
<rdf:Description rdf:nodeID="sch1">
<rdf:first rdf:resource=“s:student/Amy"/>
<rdf:rest rdf:nodeID="sch2"/>
</rdf:Description>
<rdf:Description rdf:nodeID="sch2">
<rdf:first rdf:resource=“s:student/Mohamed"/>
<rdf:rest rdf:nodeID="sch3"/>
</rdf:Description>
<rdf:Description rdf:nodeID="sch3">
<rdf:first rdf:resource=“s:student/Johann"/>
<rdf:rest rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-
ns#nil"/>
</rdf:Description>
RDF “Collections” is a List
RDF “Containers”
rdf:bag – a named unordered collection
container membership
properties have names
of the form rdf:_n
Yes, it is
still
unordered
RDF “Containers”
rdf:alt – represents alternatives (or choices) in a
set
The semantics of rdf:alt
An Alt container is intended to have at least one
member, identified by the property rdf:_1.
This member is intended to be considered as the
default or preferred value.
Reification
Sometimes we want to make a statement about a statement
 “John’s hair-color is black” says his passport.
 The main statement as a triple
 (John hair-color black)
 Now, treat it as an entity called s100
 s100:(John hair-color black)
 Next, make a statement about st
 (John-passport makes-claim s100)
The process is called reification
 executed through rdf:statement
s100 rdf:type rdf:Statement
s100 rdf:subject URI(John)
S100 rdf:predicate URI(hair-color )
s100 rdf:object URI(black)
URI(John) URI(hair-color) URI(black)
S100 makes-claim URI(John-passport)
RDF Schema (RDFS)
RDF Schema provides a type system for RDF
Influenced by objected-oriented languages
Classes
any resource having an rdf:type property whose value
is the resource rdfs:Class.
Instance definition
Subclass definition
ex:MotorVehicle rdf:type rdfs:Class
ex:myVehicle rdf:type ex:MotorVehicle
ex:Van rdf:type rdfs:Class
ex:Van rdfs:subClassOf ex:MotorVehicle
Transitive property?
A class may be a subclass of multiple classes
RDFS in XML
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xml:base="http://example.org/schemas/vehicles">
<rdfs:Class rdf:ID="MotorVehicle"/>
<rdfs:Class rdf:ID="PassengerVehicle">
<rdfs:subClassOf rdf:resource="#MotorVehicle"/>
</rdfs:Class>
<rdfs:Class rdf:ID="Truck">
<rdfs:subClassOf rdf:resource="#MotorVehicle"/>
</rdfs:Class>
<rdfs:Class rdf:ID="Van">
<rdfs:subClassOf rdf:resource="#MotorVehicle"/>
</rdfs:Class>
<rdfs:Class rdf:ID="MiniVan">
<rdfs:subClassOf rdf:resource="#Van"/>
<rdfs:subClassOf rdf:resource="#PassengerVehicle"/>
</rdfs:Class>
</rdf:RDF>
Properties of Properties in RDFS
Property name Comment Domain Range
rdf:type
The subject is an instance
of a class.
rdfs:Resource rdfs:Class
rdfs:subClassOf
The subject is a subclass
of a class.
rdfs:Class rdfs:Class
rdfs:subPropertyOf
The subject is a
subproperty of a property.
rdf:Property rdf:Property
rdfs:domain
A domain of the subject
property.
rdf:Property rdfs:Class
rdfs:range
A range of the subject
property.
rdf:Property rdfs:Class
rdfs:label
A human-readable name
for the subject.
rdfs:Resource rdfs:Literal
rdfs:comment
A description of the
subject resource.
rdfs:Resource rdfs:Literal
rdfs:member
A member of the subject
resource.
rdfs:Resource rdfs:Resource
rdfs:isDefinedBy
The definition of the
subject resource.
rdfs:Resource rdfs:Resource
RDFS Subproperties
R1 is a property with domain X and range Y
R2 is a subproperty R1 if
(a R2 b) implies
 (a R1 b)
 typeOf(a) ≤ X, typeOf(b) ≤ Y
close_friend_of ≤ friend_of ≤ related_to ≤ knows
supervisor_of ≤ colleague_of ≤ works_with ≤ knows
John Karen Bobby Pierce
cfo knows fo
Abe
so
ww
Sam
RDFS Inferences
 Existential Rule. If μ : G → G is a mapping,
 then G  G
 Typing Rules. These are type inference rules
 1. (a dom c), (a x y)  (x type c)
 2. (a range d), (x a y)  (y type d)
 Subclass Rules. sc is reflexive and transitive
 1. (a type class)  (a sc a)
 2. (a sc b), (b sc c)  (a sc c)
 3. (a sc b), (x type a)  (x type b)
 Subproperty Rules. sp is reflexive and transitive
 1. (a type prop)  (a sp a)
 2. (a sp b), (b sp c)  (a sp c)
 3. (a sp b), (x a y)  (x b y)
What RDF/RDFS Cannot Model
 cardinality constraints on properties
 a Person has exactly one biological father.
 a given property (such as ex:hasAncestor) is transitive
 two different properties are inverses of each other
 a given property is a unique identifier (or key) for instances of a particular
class.
 two different classes (having different URIrefs) actually represent the same
class.
 two different instances (having different URIrefs) actually represent the
same individual.
 constraints on the range or cardinality of a property that depend on the
class of resource to which a property is applied,
 for a soccer team the ex:hasPlayers property has 11 values, while for a basketball team
the same property should have only 5 values.
 describe new classes in terms of combinations (e.g., unions and
intersections) of other classes, or to say that two classes are disjoint (i.e.,
that no resource is an instance of both classes).
OWL: The Web Ontology Language
Classes and Individuals
A class can be described by
 a class identifier (a URI reference)
 an exhaustive enumeration of individuals that together
form the instances of a class
 a property restriction
 the intersection, union, complement of two or more class
descriptions
Properties
 Object properties link individuals to individuals, or classes
to classes, or classes to individuals
 Datatype properties link individuals to data values.
<rdf:Description rdf:about="#William_Jefferson_Clinton“/>An individual
Class Properties in OWL
OWL adds a number of modeling elements
oneOf
Existential and Universal Quantification
<owl:Class>
<owl:oneOf rdf:parseType="Collection">
<owl:Thing rdf:about="#NorthAmerica"/>
<owl:Thing rdf:about="#SouthAmerica"/>
</owl:oneOf>
</owl:Class>
<owl:Restriction>
<owl:onProperty rdf:resource="#hasParent" />
<owl:someValuesFrom rdf:resource="#Physician" />
</owl:Restriction>
<owl:Restriction>
<owl:onProperty rdf:resource="#hasParent" />
<owl:allValuesFrom rdf:resource="#Musician" />
</owl:Restriction>
Classes as Logical Entities
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class>
<owl:oneOf rdf:parseType="Collection">
<owl:Thing rdf:about="#Tosca" />
<owl:Thing rdf:about="#Salome" />
</owl:oneOf>
</owl:Class>
<owl:Class>
<owl:oneOf rdf:parseType="Collection">
<owl:Thing rdf:about="#Turandot" />
<owl:Thing rdf:about="#Tosca" />
</owl:oneOf>
</owl:Class>
</owl:intersectionOf>
</owl:Class>
Can also use:
<owl:unionOf rdf:parseType="Collection">
More Logical Definitions
Classes defined through
negation
Class Axioms
<owl:Class> <owl:complementOf> <owl:Class rdf:about="#Meat"/> </owl:complementOf> </owl:Class>
<owl:Class>
<owl:complementOf>
<owl:Class rdf:about="#Meat"/>
</owl:complementOf>
</owl:Class>
<owl:Class rdf:ID="Operetta">
<rdfs:subClassOf rdf:resource="#MusicalWork"/>
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#hasLibrettist" />
<owl:minCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:minCardinality>
</owl:Restriction>
</rdfs:subClassOf>
<rdfs:subClassOf>
<owl:Class>
<owl:complementOf rdf:resource="#Opera"/>
</owl:Class>
</rdfs:subClassOf>
</owl:Class>
• Necessary but not sufficient condition
• Owl:equivalentClassOf is used for
necessary and sufficient conditions
Memory-Based Storage
Jena in-memory
architecture
Main Memory BitMaps
BitMat
Uses the observation that the no. of predicates is small
Storage of RDF/OWL Data
Triple Store Approach
Storing an edge table, often with an additional ID field
 Can be structured as a B+ tree
 Literals compressed with a mapping dictionary
 Strings are assigned IDs, and IDs are used in the triple stores
 Often additional indices are stored for each permutation of the
three columns and column pairs
 SPO, SOP, OSP, OPS, PSO, POS
 SP, SO, PO, PS, OP, OS
Typical issue
 Too many self-joins for queries
 Indexes reduce the number of joins
Storage of RDF/OWL Data
Using Relational back-ends
Property Tables Approach
Minerva System
Storage of RDF/OWL Data
Property Tables Approach (contd.)
Minerva System
There are many hybrid approaches
OWL is a Semantic Graph
One can view OWL documents as a graph with
special node and edge semantics
How do we query this graph?

More Related Content

What's hot

Introduction to RDF & SPARQL
Introduction to RDF & SPARQLIntroduction to RDF & SPARQL
Introduction to RDF & SPARQLOpen Data Support
 
Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -
Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -
Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -Dongbum Kim
 
RDF, SPARQL and Semantic Repositories
RDF, SPARQL and Semantic RepositoriesRDF, SPARQL and Semantic Repositories
RDF, SPARQL and Semantic RepositoriesMarin Dimitrov
 
Property graph vs. RDF Triplestore comparison in 2020
Property graph vs. RDF Triplestore comparison in 2020Property graph vs. RDF Triplestore comparison in 2020
Property graph vs. RDF Triplestore comparison in 2020Ontotext
 
SPARQL 사용법
SPARQL 사용법SPARQL 사용법
SPARQL 사용법홍수 허
 
Debunking some “RDF vs. Property Graph” Alternative Facts
Debunking some “RDF vs. Property Graph” Alternative FactsDebunking some “RDF vs. Property Graph” Alternative Facts
Debunking some “RDF vs. Property Graph” Alternative FactsNeo4j
 
An introduction to Semantic Web and Linked Data
An introduction to Semantic Web and Linked DataAn introduction to Semantic Web and Linked Data
An introduction to Semantic Web and Linked DataFabien Gandon
 
RDFS In A Nutshell V1
RDFS In A Nutshell V1RDFS In A Nutshell V1
RDFS In A Nutshell V1Fabien Gandon
 
Introduction to RDF
Introduction to RDFIntroduction to RDF
Introduction to RDFNarni Rajesh
 
RabbitMQ + CouchDB = Awesome
RabbitMQ + CouchDB = AwesomeRabbitMQ + CouchDB = Awesome
RabbitMQ + CouchDB = AwesomeLenz Gschwendtner
 
SPARQL-DL - Theory & Practice
SPARQL-DL - Theory & PracticeSPARQL-DL - Theory & Practice
SPARQL-DL - Theory & PracticeAdriel Café
 
Jena – A Semantic Web Framework for Java
Jena – A Semantic Web Framework for JavaJena – A Semantic Web Framework for Java
Jena – A Semantic Web Framework for JavaAleksander Pohl
 
Building Serverless Analytics Pipelines with AWS Glue - AWS Summit Sydney 2019
Building Serverless Analytics Pipelines with AWS Glue - AWS Summit Sydney 2019Building Serverless Analytics Pipelines with AWS Glue - AWS Summit Sydney 2019
Building Serverless Analytics Pipelines with AWS Glue - AWS Summit Sydney 2019Amazon Web Services
 
Querying the Semantic Web with SPARQL
Querying the Semantic Web with SPARQLQuerying the Semantic Web with SPARQL
Querying the Semantic Web with SPARQLEmanuele Della Valle
 

What's hot (20)

Introduction to RDF & SPARQL
Introduction to RDF & SPARQLIntroduction to RDF & SPARQL
Introduction to RDF & SPARQL
 
Introduction to SPARQL
Introduction to SPARQLIntroduction to SPARQL
Introduction to SPARQL
 
Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -
Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -
Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -
 
RDF, SPARQL and Semantic Repositories
RDF, SPARQL and Semantic RepositoriesRDF, SPARQL and Semantic Repositories
RDF, SPARQL and Semantic Repositories
 
SPARQL Tutorial
SPARQL TutorialSPARQL Tutorial
SPARQL Tutorial
 
Introduction to RDF
Introduction to RDFIntroduction to RDF
Introduction to RDF
 
Property graph vs. RDF Triplestore comparison in 2020
Property graph vs. RDF Triplestore comparison in 2020Property graph vs. RDF Triplestore comparison in 2020
Property graph vs. RDF Triplestore comparison in 2020
 
SPARQL 사용법
SPARQL 사용법SPARQL 사용법
SPARQL 사용법
 
SHACL Overview
SHACL OverviewSHACL Overview
SHACL Overview
 
SHACL by example
SHACL by exampleSHACL by example
SHACL by example
 
Debunking some “RDF vs. Property Graph” Alternative Facts
Debunking some “RDF vs. Property Graph” Alternative FactsDebunking some “RDF vs. Property Graph” Alternative Facts
Debunking some “RDF vs. Property Graph” Alternative Facts
 
An introduction to Semantic Web and Linked Data
An introduction to Semantic Web and Linked DataAn introduction to Semantic Web and Linked Data
An introduction to Semantic Web and Linked Data
 
RDFS In A Nutshell V1
RDFS In A Nutshell V1RDFS In A Nutshell V1
RDFS In A Nutshell V1
 
Introduction to RDF
Introduction to RDFIntroduction to RDF
Introduction to RDF
 
RabbitMQ + CouchDB = Awesome
RabbitMQ + CouchDB = AwesomeRabbitMQ + CouchDB = Awesome
RabbitMQ + CouchDB = Awesome
 
SPARQL-DL - Theory & Practice
SPARQL-DL - Theory & PracticeSPARQL-DL - Theory & Practice
SPARQL-DL - Theory & Practice
 
Jena – A Semantic Web Framework for Java
Jena – A Semantic Web Framework for JavaJena – A Semantic Web Framework for Java
Jena – A Semantic Web Framework for Java
 
Building Serverless Analytics Pipelines with AWS Glue - AWS Summit Sydney 2019
Building Serverless Analytics Pipelines with AWS Glue - AWS Summit Sydney 2019Building Serverless Analytics Pipelines with AWS Glue - AWS Summit Sydney 2019
Building Serverless Analytics Pipelines with AWS Glue - AWS Summit Sydney 2019
 
RDF validation tutorial
RDF validation tutorialRDF validation tutorial
RDF validation tutorial
 
Querying the Semantic Web with SPARQL
Querying the Semantic Web with SPARQLQuerying the Semantic Web with SPARQL
Querying the Semantic Web with SPARQL
 

Viewers also liked

Hands on Training – Graph Database with Neo4j
Hands on Training – Graph Database with Neo4jHands on Training – Graph Database with Neo4j
Hands on Training – Graph Database with Neo4jSerendio Inc.
 
Thinking Outside the Table
Thinking Outside the TableThinking Outside the Table
Thinking Outside the TableOntotext
 
Choosing the Right Graph Database to Succeed in Your Project
Choosing the Right Graph Database to Succeed in Your ProjectChoosing the Right Graph Database to Succeed in Your Project
Choosing the Right Graph Database to Succeed in Your ProjectOntotext
 
Big MDM Part 2: Using a Graph Database for MDM and Relationship Management
Big MDM Part 2: Using a Graph Database for MDM and Relationship ManagementBig MDM Part 2: Using a Graph Database for MDM and Relationship Management
Big MDM Part 2: Using a Graph Database for MDM and Relationship ManagementCaserta
 
An Introduction to NOSQL, Graph Databases and Neo4j
An Introduction to NOSQL, Graph Databases and Neo4jAn Introduction to NOSQL, Graph Databases and Neo4j
An Introduction to NOSQL, Graph Databases and Neo4jDebanjan Mahata
 
Open Standards for the Semantic Web: XML / RDF(S) / OWL / SOAP
Open Standards for the Semantic Web: XML / RDF(S) / OWL / SOAPOpen Standards for the Semantic Web: XML / RDF(S) / OWL / SOAP
Open Standards for the Semantic Web: XML / RDF(S) / OWL / SOAPPieter De Leenheer
 
Building Next-Generation Web APIs with JSON-LD and Hydra
Building Next-Generation Web APIs with JSON-LD and HydraBuilding Next-Generation Web APIs with JSON-LD and Hydra
Building Next-Generation Web APIs with JSON-LD and HydraMarkus Lanthaler
 
Using MongoDB as a high performance graph database
Using MongoDB as a high performance graph databaseUsing MongoDB as a high performance graph database
Using MongoDB as a high performance graph databaseChris Clarke
 
Introduction to Graph Databases
Introduction to Graph DatabasesIntroduction to Graph Databases
Introduction to Graph DatabasesMax De Marzi
 
Τα παιδιά ως κοινωνικοί ερευνητές. Οδηγός για δασκάλους και ...
Τα   παιδιά   ως   κοινωνικοί   ερευνητές.   Οδηγός   για   δασκάλους   και  ...Τα   παιδιά   ως   κοινωνικοί   ερευνητές.   Οδηγός   για   δασκάλους   και  ...
Τα παιδιά ως κοινωνικοί ερευνητές. Οδηγός για δασκάλους και ...Αννα Παππα
 
Webinar: Working with Graph Data in MongoDB
Webinar: Working with Graph Data in MongoDBWebinar: Working with Graph Data in MongoDB
Webinar: Working with Graph Data in MongoDBMongoDB
 
Web ontology language (owl)
Web ontology language (owl)Web ontology language (owl)
Web ontology language (owl)Ameer Sameer
 
Ontologies and Ontology Languages: RDFS, OWL, and SKOS: University of Florida...
Ontologies and Ontology Languages: RDFS, OWL, and SKOS: University of Florida...Ontologies and Ontology Languages: RDFS, OWL, and SKOS: University of Florida...
Ontologies and Ontology Languages: RDFS, OWL, and SKOS: University of Florida...Allison Jai O'Dell
 
Graph database Use Cases
Graph database Use CasesGraph database Use Cases
Graph database Use CasesMax De Marzi
 

Viewers also liked (16)

Hands on Training – Graph Database with Neo4j
Hands on Training – Graph Database with Neo4jHands on Training – Graph Database with Neo4j
Hands on Training – Graph Database with Neo4j
 
Thinking Outside the Table
Thinking Outside the TableThinking Outside the Table
Thinking Outside the Table
 
Choosing the Right Graph Database to Succeed in Your Project
Choosing the Right Graph Database to Succeed in Your ProjectChoosing the Right Graph Database to Succeed in Your Project
Choosing the Right Graph Database to Succeed in Your Project
 
Big MDM Part 2: Using a Graph Database for MDM and Relationship Management
Big MDM Part 2: Using a Graph Database for MDM and Relationship ManagementBig MDM Part 2: Using a Graph Database for MDM and Relationship Management
Big MDM Part 2: Using a Graph Database for MDM and Relationship Management
 
An Introduction to NOSQL, Graph Databases and Neo4j
An Introduction to NOSQL, Graph Databases and Neo4jAn Introduction to NOSQL, Graph Databases and Neo4j
An Introduction to NOSQL, Graph Databases and Neo4j
 
JSON-LD and MongoDB
JSON-LD and MongoDBJSON-LD and MongoDB
JSON-LD and MongoDB
 
Open Standards for the Semantic Web: XML / RDF(S) / OWL / SOAP
Open Standards for the Semantic Web: XML / RDF(S) / OWL / SOAPOpen Standards for the Semantic Web: XML / RDF(S) / OWL / SOAP
Open Standards for the Semantic Web: XML / RDF(S) / OWL / SOAP
 
Building Next-Generation Web APIs with JSON-LD and Hydra
Building Next-Generation Web APIs with JSON-LD and HydraBuilding Next-Generation Web APIs with JSON-LD and Hydra
Building Next-Generation Web APIs with JSON-LD and Hydra
 
Using MongoDB as a high performance graph database
Using MongoDB as a high performance graph databaseUsing MongoDB as a high performance graph database
Using MongoDB as a high performance graph database
 
Introduction to Graph Databases
Introduction to Graph DatabasesIntroduction to Graph Databases
Introduction to Graph Databases
 
Τα παιδιά ως κοινωνικοί ερευνητές. Οδηγός για δασκάλους και ...
Τα   παιδιά   ως   κοινωνικοί   ερευνητές.   Οδηγός   για   δασκάλους   και  ...Τα   παιδιά   ως   κοινωνικοί   ερευνητές.   Οδηγός   για   δασκάλους   και  ...
Τα παιδιά ως κοινωνικοί ερευνητές. Οδηγός για δασκάλους και ...
 
Webinar: Working with Graph Data in MongoDB
Webinar: Working with Graph Data in MongoDBWebinar: Working with Graph Data in MongoDB
Webinar: Working with Graph Data in MongoDB
 
Web ontology language (owl)
Web ontology language (owl)Web ontology language (owl)
Web ontology language (owl)
 
Ontologies and Ontology Languages: RDFS, OWL, and SKOS: University of Florida...
Ontologies and Ontology Languages: RDFS, OWL, and SKOS: University of Florida...Ontologies and Ontology Languages: RDFS, OWL, and SKOS: University of Florida...
Ontologies and Ontology Languages: RDFS, OWL, and SKOS: University of Florida...
 
Web 3.0
Web 3.0Web 3.0
Web 3.0
 
Graph database Use Cases
Graph database Use CasesGraph database Use Cases
Graph database Use Cases
 

Similar to Rdf data-model-and-storage

Triplestore and SPARQL
Triplestore and SPARQLTriplestore and SPARQL
Triplestore and SPARQLLino Valdivia
 
Graph databases & data integration v2
Graph databases & data integration v2Graph databases & data integration v2
Graph databases & data integration v2Dimitris Kontokostas
 
Semantic web
Semantic webSemantic web
Semantic webtariq1352
 
Data translation with SPARQL 1.1
Data translation with SPARQL 1.1Data translation with SPARQL 1.1
Data translation with SPARQL 1.1andreas_schultz
 
Explicit Semantics in Graph DBs Driving Digital Transformation With Neo4j
Explicit Semantics in Graph DBs Driving Digital Transformation With Neo4jExplicit Semantics in Graph DBs Driving Digital Transformation With Neo4j
Explicit Semantics in Graph DBs Driving Digital Transformation With Neo4jConnected Data World
 
Introduction To RDF and RDFS
Introduction To RDF and RDFSIntroduction To RDF and RDFS
Introduction To RDF and RDFSNilesh Wagmare
 
A Semantic Multimedia Web (Part 2)
A Semantic Multimedia Web (Part 2)A Semantic Multimedia Web (Part 2)
A Semantic Multimedia Web (Part 2)Raphael Troncy
 
MR^3: Meta-Model Management based on RDFs Revision Reflection
MR^3: Meta-Model Management based on RDFs Revision ReflectionMR^3: Meta-Model Management based on RDFs Revision Reflection
MR^3: Meta-Model Management based on RDFs Revision ReflectionTakeshi Morita
 
Understanding RDF: the Resource Description Framework in Context (1999)
Understanding RDF: the Resource Description Framework in Context  (1999)Understanding RDF: the Resource Description Framework in Context  (1999)
Understanding RDF: the Resource Description Framework in Context (1999)Dan Brickley
 
RDF APIs for .NET Framework
RDF APIs for .NET FrameworkRDF APIs for .NET Framework
RDF APIs for .NET FrameworkAdriana Ivanciu
 
Exposing relational database as rdf
Exposing relational database as rdfExposing relational database as rdf
Exposing relational database as rdfShakil Ahmed
 
Do it on your own - From 3 to 5 Star Linked Open Data with RMLio
Do it on your own - From 3 to 5 Star Linked Open Data with RMLioDo it on your own - From 3 to 5 Star Linked Open Data with RMLio
Do it on your own - From 3 to 5 Star Linked Open Data with RMLioOpen Knowledge Belgium
 
A Hands On Overview Of The Semantic Web
A Hands On Overview Of The Semantic WebA Hands On Overview Of The Semantic Web
A Hands On Overview Of The Semantic WebShamod Lacoul
 
Machine-Interpretable Dataset and Service Descriptions for Heterogeneous Data...
Machine-Interpretable Dataset and Service Descriptions for Heterogeneous Data...Machine-Interpretable Dataset and Service Descriptions for Heterogeneous Data...
Machine-Interpretable Dataset and Service Descriptions for Heterogeneous Data...andimou
 
Bio it 2005_rdf_workshop05
Bio it 2005_rdf_workshop05Bio it 2005_rdf_workshop05
Bio it 2005_rdf_workshop05Joanne Luciano
 

Similar to Rdf data-model-and-storage (20)

Triplestore and SPARQL
Triplestore and SPARQLTriplestore and SPARQL
Triplestore and SPARQL
 
Graph databases & data integration v2
Graph databases & data integration v2Graph databases & data integration v2
Graph databases & data integration v2
 
Semantic web
Semantic webSemantic web
Semantic web
 
Data translation with SPARQL 1.1
Data translation with SPARQL 1.1Data translation with SPARQL 1.1
Data translation with SPARQL 1.1
 
Explicit Semantics in Graph DBs Driving Digital Transformation With Neo4j
Explicit Semantics in Graph DBs Driving Digital Transformation With Neo4jExplicit Semantics in Graph DBs Driving Digital Transformation With Neo4j
Explicit Semantics in Graph DBs Driving Digital Transformation With Neo4j
 
Introduction To RDF and RDFS
Introduction To RDF and RDFSIntroduction To RDF and RDFS
Introduction To RDF and RDFS
 
A Semantic Multimedia Web (Part 2)
A Semantic Multimedia Web (Part 2)A Semantic Multimedia Web (Part 2)
A Semantic Multimedia Web (Part 2)
 
MR^3: Meta-Model Management based on RDFs Revision Reflection
MR^3: Meta-Model Management based on RDFs Revision ReflectionMR^3: Meta-Model Management based on RDFs Revision Reflection
MR^3: Meta-Model Management based on RDFs Revision Reflection
 
RDF and Java
RDF and JavaRDF and Java
RDF and Java
 
Understanding RDF: the Resource Description Framework in Context (1999)
Understanding RDF: the Resource Description Framework in Context  (1999)Understanding RDF: the Resource Description Framework in Context  (1999)
Understanding RDF: the Resource Description Framework in Context (1999)
 
SWT Lecture Session 5 - RDFS
SWT Lecture Session 5 - RDFSSWT Lecture Session 5 - RDFS
SWT Lecture Session 5 - RDFS
 
5 rdfs
5 rdfs5 rdfs
5 rdfs
 
RDF briefing
RDF briefingRDF briefing
RDF briefing
 
RDF APIs for .NET Framework
RDF APIs for .NET FrameworkRDF APIs for .NET Framework
RDF APIs for .NET Framework
 
SWT Lecture Session 2 - RDF
SWT Lecture Session 2 - RDFSWT Lecture Session 2 - RDF
SWT Lecture Session 2 - RDF
 
Exposing relational database as rdf
Exposing relational database as rdfExposing relational database as rdf
Exposing relational database as rdf
 
Do it on your own - From 3 to 5 Star Linked Open Data with RMLio
Do it on your own - From 3 to 5 Star Linked Open Data with RMLioDo it on your own - From 3 to 5 Star Linked Open Data with RMLio
Do it on your own - From 3 to 5 Star Linked Open Data with RMLio
 
A Hands On Overview Of The Semantic Web
A Hands On Overview Of The Semantic WebA Hands On Overview Of The Semantic Web
A Hands On Overview Of The Semantic Web
 
Machine-Interpretable Dataset and Service Descriptions for Heterogeneous Data...
Machine-Interpretable Dataset and Service Descriptions for Heterogeneous Data...Machine-Interpretable Dataset and Service Descriptions for Heterogeneous Data...
Machine-Interpretable Dataset and Service Descriptions for Heterogeneous Data...
 
Bio it 2005_rdf_workshop05
Bio it 2005_rdf_workshop05Bio it 2005_rdf_workshop05
Bio it 2005_rdf_workshop05
 

More from 灿辉 葛

ChatGPT 研究框架(2023).pdf
ChatGPT 研究框架(2023).pdfChatGPT 研究框架(2023).pdf
ChatGPT 研究框架(2023).pdf灿辉 葛
 
Hearst Faceted Metadata for Site Navigation and Search
Hearst Faceted Metadata for Site Navigation and SearchHearst Faceted Metadata for Site Navigation and Search
Hearst Faceted Metadata for Site Navigation and Search灿辉 葛
 
Amazon 物流信息服务分享
Amazon 物流信息服务分享Amazon 物流信息服务分享
Amazon 物流信息服务分享灿辉 葛
 
Steve jobs-speech-text
Steve jobs-speech-textSteve jobs-speech-text
Steve jobs-speech-text灿辉 葛
 
The+presentation+secrets+of+steve+jobs
The+presentation+secrets+of+steve+jobsThe+presentation+secrets+of+steve+jobs
The+presentation+secrets+of+steve+jobs灿辉 葛
 
The lifeofstevejobs
The lifeofstevejobsThe lifeofstevejobs
The lifeofstevejobs灿辉 葛
 
Steve jobs-speech-text
Steve jobs-speech-textSteve jobs-speech-text
Steve jobs-speech-text灿辉 葛
 
Steve jobs-magic-kingdom-bw
Steve jobs-magic-kingdom-bwSteve jobs-magic-kingdom-bw
Steve jobs-magic-kingdom-bw灿辉 葛
 
Steve jobs interview
Steve jobs interviewSteve jobs interview
Steve jobs interview灿辉 葛
 

More from 灿辉 葛 (10)

ChatGPT 研究框架(2023).pdf
ChatGPT 研究框架(2023).pdfChatGPT 研究框架(2023).pdf
ChatGPT 研究框架(2023).pdf
 
Hearst Faceted Metadata for Site Navigation and Search
Hearst Faceted Metadata for Site Navigation and SearchHearst Faceted Metadata for Site Navigation and Search
Hearst Faceted Metadata for Site Navigation and Search
 
Amazon 物流信息服务分享
Amazon 物流信息服务分享Amazon 物流信息服务分享
Amazon 物流信息服务分享
 
Steve jobs-speech-text
Steve jobs-speech-textSteve jobs-speech-text
Steve jobs-speech-text
 
The+presentation+secrets+of+steve+jobs
The+presentation+secrets+of+steve+jobsThe+presentation+secrets+of+steve+jobs
The+presentation+secrets+of+steve+jobs
 
Jobs
JobsJobs
Jobs
 
The lifeofstevejobs
The lifeofstevejobsThe lifeofstevejobs
The lifeofstevejobs
 
Steve jobs-speech-text
Steve jobs-speech-textSteve jobs-speech-text
Steve jobs-speech-text
 
Steve jobs-magic-kingdom-bw
Steve jobs-magic-kingdom-bwSteve jobs-magic-kingdom-bw
Steve jobs-magic-kingdom-bw
 
Steve jobs interview
Steve jobs interviewSteve jobs interview
Steve jobs interview
 

Recently uploaded

Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 

Recently uploaded (20)

Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

Rdf data-model-and-storage

  • 1. RDF, RDFS and OWL: Graph Data Models for the Semantic Web
  • 2. Semantic Web: The Idea Semantic Web  does not mean computers are going to understand the meaning of everything on the web  does mean that we can create some standards ways of representing web-information such the logical pieces of meaning can be mechanically manipulated by programs (applications) in a generic way  One such mechanism involves representing, manipulating and using metadata
  • 3. Linked Data: The Vision Linked Data is about using the Web to connect related data that wasn't previously linked, or using the Web to lower the barriers to linking data currently linked using other methods.
  • 4. Is there any reason to connect these two pages?
  • 5. What is RDF? RDF (Resource Description Framework) was originally designed to develop metadata for the web Example: my SDSC web page http://www.sdsc.edu/~gupta Amarnath Gupta gupta@sdsc.edu dcterms:creator name email The individual whose name is Amarnath Gupta, email <gupta@sdsc.edu>, is the creator of http://www.sdsc.edu/~gupta
  • 6. Another Example A book website Now a program can “integrate” information from the two sites correctly (i.e., by URI and not by value) http://www.morganclaypool.com/ doi/abs/10.2200/S00374ED1V0 1Y201107DTM019 http://www.sdsc.edu/~gupta dcterms:creator dcterms:title http://www.ics.uci.edu/faculty/profil es/view_faculty.php?ucinetid=jain dcterms:creator Managing Event Information: Modeling, Retrieval, and Applications Morgan & Claypool dcterms:publisher name URI Literal Anonymous Node Label from Vocabulary
  • 7. URIs Name Definition Example URL a character string that specifies where a known resource is available on the Internet and the mechanism for retrieving it scheme://username:password@domai n:port/path?query_string#fragment_id URI A character string used to identify a name or a resource on the Internet ftp://example.org/resource.txt /relative/URI/with/absolute/path/to/res ource.txt URN A character string that designates the universal name of something. URNs usually use namespaces urn:isan:0000-0000-9E59-0000-O- 0000-0000-2
  • 8. Data Types in RDF A data type is: A set of values called the value space A set of character strings called the lexical space A lexical to value mapping RDF has no built-in set of data types of its own In RDF, one uses typed literals and explicitly indicates what datatype should be used to interpret it RDF takes many of its data types from XML Schema  xsd:string, xsd:boolean, xsd:date  ucsd:85740 exterms:age “31"^^xsd:integer  ucsd:85740 exterms:age “pumpkin"^^xsd:integer Valid and correct Valid but incorrect
  • 9. Representing the RDF graph (N-Triples) Representing as a Collection of Edges Subject Predicate Object http://www.morganclaypool.com/doi/a bs/10.2200/S00374ED1V01Y201107 DTM019 dcterms:creator http://www.sdsc.edu/~gupta http://www.morganclaypool.com/doi/a bs/10.2200/S00374ED1V01Y201107 DTM019 dcterms:title Managing Event Information: Modeling, Retrieval, and Applications http://www.morganclaypool.com/doi/a bs/10.2200/S00374ED1V01Y201107 DTM019 dcterms:publisher :_anon1 :_anon1 name Morgan & Claypool http://www.morganclaypool.com/doi/a bs/10.2200/S00374ED1V01Y201107 DTM019 dcterms:creator http://www.ics.uci.edu/faculty/pr ofiles/view_faculty.php?ucinetid =jain
  • 10. Representing the RDF graph (XML) Representing as Node Properties <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:edu="http://www.example.org/"> <rdf:Description rdf:about="http://www.morganclaypool.com/doi/abs/10.2200/S00374ED1V01Y201107DTM019"> <dcterms:title>Managing Event Information: Modeling, Retrieval, and Applications</dcterms:title> <dcterms:creator rdf:resource=“http://www.sdsc.edu/~gupta”/> <dcterms:creator rdf:resource=“http://www.ics.uci.edu/faculty/profiles/view_faculty.php?ucinetid=jain”/> <dcterms:publisher rdf:resource =“:_anon1”/> </rdf:Description> …
  • 11. Using Data Types in RDF/XML A typical data record <rdf:Description rdf:ID="item10245"> <exterms:model rdf:datatype="&xsd;string">Overnighter</exterms:model> <exterms:sleeps rdf:datatype="&xsd;integer">2</exterms:sleeps> <exterms:weight rdf:datatype="&xsd;decimal">2.4</exterms:weight> <exterms:packedSize rdf:datatype="&xsd;integer">784</exterms:packedSize> </rdf:Description>
  • 12. RDF and Nested Relations Consider a relation Product with a tuple-valued attribute The RDF way Name ID Weight Amount Unit ABC 123 34.57 kg Product:123 name ABC Product:123 weight _wt1 _wt1 rdf:value “34.57”^^xsd:decimal _wt1 unit kg
  • 13. RDF “Collections” RDF Collection The s:students node Has the built-in type rdf:List Is a named closed collection <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:s="http://example.org/students/vocab#"> <rdf:Description rdf:about="http://example.org/courses/6.001"> <s:students rdf:parseType="Collection"> <rdf:Description rdf:about=“s:student/Amy"/> <rdf:Description rdf:abouts:student/Mohamed"/> <rdf:Description rdf:about=“s:student/Johann"/> </s:students> </rdf:Description>
  • 14. <rdf:Description rdf:about="http://example.org/courses/6.001"> <s:students rdf:nodeID="sch1"/> </rdf:Description> <rdf:Description rdf:nodeID="sch1"> <rdf:first rdf:resource=“s:student/Amy"/> <rdf:rest rdf:nodeID="sch2"/> </rdf:Description> <rdf:Description rdf:nodeID="sch2"> <rdf:first rdf:resource=“s:student/Mohamed"/> <rdf:rest rdf:nodeID="sch3"/> </rdf:Description> <rdf:Description rdf:nodeID="sch3"> <rdf:first rdf:resource=“s:student/Johann"/> <rdf:rest rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax- ns#nil"/> </rdf:Description> RDF “Collections” is a List
  • 15. RDF “Containers” rdf:bag – a named unordered collection container membership properties have names of the form rdf:_n Yes, it is still unordered
  • 16. RDF “Containers” rdf:alt – represents alternatives (or choices) in a set The semantics of rdf:alt An Alt container is intended to have at least one member, identified by the property rdf:_1. This member is intended to be considered as the default or preferred value.
  • 17. Reification Sometimes we want to make a statement about a statement  “John’s hair-color is black” says his passport.  The main statement as a triple  (John hair-color black)  Now, treat it as an entity called s100  s100:(John hair-color black)  Next, make a statement about st  (John-passport makes-claim s100) The process is called reification  executed through rdf:statement s100 rdf:type rdf:Statement s100 rdf:subject URI(John) S100 rdf:predicate URI(hair-color ) s100 rdf:object URI(black) URI(John) URI(hair-color) URI(black) S100 makes-claim URI(John-passport)
  • 18. RDF Schema (RDFS) RDF Schema provides a type system for RDF Influenced by objected-oriented languages Classes any resource having an rdf:type property whose value is the resource rdfs:Class. Instance definition Subclass definition ex:MotorVehicle rdf:type rdfs:Class ex:myVehicle rdf:type ex:MotorVehicle ex:Van rdf:type rdfs:Class ex:Van rdfs:subClassOf ex:MotorVehicle Transitive property? A class may be a subclass of multiple classes
  • 19. RDFS in XML <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xml:base="http://example.org/schemas/vehicles"> <rdfs:Class rdf:ID="MotorVehicle"/> <rdfs:Class rdf:ID="PassengerVehicle"> <rdfs:subClassOf rdf:resource="#MotorVehicle"/> </rdfs:Class> <rdfs:Class rdf:ID="Truck"> <rdfs:subClassOf rdf:resource="#MotorVehicle"/> </rdfs:Class> <rdfs:Class rdf:ID="Van"> <rdfs:subClassOf rdf:resource="#MotorVehicle"/> </rdfs:Class> <rdfs:Class rdf:ID="MiniVan"> <rdfs:subClassOf rdf:resource="#Van"/> <rdfs:subClassOf rdf:resource="#PassengerVehicle"/> </rdfs:Class> </rdf:RDF>
  • 20. Properties of Properties in RDFS Property name Comment Domain Range rdf:type The subject is an instance of a class. rdfs:Resource rdfs:Class rdfs:subClassOf The subject is a subclass of a class. rdfs:Class rdfs:Class rdfs:subPropertyOf The subject is a subproperty of a property. rdf:Property rdf:Property rdfs:domain A domain of the subject property. rdf:Property rdfs:Class rdfs:range A range of the subject property. rdf:Property rdfs:Class rdfs:label A human-readable name for the subject. rdfs:Resource rdfs:Literal rdfs:comment A description of the subject resource. rdfs:Resource rdfs:Literal rdfs:member A member of the subject resource. rdfs:Resource rdfs:Resource rdfs:isDefinedBy The definition of the subject resource. rdfs:Resource rdfs:Resource
  • 21. RDFS Subproperties R1 is a property with domain X and range Y R2 is a subproperty R1 if (a R2 b) implies  (a R1 b)  typeOf(a) ≤ X, typeOf(b) ≤ Y close_friend_of ≤ friend_of ≤ related_to ≤ knows supervisor_of ≤ colleague_of ≤ works_with ≤ knows John Karen Bobby Pierce cfo knows fo Abe so ww Sam
  • 22. RDFS Inferences  Existential Rule. If μ : G → G is a mapping,  then G  G  Typing Rules. These are type inference rules  1. (a dom c), (a x y)  (x type c)  2. (a range d), (x a y)  (y type d)  Subclass Rules. sc is reflexive and transitive  1. (a type class)  (a sc a)  2. (a sc b), (b sc c)  (a sc c)  3. (a sc b), (x type a)  (x type b)  Subproperty Rules. sp is reflexive and transitive  1. (a type prop)  (a sp a)  2. (a sp b), (b sp c)  (a sp c)  3. (a sp b), (x a y)  (x b y)
  • 23. What RDF/RDFS Cannot Model  cardinality constraints on properties  a Person has exactly one biological father.  a given property (such as ex:hasAncestor) is transitive  two different properties are inverses of each other  a given property is a unique identifier (or key) for instances of a particular class.  two different classes (having different URIrefs) actually represent the same class.  two different instances (having different URIrefs) actually represent the same individual.  constraints on the range or cardinality of a property that depend on the class of resource to which a property is applied,  for a soccer team the ex:hasPlayers property has 11 values, while for a basketball team the same property should have only 5 values.  describe new classes in terms of combinations (e.g., unions and intersections) of other classes, or to say that two classes are disjoint (i.e., that no resource is an instance of both classes).
  • 24. OWL: The Web Ontology Language Classes and Individuals A class can be described by  a class identifier (a URI reference)  an exhaustive enumeration of individuals that together form the instances of a class  a property restriction  the intersection, union, complement of two or more class descriptions Properties  Object properties link individuals to individuals, or classes to classes, or classes to individuals  Datatype properties link individuals to data values. <rdf:Description rdf:about="#William_Jefferson_Clinton“/>An individual
  • 25. Class Properties in OWL OWL adds a number of modeling elements oneOf Existential and Universal Quantification <owl:Class> <owl:oneOf rdf:parseType="Collection"> <owl:Thing rdf:about="#NorthAmerica"/> <owl:Thing rdf:about="#SouthAmerica"/> </owl:oneOf> </owl:Class> <owl:Restriction> <owl:onProperty rdf:resource="#hasParent" /> <owl:someValuesFrom rdf:resource="#Physician" /> </owl:Restriction> <owl:Restriction> <owl:onProperty rdf:resource="#hasParent" /> <owl:allValuesFrom rdf:resource="#Musician" /> </owl:Restriction>
  • 26. Classes as Logical Entities <owl:Class> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class> <owl:oneOf rdf:parseType="Collection"> <owl:Thing rdf:about="#Tosca" /> <owl:Thing rdf:about="#Salome" /> </owl:oneOf> </owl:Class> <owl:Class> <owl:oneOf rdf:parseType="Collection"> <owl:Thing rdf:about="#Turandot" /> <owl:Thing rdf:about="#Tosca" /> </owl:oneOf> </owl:Class> </owl:intersectionOf> </owl:Class> Can also use: <owl:unionOf rdf:parseType="Collection">
  • 27. More Logical Definitions Classes defined through negation Class Axioms <owl:Class> <owl:complementOf> <owl:Class rdf:about="#Meat"/> </owl:complementOf> </owl:Class> <owl:Class> <owl:complementOf> <owl:Class rdf:about="#Meat"/> </owl:complementOf> </owl:Class> <owl:Class rdf:ID="Operetta"> <rdfs:subClassOf rdf:resource="#MusicalWork"/> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#hasLibrettist" /> <owl:minCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:minCardinality> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Class> <owl:complementOf rdf:resource="#Opera"/> </owl:Class> </rdfs:subClassOf> </owl:Class> • Necessary but not sufficient condition • Owl:equivalentClassOf is used for necessary and sufficient conditions
  • 29. Main Memory BitMaps BitMat Uses the observation that the no. of predicates is small
  • 30. Storage of RDF/OWL Data Triple Store Approach Storing an edge table, often with an additional ID field  Can be structured as a B+ tree  Literals compressed with a mapping dictionary  Strings are assigned IDs, and IDs are used in the triple stores  Often additional indices are stored for each permutation of the three columns and column pairs  SPO, SOP, OSP, OPS, PSO, POS  SP, SO, PO, PS, OP, OS Typical issue  Too many self-joins for queries  Indexes reduce the number of joins
  • 31. Storage of RDF/OWL Data Using Relational back-ends Property Tables Approach Minerva System
  • 32. Storage of RDF/OWL Data Property Tables Approach (contd.) Minerva System There are many hybrid approaches
  • 33. OWL is a Semantic Graph One can view OWL documents as a graph with special node and edge semantics How do we query this graph?