Linked Data &
Semantic Web
Technology
The Semantic Web
Part 9. Web Ontology Language (OWL)
Dr. Myungjin Lee
Linked Data & Semantic Web Technology
Why RDF(S) is not enough
2
Man Woman∩ = Ø
Person Person
descendant
Person
descendant
descendant
Husband Wife
1:1
_01 Action
hasGenre
ActionMovie
subClassOf
Genre
type
Linked Data & Semantic Web Technology
Web Ontology Language (OWL)
• to provide a language that can be used to describe the classes
and relations between them
• Recommendations for OWL
– OWL: W3C Recommendation 2004
– OWL 2: W3C Recommendation 2009
• RDF(S) and OWL
– RDF Schema enables you to express very rudimentary relationships
and has limited inferencing capability.
– OWL enables you to express much richer relationships, thus yielding a
much enhanced inferencing capability.
3
Linked Data & Semantic Web Technology
The Species of OWL
• OWL Lite
– primarily needing a classification hierarchy and simple constraint
features
– ex. only to permit cardinality values of 0 or 1
– SHIF(D)
• OWL DL
– the maximum expressiveness without losing computational
completeness and decidability of reasoning systems
– SHOIN(D)
• OWL Full
– the maximum expressiveness and the syntactic freedom of RDF with no
computational guarantees
4
Linked Data & Semantic Web Technology
The Species of OWL
• OWL Lite Synopsis
• OWL DL and Full Synopsis
5
Linked Data & Semantic Web Technology
Namespaces for Ontology
• Namespace
– a precise indication of what specific vocabularies are being used
– to include a set of XML namespace declarations enclosed in an opening
rdf:RDF tag
6
<rdf:RDF
xmlns ="http://www.w3.org/TR/2004/REC-owl-guide-20040210/wine#"
xmlns:vin ="http://www.w3.org/TR/2004/REC-owl-guide-20040210/wine#"
xml:base ="http://www.w3.org/TR/2004/REC-owl-guide-20040210/wine#"
xmlns:food="http://www.w3.org/TR/2004/REC-owl-guide-20040210/food#"
xmlns:owl ="http://www.w3.org/2002/07/owl#"
xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:xsd ="http://www.w3.org/2001/XMLSchema#">
…
</rdf:RDF>
Linked Data & Semantic Web Technology
Ontology Headers
• Ontology Headers
– a collection of assertions about the ontology grouped under an
owl:Ontology tag for comments, version control and inclusion of other
ontologies
• Syntax
– owl:Ontology element
• a place to collect much of the OWL meta-data for the document
– owl:priorVersion element
• a standard tag intended to provide hooks for version control systems working with
ontologies
– owl:imports element
• an include-style mechanism
7
<owl:Ontology rdf:about="">
<rdfs:comment>An example OWL ontology</rdfs:comment>
<owl:priorVersion rdf:resource="http://www.w3.org/TR/2003/PR-owl-guide-20031215/wine"/>
<owl:imports rdf:resource="http://www.w3.org/TR/2004/REC-owl-guide-20040210/food"/>
<rdfs:label>Wine Ontology</rdfs:label>
...
</owl:Ontology>
Linked Data & Semantic Web Technology
Building Blocks of OWL
• Classes
– comparable with classes in RDFS
• Individuals
– comparable with objects in RDFS
• Properties
– comparable with properties in RDFS
8
Linked Data & Semantic Web Technology
Simple Named Classes
• owl:Thing
– Every individual in the OWL world is a member of the class
owl:Thing.
– Each user-defined class is implicitly a subclass of owl:Thing.
• owl:Class
– to define a group of individuals
– a subclass of rdfs:Class
• rdfs:subClassOf
– the fundamental taxonomic constructor for classes
– If X is a subclass of Y, then every instance of X is also an instance of Y.
– The rdfs:subClassOf relation is transitive.
• If X is a subclass of Y and Y a subclass of Z then X is a subclass of Z.
9
<owl:Class rdf:ID="Winery"/>
<owl:Class rdf:ID="Region"/>
<owl:Class rdf:ID="ConsumableThing"/>
<owl:Class rdf:ID="PotableLiquid">
<rdfs:subClassOf rdf:resource="#ConsumableThing" />
...
</owl:Class>
Linked Data & Semantic Web Technology
Individuals
• Individuals
– to describe members of classes using rdf:type
10
<Region rdf:ID="CentralCoastRegion" />
<owl:Thing rdf:ID="CentralCoastRegion" />
<owl:Thing rdf:about="#CentralCoastRegion">
<rdf:type rdf:resource="#Region"/>
</owl:Thing>
Linked Data & Semantic Web Technology
Defining Properties
• Property
– a binary relation
• Two types of properties
– distinguish properties according to whether they relate individuals to
individuals (object properties) or individuals to datatypes (datatype
properties)
• datatype property
– relations between instances of classes and RDF literals and XML Schema
datatypes
• object property
– relations between instances of two classes
11
rdf:Property
owl:ObjectProperty
rdfs:subClassOf
owl:DatatypeProperty
rdfs:subClassOf
Linked Data & Semantic Web Technology
Object Property
• Declaration of Object Property
12
<owl:ObjectProperty rdf:ID="madeFromGrape">
<rdfs:domain rdf:resource="#Wine"/>
<rdfs:range rdf:resource="#WineGrape"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:ID="course">
<rdfs:domain rdf:resource="#Meal" />
<rdfs:range rdf:resource="#MealCourse" />
</owl:ObjectProperty>
<owl:Thing rdf:ID="LindemansBin65Chardonnay">
<madeFromGrape rdf:resource="#ChardonnayGrape" />
</owl:Thing>
rdf:type
Linked Data & Semantic Web Technology
Properties and Datatypes
• OWL uses most of the built-in XML Schema datatypes.
13
xsd:string xsd:normalizedString xsd:boolean
xsd:decimal xsd:float xsd:double
xsd:integer xsd:nonNegativeInteger xsd:positiveInteger
xsd:nonPositiveInteger xsd:negativeInteger xsd:long
xsd:int xsd:short xsd:byte
xsd:unsignedLong xsd:unsignedInt xsd:unsignedShort
xsd:unsignedByte xsd:hexBinary xsd:base64Binary
xsd:dateTime xsd:time xsd:date
xsd:gYearMonth xsd:gYear xsd:gMonthDay
xsd:gDay xsd:gMonth xsd:anyURI
xsd:token xsd:language xsd:NMTOKEN
xsd:Name xsd:NCName
<owl:Class rdf:ID="VintageYear" />
<owl:DatatypeProperty rdf:ID="yearValue">
<rdfs:domain rdf:resource="#VintageYear" />
<rdfs:range rdf:resource="&xsd;positiveInteger"/>
</owl:DatatypeProperty>
<VintageYear rdf:ID="Year1998">
<yearValue rdf:datatype="&xsd;positiveInteger">1998</yearValue>
</VintageYear>
Linked Data & Semantic Web Technology
Properties in a Hierarchy
14
<owl:ObjectProperty rdf:ID="hasWineDescriptor">
<rdfs:domain rdf:resource="#Wine" />
<rdfs:range rdf:resource="#WineDescriptor" />
</owl:ObjectProperty>
<owl:ObjectProperty rdf:ID="hasColor">
<rdfs:subPropertyOf rdf:resource="#hasWineDescriptor" />
<rdfs:range rdf:resource="#WineColor" />
...
</owl:ObjectProperty>
hasWineDescriptor
hasColor
rdfs:subPropertyOf
WineDescriptorWine
rdfs:domain rdfs:range
WineDescriptor
rdfs:rangerdfs:domain
Linked Data & Semantic Web Technology
Property Characteristics
• TransitiveProperty
• SymmetricProperty
• FunctionalProperty
• inverseOf
• InverseFunctionalProperty
15
Linked Data & Semantic Web Technology
TransitiveProperty
• If a property, P, is specified as transitive then for any x, y, and z:
– P(x,y) and P(y,z) implies P(x,z)
16
<owl:ObjectProperty rdf:ID="locatedIn">
<rdf:type rdf:resource="&owl;TransitiveProperty" />
<rdfs:domain rdf:resource="&owl;Thing" />
<rdfs:range rdf:resource="#Region" />
</owl:ObjectProperty>
<Region rdf:ID="SantaCruzMountainsRegion">
<locatedIn rdf:resource="#CaliforniaRegion" />
</Region>
<Region rdf:ID="CaliforniaRegion">
<locatedIn rdf:resource="#USRegion" />
</Region>
CaliforniaRegion USRegionSantaCruzMountainsRegion
locatedIn locatedIn
locatedIn
Linked Data & Semantic Web Technology
SymmetricProperty
• If a property, P, is tagged as symmetric then for any x and y:
– P(x,y) iff P(y,x)
17
<owl:ObjectProperty rdf:ID="adjacentRegion">
<rdf:type rdf:resource="&owl;SymmetricProperty" />
<rdfs:domain rdf:resource="#Region" />
<rdfs:range rdf:resource="#Region" />
</owl:ObjectProperty>
<Region rdf:ID="MendocinoRegion">
<locatedIn rdf:resource="#CaliforniaRegion" />
<adjacentRegion rdf:resource="#SonomaRegion" />
</Region>
SonomaRegionMendocinoRegion
adjacentRegion
adjacentRegion
Linked Data & Semantic Web Technology
FunctionalProperty
• If a property, P, is tagged as functional then for all x, y, and z:
– P(x,y) and P(x,z) implies y = z
18
<owl:Class rdf:ID="VintageYear" />
<owl:ObjectProperty rdf:ID="hasVintageYear">
<rdf:type rdf:resource="&owl;FunctionalProperty" />
<rdfs:domain rdf:resource="#Vintage" />
<rdfs:range rdf:resource="#VintageYear" />
</owl:ObjectProperty>
year1998
FormanChardonnay2000
These two instances must
refer to the same thing.
y1998
Linked Data & Semantic Web Technology
inverseOf
• If a property, P1, is tagged as the owl:inverseOf P2, then for
all x and y:
– P1(x,y) iff P2(y,x)
19
<owl:ObjectProperty rdf:ID="hasMaker">
<rdf:type rdf:resource="&owl;FunctionalProperty" />
</owl:ObjectProperty>
<owl:ObjectProperty rdf:ID="producesWine">
<owl:inverseOf rdf:resource="#hasMaker" />
</owl:ObjectProperty>
SantaCruzMountainVineyardCabernetSauvignon
hasMaker
producesWine
Linked Data & Semantic Web Technology
InverseFunctionalProperty
• If a property, P, is tagged as InverseFunctional then for all x, y
and z:
– P(y,x) and P(z,x) implies y = z
20
<owl:ObjectProperty rdf:ID="hasMaker" />
<owl:ObjectProperty rdf:ID="producesWine">
<rdf:type rdf:resource="&owl;InverseFunctionalProperty" />
<owl:inverseOf rdf:resource="#hasMaker" />
</owl:ObjectProperty>
CabernetSauvignon
SantaCruzMountainVineyard
Vineyard023853
Two resources must
refer to the same thing.
Linked Data & Semantic Web Technology
Equivalence between Classes and Properties
• owl:equivalentClass
– to indicate that two classes have precisely the same instances
• owl:equivalentProperty
– to tie together properties
21
<owl:Class rdf:ID="Wine">
<owl:equivalentClass rdf:resource="&vin;Wine"/>
</owl:Class>
<owl:DatatypeProperty rdf:ID="name">
<owl:equivalentProperty rdf:resource="http://pur1.org/metadata/dublin-core#Title"/>
</owl:DatatypeProperty>
Linked Data & Semantic Web Technology
Identity between Individuals
• owl:sameAs
– to declare two individuals to be identical
22
<Wine rdf:ID="MikesFavoriteWine">
<owl:sameAs rdf:resource="#StGenevieveTexasWhite" />
</Wine>
<owl:ObjectProperty rdf:ID="hasMaker">
<rdf:type rdf:resource="&owl;FunctionalProperty" />
</owl:ObjectProperty>
<owl:Thing rdf:about="#BancroftChardonnay">
<hasMaker rdf:resource="#Bancroft" />
<hasMaker rdf:resource="#Beringer" />
</owl:Thing>
Bancroft
BancroftChardonnay
hasMaker
Beringer
hasMaker
owl:sameAs
Linked Data & Semantic Web Technology
Different Individuals
• owl:differentFrom
– to provide the opposite effect from sameAs
• owl:AllDifferent
– to define a set of mutually distinct individuals
23
<WineSugar rdf:ID="Dry" />
<WineSugar rdf:ID="Sweet">
<owl:differentFrom rdf:resource="#Dry"/>
</WineSugar>
<WineSugar rdf:ID="OffDry">
<owl:differentFrom rdf:resource="#Dry"/>
<owl:differentFrom rdf:resource="#Sweet"/>
</WineSugar>
<owl:AllDifferent>
<owl:distinctMembers rdf:parseType="Collection">
<vin:WineColor rdf:about="#Red" />
<vin:WineColor rdf:about="#White" />
<vin:WineColor rdf:about="#Rose" />
</owl:distinctMembers>
</owl:AllDifferent>
Linked Data & Semantic Web Technology
Property Restrictions
• Property Restrictions
– to further constrain the range of a property in specific contexts
– to indicate the restricted property using the owl:onProperty element
within the context of an owl:Restriction
• the Various Forms of Restriction
– allValuesFrom, someValuesFrom
– Cardinality
– hasValue
24
Linked Data & Semantic Web Technology
allValuesFrom
• owl:allValuesFrom
– to require that for every instance of the class that has instances of the
specified property
– the values of the property are all members of the class indicated by the
owl:allValuesFrom clause
25
<owl:Class rdf:ID="Wine">
<rdfs:subClassOf rdf:resource="&food;PotableLiquid" />
...
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#hasMaker" />
<owl:allValuesFrom rdf:resource="#Winery" />
</owl:Restriction>
</rdfs:subClassOf>
...
</owl:Class>
anonymous
class
PotableLiquid
Anonymous Class
Wine
Linked Data & Semantic Web Technology
allValuesFrom
26
<owl:Class rdf:ID="Wine">
<rdfs:subClassOf rdf:resource="&food;PotableLiquid" />
...
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#hasMaker" />
<owl:allValuesFrom rdf:resource="#Winery" />
</owl:Restriction>
</rdfs:subClassOf>
...
</owl:Class>
SantaCruzMountainVineyardCabernetSauvignon
hasMaker
Winery
rdf:type
Wine
rdf:type
Linked Data & Semantic Web Technology
someValuesFrom
• owl:someValuesFrom
– at least one of the hasMaker properties of a Wine must point to an
individual that is a Winery
27
<owl:Class rdf:ID="Wine">
<rdfs:subClassOf rdf:resource="&food;PotableLiquid" />
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#hasMaker" />
<owl:someValuesFrom rdf:resource="#Winery" />
</owl:Restriction>
</rdfs:subClassOf>
...
</owl:Class>
SantaCruzMountainVineyard
CabernetSauvignon
hasMaker
Wine
rdf:type
Bancroft
hasMaker
At least one value for
hasMaker must be an
instance of Winery, in the
context of the Wine class.
Linked Data & Semantic Web Technology
allValuesFrom vs. someValuesFrom
28
• owl:allValuesFrom
– Wherever there is an emptiesInto property, all its values must be instances of
Sea. [There may be zero emptiesInto properties.]
• owl:someValuesFrom
– There must be at least one connectsTo property whose value is BodyOfWater.
[There must be at least one connectsTo property.]
<owl:onProperty rdf:resource="#emptiesInto"/>
<owl:allValuesFrom rdf:resource="#Sea"/>
<owl:onProperty rdf:resource="#connectsTo"/>
<owl:someValuesFrom rdf:resource="#BodyOfWater"/>
Relation Implications
allValuesFrom For all wines, if they have makers, all the makers are wineries.
someValuesFrom For all wines, they have at least one maker that is a winery.
Linked Data & Semantic Web Technology
Cardinality
• owl:cardinality
– the specification of exactly the number of elements in a relation
29
<owl:Class rdf:ID="Vintage">
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#hasVintageYear"/>
<owl:cardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:cardinality>
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>
every Vintage has exactly one VintageYear
Linked Data & Semantic Web Technology
Cardinality
• owl:minCardinality
– to specify a lower bound
• owl:maxCardinality
– to specify an upper bound
30
<owl:Class rdf:ID="Vintage">
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#vintageOf"/>
<owl:minCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:minCardinality>
<owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">5</owl:minCardinality>
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>
Linked Data & Semantic Web Technology
hasValue
• owl:hasValue
– to specify classes based on the existence of particular property values
– at least one of its property values is equal to the hasValue resource
31
<owl:Class rdf:ID="Burgundy">
...
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#hasSugar" />
<owl:hasValue rdf:resource="#Dry" />
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>
all Burgundy wines are dry.
their hasSugar property must have at least one value that is equal to Dry.
Linked Data & Semantic Web Technology
Complex Classes
• Set Operators
– intersectionOf, unionOf, complementOf
• Enumerated Classes
– oneOf
• Disjoint Classes
– disjointWith
32
Linked Data & Semantic Web Technology
intersectionOf
33
<owl:Class rdf:ID="WhiteWine">
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class rdf:about="#Wine" />
<owl:Restriction>
<owl:onProperty rdf:resource="#hasColor" />
<owl:hasValue rdf:resource="#White" />
</owl:Restriction>
</owl:intersectionOf>
</owl:Class>
<owl:Class rdf:about="#Burgundy">
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class rdf:about="#Wine" />
<owl:Restriction>
<owl:onProperty rdf:resource="#locatedIn" />
<owl:hasValue rdf:resource="#BourgogneRegion" />
</owl:Restriction>
</owl:intersectionOf>
</owl:Class>
<owl:Class rdf:ID="WhiteBurgundy">
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class rdf:about="#Burgundy" />
<owl:Class rdf:about="#WhiteWine" />
</owl:intersectionOf>
</owl:Class>
Burgundy WhiteWine
WhiteBurgundy
Linked Data & Semantic Web Technology
intersectionOf
• Contrast with defining Fleuve using two subClassOf statements
• Contrast
– Defining a WhiteBurgundy using two subClassOf elements: all instances of
WhiteBurgundy must be a Burgundy and WhiteWine.
– Defining a WhiteBurgundy using intersectionOf: a WhiteBurgundy is the
collection of all instances that is both a Burgundy and WhiteWine.
– Thus, the subClassOf form merely characterizes a WhiteBurgundy, whereas
the intersectionOf form defines a WhiteBurgundy .
34
<owl:Class rdf:ID="WhiteBurgundy">
<rdfs:subClassOf rdf:about="#Burgundy" />
<rdfs:subClassOf rdf:about="#WhiteWine" />
</owl:Class>
Burgundy WhiteWine
WhiteBurgundy
Linked Data & Semantic Web Technology
unionOf
35
<owl:Class rdf:ID="Fruit">
<owl:unionOf rdf:parseType="Collection">
<owl:Class rdf:about="#SweetFruit" />
<owl:Class rdf:about="#NonSweetFruit" />
</owl:unionOf>
</owl:Class>
SweetFruit NonSweetFruit
Fruit
Linked Data & Semantic Web Technology
Example of Intersection and Union
36
<owl:Class rdf:ID="Rivière">
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class rdf:about="#River"/>
<owl:Class>
<owl:unionOf rdf:parseType="Collection">
<owl:Restriction>
<owl:onProperty rdf:resource="#emptiesInto"/>
<owl:allValuesFrom rdf:resource="#Lake"/>
</owl:Restriction>
<owl:Restriction>
<owl:onProperty rdf:resource="#emptiesInto"/>
<owl:allValuesFrom rdf:resource="#River"/>
</owl:Restriction>
</owl:unionOf>
</owl:Class>
</owl:intersectionOf>
</owl:Class>
Anonymous
Class
Anonymous
Class
Rivière
River
The members of this anonymous class are
instances which have an emptiesInto property
in which all values are instances of River.
The members of this anonymous
class are instances which have an
emptiesInto property in which
all values are instances of Lake.
a River that emptiesInto a Lake or another River.
Linked Data & Semantic Web Technology
Complement
• owl:complementOf
– to select all individuals from the domain of discourse that do not belong to
a certain class
37
<owl:Class rdf:ID="ConsumableThing" />
<owl:Class rdf:ID="NonConsumableThing">
<owl:complementOf rdf:resource="#ConsumableThing" />
</owl:Class>
<owl:Class rdf:ID="NonFrenchWine">
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class rdf:about="#Wine"/>
<owl:Class>
<owl:complementOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#locatedIn" />
<owl:hasValue rdf:resource="#FrenchRegion" />
</owl:Restriction>
</owl:complementOf>
</owl:Class>
</owl:intersectionOf>
</owl:Class>
Wine
Anonymous
Class
NonFrenchWine
Linked Data & Semantic Web Technology
Enumerated Classes
• owl:oneOf
– to specify a class via a direct enumeration of its members
38
<owl:Class rdf:ID="WineColor">
<rdfs:subClassOf rdf:resource="#WineDescriptor"/>
<owl:oneOf rdf:parseType="Collection">
<owl:Thing rdf:about="#White"/>
<owl:Thing rdf:about="#Rose"/>
<owl:Thing rdf:about="#Red"/>
</owl:oneOf>
</owl:Class>
no other individuals can be a valid WineColor
since the class has been defined by enumeration
Linked Data & Semantic Web Technology
Disjoint Classes
• owl:disjointWith
– an individual that is a member of one class cannot simultaneously be an
instance of a specified other class
39
<owl:Class rdf:ID="Pasta">
<rdfs:subClassOf rdf:resource="#EdibleThing"/>
<owl:disjointWith rdf:resource="#Meat"/>
<owl:disjointWith rdf:resource="#Fowl"/>
<owl:disjointWith rdf:resource="#Seafood"/>
<owl:disjointWith rdf:resource="#Dessert"/>
<owl:disjointWith rdf:resource="#Fruit"/>
</owl:Class>
EdibleThing
Pasta
Meat
Fowl
SeafoodDessert
FruitThe above class definition only states
that there are no instances of Pasta
which overlap with Meat, Fowl, Seafood,
Dessert, or Fruit. It does not state that all
four classes are disjoint.
Linked Data & Semantic Web Technology
Disjoint Classes
40
<owl:Class rdf:ID="River">
<rdfs:subClassOf rdf:resource="#Stream"/>
<owl:disjointWith rdf:resource="#Brook"/>
<owl:disjointWith rdf:resource="#Rivulet"/>
<owl:disjointWith rdf:resource="#Tributary"/>
</owl:Class>
<owl:Class rdf:ID="Brook">
<rdfs:subClassOf rdf:resource="#Stream"/>
<owl:disjointWith rdf:resource="#Rivulet"/>
<owl:disjointWith rdf:resource="#Tributary"/>
</owl:Class>
<owl:Class rdf:ID="Tributary">
<rdfs:subClassOf rdf:resource="#Stream"/>
<owl:disjointWith rdf:resource="#Rivulet"/>
</owl:Class>
Stream
River
Brook
Tributary
Rivulet
Linked Data & Semantic Web Technology
OWL as Description Language
41
Linked Data & Semantic Web Technology
References
• http://www.slideshare.net/lysander07/09-semantic-web-technologies-owl
• http://www.w3.org/TR/2004/REC-owl-guide-20040210/
• http://www.w3.org/TR/2004/REC-owl-features-20040210/
42
Linked Data & Semantic Web Technology
4343
Dr. Myungjin Lee
e-Mail : mjlee@li-st.com
Twitter : http://twitter.com/MyungjinLee
Facebook : http://www.facebook.com/mjinlee
SlideShare : http://www.slideshare.net/onlyjiny/

