Download - Semantic web Technology
![Page 1: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/1.jpg)
1
Web Ontology LanguageOWL
Semantic web technology
Reprepared by: Abdelrahman Abbas
Sudan University
![Page 2: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/2.jpg)
2
![Page 3: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/3.jpg)
3
RDFS as an Ontology Language
![Page 4: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/4.jpg)
4
Expressive limitations of RDF(S)
![Page 5: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/5.jpg)
5
Layering issues
![Page 6: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/6.jpg)
6
Stack of Languages XML
Surface syntax, no semantics XML Schema
Describes structure of XML documents RDF
Datamodel for \relations" between \things“ RDF Schema
RDF Vocabulary Definition Language OWL
A more expressive Vocabulary Definition Language
![Page 7: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/7.jpg)
7
RDF Schema recap RDFS provides
Classes Class hierarchies Properties Property hierarchies Domain and range restrictions
RDFS does not provide Property characteristics (inverse, transitive, ...) Local range restrictions Complex concept definitions Cardinality restrictions Disjointness axioms
![Page 8: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/8.jpg)
8
Extending RDF Schema OWL extends RDF Schema to a full-
edged knowledge representation language for the Web Logical expressions (and, or, not) (in)equality local properties required/optional properties required values enumerated classes symmetry, inverse
![Page 9: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/9.jpg)
9
Design Goals for OWL Shareable Changing over time Interoperability Inconsistency detection Balancing expressivity and
complexity Ease of use Compatible with existing standards Internationalisation
![Page 10: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/10.jpg)
10
Requirements for OWL Ontologies are object on the Web with their own meta-data, versioning, etc... Ontologies are extendable They contain classes, properties, data-
types, range/domain, individuals Equality (for classes, for individuals) Classes as instances Cardinality constraints XML syntax
![Page 11: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/11.jpg)
11
Objectives for OWL
![Page 12: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/12.jpg)
12
Language layers of OWL OWL Lite supports those users primarily
needing a classification hierarchy and simple constraints.
OWL DL supports those users who want the maximum expressiveness while retaining computational completeness (all
conclusions are guaranteed to be computable) and
decidability (all computations will finish in finite time).
![Page 13: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/13.jpg)
13
Language layers of OWL OWL Full is meant for users who want
maximum expressiveness and the syntactic freedom of RDF with no computational guarantees.
![Page 14: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/14.jpg)
14
Language layers of OWL: in simple words OWL Lite
Classification hierarchy Simple constraints
OWL DL Maximal expressiveness While maintaining tractability Standard formalization in a DL
OWL Full Very high expressiveness Losing tractability All syntactive freedom of RDF (self-modifying)
![Page 15: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/15.jpg)
15
Features of OWL language layers
OWL DL Negation Disjunction Full cardinality Enumerated
types hasValue
OWL Full Meta-classes Modify
language
OWL Lite• (sub)classes, individuals• (sub)properties, domain,
range• conjunction• (in)equality• cardinality 0/1• data types• inverse, transitive,• symmetric properties• someValuesFrom• allValuesFrom
![Page 16: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/16.jpg)
16
OWL Full
![Page 17: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/17.jpg)
17
OWL DL
![Page 18: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/18.jpg)
18
OWL Lite
![Page 19: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/19.jpg)
19
What is SKOS?Simple Knowledge Organization System
![Page 20: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/20.jpg)
20
SKOS is not enough… SKOS it is not a complete solution
it concentrates on the concepts only no characterization of properties in general simple from a logical perspective
ie, few inferences are possible
Ontology is the alternative
![Page 21: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/21.jpg)
21
Application may want more… Complex applications may want more
possibilities: characterization of properties identification of objects with different URI-s disjointness or equivalence of classes construct classes, not only name them more complex classification schemes can a program reason about some terms?
E.g.: “if «Person» resources «A» and «B» have the same
«foaf:email» property, then «A» and «B» are identical”
etc.
![Page 22: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/22.jpg)
22
Web Ontology Language = OWL OWL is an extra layer, a bit like RDFS or
SKOS own namespace, own terms it relies on RDF Schemas
It is a separate recommendation actually… there is a 2004 version of OWL
(“OWL 1”) and there is an update (“OWL 2”) published in
2009
![Page 23: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/23.jpg)
23
Term equivalences For classes:
owl:equivalentClass: two classes have the same individuals
owl:disjointWith: no individuals in common For properties:
owl:equivalentProperty remember the a:author vs. f:auteur?
owl:propertyDisjointWith
![Page 24: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/24.jpg)
24
Term equivalences For individuals:
owl:sameAs: two URIs refer to the same concept (“individual”)
owl:differentFrom: negation of owl:sameAs
![Page 25: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/25.jpg)
25
Other example: connecting to French
owl:equivalentClassa:Novel f:Roman
owl:equivalentPropertya:author f:auteur
![Page 26: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/26.jpg)
26
Typical usage of owl:sameAs Linking our example of Amsterdam from
one data set (DBpedia) to the other (Geonames):
<http://dbpedia.org/resource/Amsterdam> owl:sameAs <http://sws.geonames.org/2759793>;
This is the main mechanism of “Linking” in the Linked Open Data project
![Page 27: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/27.jpg)
27
Property characterization In OWL, one can characterize the
behavior of properties (symmetric, transitive, functional, reflexive, inverse functional…)
One property can be defined as the “inverse” of another
![Page 28: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/28.jpg)
28
What this means is… If the following holds in our triples:
:email rdf:type owl:InverseFunctionalProperty.
![Page 29: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/29.jpg)
29
What this means is… If the following holds in our triples:
:email rdf:type owl:InverseFunctionalProperty. <A> :email "mailto:[email protected]".<B> :email "mailto:[email protected]".
![Page 30: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/30.jpg)
30
What this means is… If the following holds in our triples:
:email rdf:type owl:InverseFunctionalProperty. <A> :email "mailto:[email protected]".<B> :email "mailto:[email protected]".
<A> owl:sameAs <B>.
then, processed through OWL, the following holds, too:
![Page 31: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/31.jpg)
31
Keys Inverse functional properties are
important for identification of individuals think of the email examples
But… identification based on one property may not be enough
![Page 32: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/32.jpg)
32
Keys
Identification is based on the identical values of two properties
The rule applies to persons only
“if two persons have the same emails and the samehomepages then they are identical”
![Page 33: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/33.jpg)
33
Previous rule in OWL
:Person rdf:type owl:Class; owl:hasKey (:email :homepage) .
![Page 34: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/34.jpg)
34
What it means is…If:
<A> rdf:type :Person ; :email "mailto:[email protected]"; :homepage "http://www.ex.org".
<B> rdf:type :Person ; :email "mailto:[email protected]"; :homepage "http://www.ex.org".
<A> owl:sameAs <B>.
then, processed through OWL, the following holds, too:
![Page 35: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/35.jpg)
35
Classes in OWL In RDFS, you can subclass existing
classes… that’s all In OWL, you can construct classes from
existing ones: enumerate its content through intersection, union, complement etc
![Page 36: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/36.jpg)
36
Enumerate class content
I.e., the class consists of exactly of those individuals and nothing else
:Currency rdf:type owl:Class; owl:oneOf (:€ :£ :$).
![Page 37: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/37.jpg)
37
Union of classes
Other possibilities: owl:complementOf, owl:intersectionOf, …
:Novel rdf:type owl:Class.:Short_Story rdf:type owl:Class.:Poetry rdf:type owl:Class.:Literature rdf:type owl:Class; owl:unionOf (:Novel :Short_Story :Poetry).
![Page 38: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/38.jpg)
38
For example…If:
:Novel rdf:type owl:Class.:Short_Story rdf:type owl:Class.:Poetry rdf:type owl:Class.:Literature rdf:type owl:Class; owl:unionOf (:Novel :Short_Story :Poetry).
<myWork> rdf:type :Novel .
<myWork> rdf:type :Literature .
then the following holds, too:
![Page 39: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/39.jpg)
39
It can be a bit more complicated…If:
:Novel rdf:type owl:Class.:Short_Story rdf:type owl:Class.:Poetry rdf:type owl:Class.:Literature rdf:type owlClass; owl:unionOf (:Novel :Short_Story :Poetry).
fr:Roman owl:equivalentClass :Novel .
<myWork> rdf:type fr:Roman .
<myWork> rdf:type :Literature .
then, through the combination of different terms, the following still holds:
![Page 40: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/40.jpg)
40
What we have so far… The OWL features listed so far are
already fairly powerful E.g., various databases can be linked via
owl:sameAs, functional or inverse functional properties, etc.
Many inferred relationship can be found using a traditional rule engine
![Page 41: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/41.jpg)
41
However… that may not be enough Very large vocabularies might require
even more complex features some major issues
the way classes (i.e., “concepts”) are defined handling of datatypes like intervals
OWL includes those extra features but… the inference engines become (much) more complex
![Page 42: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/42.jpg)
42
Example: property value restrictions New classes are created by restricting
the property values on a class For example: how would I characterize a
“listed price”? it is a price that is given in one of the
“allowed” currencies (€, £, or $) this defines a new class
![Page 43: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/43.jpg)
43
But: OWL is hard! The combination of class constructions with
various restrictions is extremely powerful What we have so far follows the same logic
as before extend the basic RDF and RDFS possibilities with
new features define their semantics, ie, what they “mean” in
terms of relationships expect to infer new relationships based on those
However… a full inference procedure is hard not implementable with simple rule engines, for
example
![Page 44: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/44.jpg)
44
OWL “species” or profiles OWL species comes to the fore:
restricting which terms can be used and under what circumstances (restrictions)
if one abides to those restrictions, then simpler inference engines can be used
They reflect compromises: expressiveness vs. implementability
![Page 45: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/45.jpg)
45
OWL Species
OWL Full
OWL DL
OWL EL OWL RL
OWL QL
![Page 46: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/46.jpg)
46
OWL Species• OWL 2 EL
Useful in applications employing ontologies that contain very large numbers of properties and/or classes. Basic reasoning problems can be performed in time that is polynomial with respect to the size of the ontology
OWL 2 QL is aimed at applications that use very large volumes of instance data, and where query answering is the most important reasoning task
OWL 2 RL :is aimed at applications that require scalable reasoning without sacrificing too much expressive power
![Page 47: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/47.jpg)
47
OWL RL Goal: to be implementable with rule
engines Usage follows a similar approach to
RDFS: merge the ontology and the instance data
into an RDF graph use the rule engine to add new triples (as
long as it is possible)
![Page 48: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/48.jpg)
48
What can be done in OWL RL? Many features are available:
identity of classes, instances, properties subproperties, subclasses, domains, ranges union and intersection of classes (but with some
restrictions) property characterizations (functional,
symmetric, etc) property chains keys some property restrictions
All examples so far could be inferred with OWL RL!
![Page 49: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/49.jpg)
49
Improved Search via Ontology (GoPubMed) Search results are re-ranked using
ontologies related terms are highlighted
![Page 50: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/50.jpg)
50
Improved Search via Ontology (Go3R) Same dataset, different ontology
(ontology is on non-animal experimentation)
![Page 51: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/51.jpg)
51
Rule Interchange Format (RIF)
![Page 52: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/52.jpg)
52
Why rules on the Semantic Web? Some conditions may be complicated in
ontologies (ie, OWL) eg, Horn rules: (P1 & P2 & …) → C
In many cases applications just want 2-3 rules to complete integration
rules may be an alternative to (OWL based) ontologies
![Page 53: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/53.jpg)
53
Things you may want to express An example from our bookshop
integration: “I buy a novel with over 500 pages if it costs
less than €20” something like (in an ad-hoc syntax):
{ ?x rdf:type p:Novel; p:page_number ?n; p:price [ p:currency :€; rdf:value ?z ]. ?n > "500"^^xsd:integer. ?z < "20.0"^^xsd:double. }=> { <me> p:buys ?x }
![Page 54: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/54.jpg)
54
Things you may want to express
p:Novel
?x
?n
:€
?z ?z<20
?n>500rdf:type
p:page_number
p:price
rdf:value
p:currency
p:buys ?xme
![Page 55: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/55.jpg)
55
RIF (Rule Interchange Format) The goals of the RIF work:
define simple rule language(s) for the (Semantic) Web
define interchange formats for rule based systems
RIF defines several “dialects” of languages
RIF is not bound to RDF only eg, relationships may involve more than 2
entities there are dialects for production rule systems
![Page 56: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/56.jpg)
56
RIF
![Page 57: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/57.jpg)
57
RIF Dialects
RIF Core DialectRIF Basic Logic Dialect (BLD)RIF Production Rule Dialect (PRD)RIF Framework for Logic Dialects (FLD)RIF Data-types and Built-Ins 1.0 (DTD)
![Page 58: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/58.jpg)
58
Role of dialects
![Page 59: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/59.jpg)
59
RIF Core The simplest RIF “dialect” A Core document is
directives like import, prefix settings for URI-s, etc
a sequence of logical implications
![Page 60: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/60.jpg)
60
RIF Core exampleDocument( Prefix(cpt http://example.com/concepts#) Prefix(person http://example.com/people#) Prefix(isbn http://…/isbn/)
Group ( Forall ?Buyer ?Book ?Seller ( cpt:buy(?Buyer ?Book ?Seller):- cpt:sell(?Seller ?Book ?Buyer) ) cpt:sell(person:John isbn:000651409X person:Mary) ))
This infers the following relationship:
cpt:buy(person:Mary isbn:000651409X person:John)
![Page 61: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/61.jpg)
61
Expressivity of RIF Core Formally: definite Horn without function
symbols, a.k.a. “Datalog” eg, p(a,b,c) is fine, but p(f(a),b,c) is not
Includes some extra features built-in datatypes and predicates “local” symbols, a bit like blank nodes
![Page 62: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/62.jpg)
62
Expressivity of RIF Core There are also “safeness measures”
eg, variable in a consequent should be in the antecedent
this secures a straightforward implementation strategy (“forward chaining”)
![Page 63: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/63.jpg)
63
RIF Syntaxes RIF defines
a “presentation syntax” a standard XML syntax to encode and
exchange the rules there is a draft for expressing Core in RDF
just like OWL is represented in RDF
![Page 64: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/64.jpg)
64
What about RDF and RIF? Typical scenario:
the “data” of the application is available in RDF
rules on that data is described using RIF the two sets are “bound” (eg, RIF “imports”
the data) a RIF processor produces new relationships
![Page 65: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/65.jpg)
65
To make RIF/RDF work Some technical issues should be settled:
RDF triples have to be representable in RIF various constructions (typing, datatypes, lists)
should be aligned the semantics of the two worlds should be
compatible There is a separate document that brings
these together
![Page 66: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/66.jpg)
66
Remember the what we wanted from Rules?{ ?x rdf:type p:Novel; p:page_number ?n; p:price [ p:currency :€; rdf:value ?z ]. ?n > "500"^^xsd:integer. ?z < "20.0"^^xsd:double. }=> { <me> p:buys ?x }
![Page 67: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/67.jpg)
67
The same with RIF Presentation syntaxDocument ( Prefix … Group ( Forall ?x ?n ?z ( <me>[p:buys->?x] :- And( ?x rdf:type p:Novel ?x[p:page_number->?n p:price->_abc] _abc[p:currency->:€ rdf:value->?z] External( pred:numeric-greater-than(?n "500"^^xsd:integer) ) External( pred:numeric-less-than(?z "20.0"^^xsd:double) ) ) ) ))
![Page 68: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/68.jpg)
68
Discovering new relationships…Forall ?x ?n ?z ( <me>[p:buys->?x] :- And( ?x # p:Novel ?x[p:page_number->?n p:price->_abc] _abc[p:currency->:€ rdf:value->?z] External( pred:numeric-greater-than(?n "500"^^xsd:integer) ) External( pred:numeric-less-than(?z "20.0"^^xsd:double) ) ))
![Page 69: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/69.jpg)
69
Discovering new relationships…Forall ?x ?n ?z ( <me>[p:buys->?x] :- And( ?x # p:Novel ?x[p:page_number->?n p:price->_abc] _abc[p:currency->:€ rdf:value->?z] External( pred:numeric-greater-than(?n "500"^^xsd:integer) ) External( pred:numeric-less-than(?z "20.0"^^xsd:double) ) ))
<http://…/isbn/…> a p:Novel; p:page_number "600"^^xsd:integer ; p:price [ rdf:value "15.0"^^xsd:double ; p:currency :€ ] .
combined with:
![Page 70: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/70.jpg)
70
Discovering new relationships…Forall ?x ?n ?z ( <me>[p:buys->?x] :- And( ?x # p:Novel ?x[p:page_number->?n p:price->_abc] _abc[p:currency->:€ rdf:value->?z] External( pred:numeric-greater-than(?n "500"^^xsd:integer) ) External( pred:numeric-less-than(?z "20.0"^^xsd:double) ) ))
<http://…/isbn/…> a p:Novel; p:page_number "600"^^xsd:integer ; p:price [ rdf:value "15.0"^^xsd:double ; p:currency :€ ] .
combined with:
<me> p:buys <http://…/isbn/…> .
yields:
![Page 71: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/71.jpg)
71
RIF vs. OWL? The expressivity of the two is fairly
identical the emphasis are a bit different
Using rules vs. ontologies may largely depend on available tools personal technical experience and expertise taste…
![Page 72: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/72.jpg)
72
What about OWL RL? OWL RL stands for “Rule Language”… OWL RL is in the intersection of RIF Core
and OWL inferences in OWL RL can be expressed with RIF
rules RIF Core engines can act as OWL RL engines
![Page 73: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/73.jpg)
73
Inferencing and SPARQL Question: how do SPARQL queries and
inferences work together? RDFS, OWL, and RIF produce new
relationships on what data do we query?
Answer: in current SPARQL, that is not defined
But, in SPARQL 1.1 it is…
![Page 74: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/74.jpg)
74
SPARQL 1.1 and RDFS/OWL/RIF
RDF Data with extra triples
SPARQL Pattern
entailment
pattern matching
RDF Data
RDFS/OWL/RIF data
SPARQL Pattern
Query result
SPARQL Engine with entailment
![Page 75: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/75.jpg)
75
Available documents, resources
![Page 76: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/76.jpg)
76
Available specifications: Primers, Guides The “RDF Primer” and the “OWL Guide”
give a formal introduction to RDF(S) and OWL
SKOS has its separate “SKOS Primer” GRDDL Primer and RDFa Primer have
been published The W3C Semantic Web Activity Wiki has
links to all the specifications
![Page 77: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/77.jpg)
77
“Core” vocabularies There are also a number “core vocabularies”
Dublin Core: about information resources, digital libraries, with extensions for rights, permissions, digital right management
FOAF: about people and their organizations DOAP: on the descriptions of software projects SIOC: Semantically-Interlinked Online Communities vCard in RDF …
One should never forget: ontologies/vocabularies must be shared and reused!
![Page 78: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/78.jpg)
78
Some books J. Pollock: Semantic Web for Dummies,
2009 G. Antoniu and F. van Harmelen:
Semantic Web Primer, 2nd edition in 2008
D. Allemang and J. Hendler: Semantic Web for the Working Ontologist, 2008
P. Hitzler, R. Sebastian, M. Krötzsch: Foundation of Semantic Web Technologies, 2009
…See the separate Wiki page collecting book references
![Page 79: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/79.jpg)
79
Lots of Tools (not an exhaustive list!) Categories:
Triple Stores Inference engines Converters Search engines Middleware CMS Semantic Web
browsers Development
environments Semantic Wikis …
Some names: Jena, AllegroGraph, Mulgara,
Sesame, flickurl, … TopBraid Suite, Virtuoso
environment, Falcon, Drupal 7, Redland, Pellet, …
Disco, Oracle 11g, RacerPro, IODT, Ontobroker, OWLIM, Talis Platform, …
RDF Gateway, RDFLib, Open Anzo, DartGrid, Zitgist, Ontotext, Protégé, …
Thetus publisher, SemanticWorks, SWI-Prolog, RDFStore…
…
![Page 80: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/80.jpg)
80
Further information Planet RDF aggregates a number of SW
blogs: http://planetrdf.com/
Semantic Web Interest Group a forum developers with archived (and public)
mailing list, and a constant IRC presence on freenode.net#swig
anybody can sign up on the list http://www.w3.org/2001/sw/interest/
![Page 81: Semantic web Technology](https://reader036.vdocuments.net/reader036/viewer/2022070602/587c4a141a28abc62c8b4885/html5/thumbnails/81.jpg)
81
Thank you for your attention!
These slides are also available on the Web: http://www.w3.org/2010/Talks/0622-SemTech-IH/