The Semantic Web #9 - Web Ontology Language (OWL)

  • 1.
    Linked Data & SemanticWeb Technology The Semantic Web Part 9. Web Ontology Language (OWL) Dr. Myungjin Lee
  • 2.
    Linked Data &Semantic Web Technology Why RDF(S) is not enough 2 Man Woman∩ = Ø Person Person descendant Person descendant descendant Husband Wife 1:1 _01 Action hasGenre ActionMovie subClassOf Genre type
  • 3.
    Linked Data &Semantic Web Technology Web Ontology Language (OWL) • to provide a language that can be used to describe the classes and relations between them • Recommendations for OWL – OWL: W3C Recommendation 2004 – OWL 2: W3C Recommendation 2009 • RDF(S) and OWL – RDF Schema enables you to express very rudimentary relationships and has limited inferencing capability. – OWL enables you to express much richer relationships, thus yielding a much enhanced inferencing capability. 3
  • 4.
    Linked Data &Semantic Web Technology The Species of OWL • OWL Lite – primarily needing a classification hierarchy and simple constraint features – ex. only to permit cardinality values of 0 or 1 – SHIF(D) • OWL DL – the maximum expressiveness without losing computational completeness and decidability of reasoning systems – SHOIN(D) • OWL Full – the maximum expressiveness and the syntactic freedom of RDF with no computational guarantees 4
  • 5.
    Linked Data &Semantic Web Technology The Species of OWL • OWL Lite Synopsis • OWL DL and Full Synopsis 5
  • 6.
    Linked Data &Semantic Web Technology Namespaces for Ontology • Namespace – a precise indication of what specific vocabularies are being used – to include a set of XML namespace declarations enclosed in an opening rdf:RDF tag 6 <rdf:RDF xmlns ="http://www.w3.org/TR/2004/REC-owl-guide-20040210/wine#" xmlns:vin ="http://www.w3.org/TR/2004/REC-owl-guide-20040210/wine#" xml:base ="http://www.w3.org/TR/2004/REC-owl-guide-20040210/wine#" xmlns:food="http://www.w3.org/TR/2004/REC-owl-guide-20040210/food#" xmlns:owl ="http://www.w3.org/2002/07/owl#" xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:xsd ="http://www.w3.org/2001/XMLSchema#"> … </rdf:RDF>
  • 7.
    Linked Data &Semantic Web Technology Ontology Headers • Ontology Headers – a collection of assertions about the ontology grouped under an owl:Ontology tag for comments, version control and inclusion of other ontologies • Syntax – owl:Ontology element • a place to collect much of the OWL meta-data for the document – owl:priorVersion element • a standard tag intended to provide hooks for version control systems working with ontologies – owl:imports element • an include-style mechanism 7 <owl:Ontology rdf:about=""> <rdfs:comment>An example OWL ontology</rdfs:comment> <owl:priorVersion rdf:resource="http://www.w3.org/TR/2003/PR-owl-guide-20031215/wine"/> <owl:imports rdf:resource="http://www.w3.org/TR/2004/REC-owl-guide-20040210/food"/> <rdfs:label>Wine Ontology</rdfs:label> ... </owl:Ontology>
  • 8.
    Linked Data &Semantic Web Technology Building Blocks of OWL • Classes – comparable with classes in RDFS • Individuals – comparable with objects in RDFS • Properties – comparable with properties in RDFS 8
  • 9.
    Linked Data &Semantic Web Technology Simple Named Classes • owl:Thing – Every individual in the OWL world is a member of the class owl:Thing. – Each user-defined class is implicitly a subclass of owl:Thing. • owl:Class – to define a group of individuals – a subclass of rdfs:Class • rdfs:subClassOf – the fundamental taxonomic constructor for classes – If X is a subclass of Y, then every instance of X is also an instance of Y. – The rdfs:subClassOf relation is transitive. • If X is a subclass of Y and Y a subclass of Z then X is a subclass of Z. 9 <owl:Class rdf:ID="Winery"/> <owl:Class rdf:ID="Region"/> <owl:Class rdf:ID="ConsumableThing"/> <owl:Class rdf:ID="PotableLiquid"> <rdfs:subClassOf rdf:resource="#ConsumableThing" /> ... </owl:Class>
  • 10.
    Linked Data &Semantic Web Technology Individuals • Individuals – to describe members of classes using rdf:type 10 <Region rdf:ID="CentralCoastRegion" /> <owl:Thing rdf:ID="CentralCoastRegion" /> <owl:Thing rdf:about="#CentralCoastRegion"> <rdf:type rdf:resource="#Region"/> </owl:Thing>
  • 11.
    Linked Data &Semantic Web Technology Defining Properties • Property – a binary relation • Two types of properties – distinguish properties according to whether they relate individuals to individuals (object properties) or individuals to datatypes (datatype properties) • datatype property – relations between instances of classes and RDF literals and XML Schema datatypes • object property – relations between instances of two classes 11 rdf:Property owl:ObjectProperty rdfs:subClassOf owl:DatatypeProperty rdfs:subClassOf
  • 12.
    Linked Data &Semantic Web Technology Object Property • Declaration of Object Property 12 <owl:ObjectProperty rdf:ID="madeFromGrape"> <rdfs:domain rdf:resource="#Wine"/> <rdfs:range rdf:resource="#WineGrape"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:ID="course"> <rdfs:domain rdf:resource="#Meal" /> <rdfs:range rdf:resource="#MealCourse" /> </owl:ObjectProperty> <owl:Thing rdf:ID="LindemansBin65Chardonnay"> <madeFromGrape rdf:resource="#ChardonnayGrape" /> </owl:Thing> rdf:type
  • 13.
    Linked Data &Semantic Web Technology Properties and Datatypes • OWL uses most of the built-in XML Schema datatypes. 13 xsd:string xsd:normalizedString xsd:boolean xsd:decimal xsd:float xsd:double xsd:integer xsd:nonNegativeInteger xsd:positiveInteger xsd:nonPositiveInteger xsd:negativeInteger xsd:long xsd:int xsd:short xsd:byte xsd:unsignedLong xsd:unsignedInt xsd:unsignedShort xsd:unsignedByte xsd:hexBinary xsd:base64Binary xsd:dateTime xsd:time xsd:date xsd:gYearMonth xsd:gYear xsd:gMonthDay xsd:gDay xsd:gMonth xsd:anyURI xsd:token xsd:language xsd:NMTOKEN xsd:Name xsd:NCName <owl:Class rdf:ID="VintageYear" /> <owl:DatatypeProperty rdf:ID="yearValue"> <rdfs:domain rdf:resource="#VintageYear" /> <rdfs:range rdf:resource="&xsd;positiveInteger"/> </owl:DatatypeProperty> <VintageYear rdf:ID="Year1998"> <yearValue rdf:datatype="&xsd;positiveInteger">1998</yearValue> </VintageYear>
  • 14.
    Linked Data &Semantic Web Technology Properties in a Hierarchy 14 <owl:ObjectProperty rdf:ID="hasWineDescriptor"> <rdfs:domain rdf:resource="#Wine" /> <rdfs:range rdf:resource="#WineDescriptor" /> </owl:ObjectProperty> <owl:ObjectProperty rdf:ID="hasColor"> <rdfs:subPropertyOf rdf:resource="#hasWineDescriptor" /> <rdfs:range rdf:resource="#WineColor" /> ... </owl:ObjectProperty> hasWineDescriptor hasColor rdfs:subPropertyOf WineDescriptorWine rdfs:domain rdfs:range WineDescriptor rdfs:rangerdfs:domain
  • 15.
    Linked Data &Semantic Web Technology Property Characteristics • TransitiveProperty • SymmetricProperty • FunctionalProperty • inverseOf • InverseFunctionalProperty 15
  • 16.
    Linked Data &Semantic Web Technology TransitiveProperty • If a property, P, is specified as transitive then for any x, y, and z: – P(x,y) and P(y,z) implies P(x,z) 16 <owl:ObjectProperty rdf:ID="locatedIn"> <rdf:type rdf:resource="&owl;TransitiveProperty" /> <rdfs:domain rdf:resource="&owl;Thing" /> <rdfs:range rdf:resource="#Region" /> </owl:ObjectProperty> <Region rdf:ID="SantaCruzMountainsRegion"> <locatedIn rdf:resource="#CaliforniaRegion" /> </Region> <Region rdf:ID="CaliforniaRegion"> <locatedIn rdf:resource="#USRegion" /> </Region> CaliforniaRegion USRegionSantaCruzMountainsRegion locatedIn locatedIn locatedIn
  • 17.
    Linked Data &Semantic Web Technology SymmetricProperty • If a property, P, is tagged as symmetric then for any x and y: – P(x,y) iff P(y,x) 17 <owl:ObjectProperty rdf:ID="adjacentRegion"> <rdf:type rdf:resource="&owl;SymmetricProperty" /> <rdfs:domain rdf:resource="#Region" /> <rdfs:range rdf:resource="#Region" /> </owl:ObjectProperty> <Region rdf:ID="MendocinoRegion"> <locatedIn rdf:resource="#CaliforniaRegion" /> <adjacentRegion rdf:resource="#SonomaRegion" /> </Region> SonomaRegionMendocinoRegion adjacentRegion adjacentRegion
  • 18.
    Linked Data &Semantic Web Technology FunctionalProperty • If a property, P, is tagged as functional then for all x, y, and z: – P(x,y) and P(x,z) implies y = z 18 <owl:Class rdf:ID="VintageYear" /> <owl:ObjectProperty rdf:ID="hasVintageYear"> <rdf:type rdf:resource="&owl;FunctionalProperty" /> <rdfs:domain rdf:resource="#Vintage" /> <rdfs:range rdf:resource="#VintageYear" /> </owl:ObjectProperty> year1998 FormanChardonnay2000 These two instances must refer to the same thing. y1998
  • 19.
    Linked Data &Semantic Web Technology inverseOf • If a property, P1, is tagged as the owl:inverseOf P2, then for all x and y: – P1(x,y) iff P2(y,x) 19 <owl:ObjectProperty rdf:ID="hasMaker"> <rdf:type rdf:resource="&owl;FunctionalProperty" /> </owl:ObjectProperty> <owl:ObjectProperty rdf:ID="producesWine"> <owl:inverseOf rdf:resource="#hasMaker" /> </owl:ObjectProperty> SantaCruzMountainVineyardCabernetSauvignon hasMaker producesWine
  • 20.
    Linked Data &Semantic Web Technology InverseFunctionalProperty • If a property, P, is tagged as InverseFunctional then for all x, y and z: – P(y,x) and P(z,x) implies y = z 20 <owl:ObjectProperty rdf:ID="hasMaker" /> <owl:ObjectProperty rdf:ID="producesWine"> <rdf:type rdf:resource="&owl;InverseFunctionalProperty" /> <owl:inverseOf rdf:resource="#hasMaker" /> </owl:ObjectProperty> CabernetSauvignon SantaCruzMountainVineyard Vineyard023853 Two resources must refer to the same thing.
  • 21.
    Linked Data &Semantic Web Technology Equivalence between Classes and Properties • owl:equivalentClass – to indicate that two classes have precisely the same instances • owl:equivalentProperty – to tie together properties 21 <owl:Class rdf:ID="Wine"> <owl:equivalentClass rdf:resource="&vin;Wine"/> </owl:Class> <owl:DatatypeProperty rdf:ID="name"> <owl:equivalentProperty rdf:resource="http://pur1.org/metadata/dublin-core#Title"/> </owl:DatatypeProperty>
  • 22.
    Linked Data &Semantic Web Technology Identity between Individuals • owl:sameAs – to declare two individuals to be identical 22 <Wine rdf:ID="MikesFavoriteWine"> <owl:sameAs rdf:resource="#StGenevieveTexasWhite" /> </Wine> <owl:ObjectProperty rdf:ID="hasMaker"> <rdf:type rdf:resource="&owl;FunctionalProperty" /> </owl:ObjectProperty> <owl:Thing rdf:about="#BancroftChardonnay"> <hasMaker rdf:resource="#Bancroft" /> <hasMaker rdf:resource="#Beringer" /> </owl:Thing> Bancroft BancroftChardonnay hasMaker Beringer hasMaker owl:sameAs
  • 23.
    Linked Data &Semantic Web Technology Different Individuals • owl:differentFrom – to provide the opposite effect from sameAs • owl:AllDifferent – to define a set of mutually distinct individuals 23 <WineSugar rdf:ID="Dry" /> <WineSugar rdf:ID="Sweet"> <owl:differentFrom rdf:resource="#Dry"/> </WineSugar> <WineSugar rdf:ID="OffDry"> <owl:differentFrom rdf:resource="#Dry"/> <owl:differentFrom rdf:resource="#Sweet"/> </WineSugar> <owl:AllDifferent> <owl:distinctMembers rdf:parseType="Collection"> <vin:WineColor rdf:about="#Red" /> <vin:WineColor rdf:about="#White" /> <vin:WineColor rdf:about="#Rose" /> </owl:distinctMembers> </owl:AllDifferent>
  • 24.
    Linked Data &Semantic Web Technology Property Restrictions • Property Restrictions – to further constrain the range of a property in specific contexts – to indicate the restricted property using the owl:onProperty element within the context of an owl:Restriction • the Various Forms of Restriction – allValuesFrom, someValuesFrom – Cardinality – hasValue 24
  • 25.
    Linked Data &Semantic Web Technology allValuesFrom • owl:allValuesFrom – to require that for every instance of the class that has instances of the specified property – the values of the property are all members of the class indicated by the owl:allValuesFrom clause 25 <owl:Class rdf:ID="Wine"> <rdfs:subClassOf rdf:resource="&food;PotableLiquid" /> ... <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#hasMaker" /> <owl:allValuesFrom rdf:resource="#Winery" /> </owl:Restriction> </rdfs:subClassOf> ... </owl:Class> anonymous class PotableLiquid Anonymous Class Wine
  • 26.
    Linked Data &Semantic Web Technology allValuesFrom 26 <owl:Class rdf:ID="Wine"> <rdfs:subClassOf rdf:resource="&food;PotableLiquid" /> ... <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#hasMaker" /> <owl:allValuesFrom rdf:resource="#Winery" /> </owl:Restriction> </rdfs:subClassOf> ... </owl:Class> SantaCruzMountainVineyardCabernetSauvignon hasMaker Winery rdf:type Wine rdf:type
  • 27.
    Linked Data &Semantic Web Technology someValuesFrom • owl:someValuesFrom – at least one of the hasMaker properties of a Wine must point to an individual that is a Winery 27 <owl:Class rdf:ID="Wine"> <rdfs:subClassOf rdf:resource="&food;PotableLiquid" /> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#hasMaker" /> <owl:someValuesFrom rdf:resource="#Winery" /> </owl:Restriction> </rdfs:subClassOf> ... </owl:Class> SantaCruzMountainVineyard CabernetSauvignon hasMaker Wine rdf:type Bancroft hasMaker At least one value for hasMaker must be an instance of Winery, in the context of the Wine class.
  • 28.
    Linked Data &Semantic Web Technology allValuesFrom vs. someValuesFrom 28 • owl:allValuesFrom – Wherever there is an emptiesInto property, all its values must be instances of Sea. [There may be zero emptiesInto properties.] • owl:someValuesFrom – There must be at least one connectsTo property whose value is BodyOfWater. [There must be at least one connectsTo property.] <owl:onProperty rdf:resource="#emptiesInto"/> <owl:allValuesFrom rdf:resource="#Sea"/> <owl:onProperty rdf:resource="#connectsTo"/> <owl:someValuesFrom rdf:resource="#BodyOfWater"/> Relation Implications allValuesFrom For all wines, if they have makers, all the makers are wineries. someValuesFrom For all wines, they have at least one maker that is a winery.
  • 29.
    Linked Data &Semantic Web Technology Cardinality • owl:cardinality – the specification of exactly the number of elements in a relation 29 <owl:Class rdf:ID="Vintage"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#hasVintageYear"/> <owl:cardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:cardinality> </owl:Restriction> </rdfs:subClassOf> </owl:Class> every Vintage has exactly one VintageYear
  • 30.
    Linked Data &Semantic Web Technology Cardinality • owl:minCardinality – to specify a lower bound • owl:maxCardinality – to specify an upper bound 30 <owl:Class rdf:ID="Vintage"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#vintageOf"/> <owl:minCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:minCardinality> <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">5</owl:minCardinality> </owl:Restriction> </rdfs:subClassOf> </owl:Class>
  • 31.
    Linked Data &Semantic Web Technology hasValue • owl:hasValue – to specify classes based on the existence of particular property values – at least one of its property values is equal to the hasValue resource 31 <owl:Class rdf:ID="Burgundy"> ... <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#hasSugar" /> <owl:hasValue rdf:resource="#Dry" /> </owl:Restriction> </rdfs:subClassOf> </owl:Class> all Burgundy wines are dry. their hasSugar property must have at least one value that is equal to Dry.
  • 32.
    Linked Data &Semantic Web Technology Complex Classes • Set Operators – intersectionOf, unionOf, complementOf • Enumerated Classes – oneOf • Disjoint Classes – disjointWith 32
  • 33.
    Linked Data &Semantic Web Technology intersectionOf 33 <owl:Class rdf:ID="WhiteWine"> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="#Wine" /> <owl:Restriction> <owl:onProperty rdf:resource="#hasColor" /> <owl:hasValue rdf:resource="#White" /> </owl:Restriction> </owl:intersectionOf> </owl:Class> <owl:Class rdf:about="#Burgundy"> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="#Wine" /> <owl:Restriction> <owl:onProperty rdf:resource="#locatedIn" /> <owl:hasValue rdf:resource="#BourgogneRegion" /> </owl:Restriction> </owl:intersectionOf> </owl:Class> <owl:Class rdf:ID="WhiteBurgundy"> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="#Burgundy" /> <owl:Class rdf:about="#WhiteWine" /> </owl:intersectionOf> </owl:Class> Burgundy WhiteWine WhiteBurgundy
  • 34.
    Linked Data &Semantic Web Technology intersectionOf • Contrast with defining Fleuve using two subClassOf statements • Contrast – Defining a WhiteBurgundy using two subClassOf elements: all instances of WhiteBurgundy must be a Burgundy and WhiteWine. – Defining a WhiteBurgundy using intersectionOf: a WhiteBurgundy is the collection of all instances that is both a Burgundy and WhiteWine. – Thus, the subClassOf form merely characterizes a WhiteBurgundy, whereas the intersectionOf form defines a WhiteBurgundy . 34 <owl:Class rdf:ID="WhiteBurgundy"> <rdfs:subClassOf rdf:about="#Burgundy" /> <rdfs:subClassOf rdf:about="#WhiteWine" /> </owl:Class> Burgundy WhiteWine WhiteBurgundy
  • 35.
    Linked Data &Semantic Web Technology unionOf 35 <owl:Class rdf:ID="Fruit"> <owl:unionOf rdf:parseType="Collection"> <owl:Class rdf:about="#SweetFruit" /> <owl:Class rdf:about="#NonSweetFruit" /> </owl:unionOf> </owl:Class> SweetFruit NonSweetFruit Fruit
  • 36.
    Linked Data &Semantic Web Technology Example of Intersection and Union 36 <owl:Class rdf:ID="Rivière"> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="#River"/> <owl:Class> <owl:unionOf rdf:parseType="Collection"> <owl:Restriction> <owl:onProperty rdf:resource="#emptiesInto"/> <owl:allValuesFrom rdf:resource="#Lake"/> </owl:Restriction> <owl:Restriction> <owl:onProperty rdf:resource="#emptiesInto"/> <owl:allValuesFrom rdf:resource="#River"/> </owl:Restriction> </owl:unionOf> </owl:Class> </owl:intersectionOf> </owl:Class> Anonymous Class Anonymous Class Rivière River The members of this anonymous class are instances which have an emptiesInto property in which all values are instances of River. The members of this anonymous class are instances which have an emptiesInto property in which all values are instances of Lake. a River that emptiesInto a Lake or another River.
  • 37.
    Linked Data &Semantic Web Technology Complement • owl:complementOf – to select all individuals from the domain of discourse that do not belong to a certain class 37 <owl:Class rdf:ID="ConsumableThing" /> <owl:Class rdf:ID="NonConsumableThing"> <owl:complementOf rdf:resource="#ConsumableThing" /> </owl:Class> <owl:Class rdf:ID="NonFrenchWine"> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="#Wine"/> <owl:Class> <owl:complementOf> <owl:Restriction> <owl:onProperty rdf:resource="#locatedIn" /> <owl:hasValue rdf:resource="#FrenchRegion" /> </owl:Restriction> </owl:complementOf> </owl:Class> </owl:intersectionOf> </owl:Class> Wine Anonymous Class NonFrenchWine
  • 38.
    Linked Data &Semantic Web Technology Enumerated Classes • owl:oneOf – to specify a class via a direct enumeration of its members 38 <owl:Class rdf:ID="WineColor"> <rdfs:subClassOf rdf:resource="#WineDescriptor"/> <owl:oneOf rdf:parseType="Collection"> <owl:Thing rdf:about="#White"/> <owl:Thing rdf:about="#Rose"/> <owl:Thing rdf:about="#Red"/> </owl:oneOf> </owl:Class> no other individuals can be a valid WineColor since the class has been defined by enumeration
  • 39.
    Linked Data &Semantic Web Technology Disjoint Classes • owl:disjointWith – an individual that is a member of one class cannot simultaneously be an instance of a specified other class 39 <owl:Class rdf:ID="Pasta"> <rdfs:subClassOf rdf:resource="#EdibleThing"/> <owl:disjointWith rdf:resource="#Meat"/> <owl:disjointWith rdf:resource="#Fowl"/> <owl:disjointWith rdf:resource="#Seafood"/> <owl:disjointWith rdf:resource="#Dessert"/> <owl:disjointWith rdf:resource="#Fruit"/> </owl:Class> EdibleThing Pasta Meat Fowl SeafoodDessert FruitThe above class definition only states that there are no instances of Pasta which overlap with Meat, Fowl, Seafood, Dessert, or Fruit. It does not state that all four classes are disjoint.
  • 40.
    Linked Data &Semantic Web Technology Disjoint Classes 40 <owl:Class rdf:ID="River"> <rdfs:subClassOf rdf:resource="#Stream"/> <owl:disjointWith rdf:resource="#Brook"/> <owl:disjointWith rdf:resource="#Rivulet"/> <owl:disjointWith rdf:resource="#Tributary"/> </owl:Class> <owl:Class rdf:ID="Brook"> <rdfs:subClassOf rdf:resource="#Stream"/> <owl:disjointWith rdf:resource="#Rivulet"/> <owl:disjointWith rdf:resource="#Tributary"/> </owl:Class> <owl:Class rdf:ID="Tributary"> <rdfs:subClassOf rdf:resource="#Stream"/> <owl:disjointWith rdf:resource="#Rivulet"/> </owl:Class> Stream River Brook Tributary Rivulet
  • 41.
    Linked Data &Semantic Web Technology OWL as Description Language 41
  • 42.
    Linked Data &Semantic Web Technology References • http://www.slideshare.net/lysander07/09-semantic-web-technologies-owl • http://www.w3.org/TR/2004/REC-owl-guide-20040210/ • http://www.w3.org/TR/2004/REC-owl-features-20040210/ 42
  • 43.
    Linked Data &Semantic Web Technology 4343 Dr. Myungjin Lee e-Mail : [email protected] Twitter : http://twitter.com/MyungjinLee Facebook : http://www.facebook.com/mjinlee SlideShare : http://www.slideshare.net/onlyjiny/