SlideShare a Scribd company logo
The Semantic
                             Web – Part 2
Semantic CMS Community




 Lecturer
 Organization
                             Modeling Complex Knowledge
 Date of presentation        Domains



   Co-funded by the
                         1                Copyright IKS Consortium
   European Union
Page:


                           Part I: Foundations

(1)   Introduction of Content                   Foundations of Semantic
                                         (2)
          Management                             Web Technologies


 Part II: Semantic Content                    Part III: Methodologies
        Management

      Knowledge Interaction                    Requirements Engineering
(3)                                      (7)
        and Presentation                          for Semantic CMS


(4) Knowledge Representation
       and Reasoning
                                         (8)
                                                    Designing
                                                  Semantic CMS

                                                   Semantifying
(5)     Semantic Lifting                 (9)        your CMS

      Storing and Accessing                      Designing Interactive
(6)       Semantic Data
                                        (10)        Ubiquitous IS


www.iks-project.eu                                                Copyright IKS Consortium
Page: 3




       Semantic Web Layer Cake




A language for querying
information specified in
         RDF.

  A model for describing
resources with properties                                       A format for specifying structured
   and property values.                                         data in a machine-readable form

    Unique identification
       of resources
                               Semantic Web Layer Cake, Image source: http://www.w3.org/2007/03/layerCake.svg
          www.iks-project.eu                                                          Copyright IKS Consortium
Page: 4




   RDF
 RDF   can be used to make statements about single
  resources identified by URIs
 RDF is able to define relations among resources
 Literals can be assigned as values to properties of
  resources
                            http://example.org/rel/Brand
 http://example.org/myCar                                  http://example.org/Jaguar




                            http://example.org/rel/Model
 http://example.org/myCar                                    XF



      www.iks-project.eu                                           Copyright IKS Consortium
Page: 5




    RDF Classes
                                  http://example.org/rel/Brand
   http://example.org/myCar                                          http://example.org/Jaguar



  Car
                        Vehicle                                       http://example.org/VW




How are these terms related                                      Do these terms have
      to each other?                                             anything in common?


        www.iks-project.eu                                                    Copyright IKS Consortium
Page: 6




       RDF Properties
   http://example.org/my      http://example.org/rel/Brand   http://example.org/University
             Car                                                       Paderborn




                                                Is “UniversityPaderborn” a valid
                                                   value for property “Brand”?


 We  need to do statements about properties  What is the
  type of the property?
 Definition of valid types for subjects and objects
 Definition of hierarchies of properties

         www.iks-project.eu                                                  Copyright IKS Consortium
Page: 7




www.iks-project.eu             Copyright IKS Consortium
Page: 8




  RDF Schema
 “RDF'svocabulary description language, RDF
 Schema, is a semantic extension of RDF. It provides
 mechanisms for describing groups of related resources
 and the relationships between these resources.”
 W3C     Recommendation
    RDF Vocabulary Description Language 1.0: RDF Schema

 The RDFS namespace is:
 “rdfs: http://www.w3.org/2000/01/rdf-schema#”
  But RDFS also uses elements from the rdf
 namespace!                           http://www.w3.org/TR/rdf-schema/

     www.iks-project.eu                                Copyright IKS Consortium
Page: 9




  RDF Schema
 RDFS  does not provide a specific vocabulary for
 describing properties such as “Brand”, but a language
 to define vocabularies

 RDFS uses RDF to define RDF
 vocabularies

 Due
    to it's limited expressiveness,
 RDFS is a language to define lightweight ontologies


                                      http://www.w3.org/TR/rdf-schema/
   www.iks-project.eu                             Copyright IKS Consortium
Page: 10




  RDFS Classes
 “Resources may be divided into groups called classes.
 The members of a class are known as instances of the
 class. Classes are themselves resources.”

 Themembers (resources) of a class A are termed
 instances of the class A

 Classes  are resource, e.g.
 “http://example.org/CarManufacturer” and can be
 described by RDF properties

    www.iks-project.eu                       Copyright IKS Consortium
Page: 11




  RDFS Classes
 Thepredicate rdf:type assigns the object as type of the
 subject

 Theassignment to a type is not exclusive
  A subject can be typed by several objects!

 Example:


      ex:Jaguar          rdf:type       ex:CarManufacturer

    www.iks-project.eu                             Copyright IKS Consortium
Page: 12




  RDFS Classes
 A resource can be defined as a class explicitly
 The type rdfs:Class defines a resource as a class

 Example:


   ex:CarManufacturer                rdf:type       rdfs:Class

 rdfs:Class       is the “class of all classes”, i.e.:

            rdfs:Class         rdf:type          rdfs:Class

    www.iks-project.eu                                    Copyright IKS Consortium
Page: 13




  Hierarchies of Classes
 “Theproperty rdfs:subClassOf is an instance of
 rdf:Property that is used to state that all the instances
 of one class are instances of another.”
 The subject and object of the predicate
 “rdfs:subClassOf” must be instances of rdfs:Class
 The   property rdfs:subClassOf is transitive
 Example:

         ex:CarManufacturer rdfs:subClassOf
                      ex:Company
    www.iks-project.eu                           Copyright IKS Consortium
Page: 14




RDFS Constructs - Predefined Classes
                               All things described by RDF are called resources, and
rdfs:Resource
                               are instances of the class rdfs:Resource.
                               This is the class of resources that are classes.
rdfs:Class
                               rdfs:Class is an instance of rdfs:Class.
                               The class rdfs:Literal is the class of literal values such
rdfs:Literal                   as strings and integers. rdfs:Literal is an instance of
                               rdfs:Class. rdfs:Literal is a subclass of rdfs:Resource.
                               rdfs:Datatype is the class of datatypes. rdfs:Datatype is
rdfs:Datatype                  both an instance of and a subclass of rdfs:Class. Each
                               instance of rdfs:Datatype is a subclass of rdfs:Literal.
                               The class rdf:XMLLiteral is the class of XML literal
rdf:XMLLiteral                 values. rdf:XMLLiteral is an instance of rdfs:Datatype
                               and a subclass of rdfs:Literal.
                Typos?
                               rdf:Property is the class of RDF properties. rdf:Property
rdf:Property
                               is an instance of rdfs:Class.
                                                               http://www.w3.org/TR/rdf-schema/
          www.iks-project.eu                                               Copyright IKS Consortium
Page: 15




  RDFS Properties
 “TheRDF Concepts and Abstract Syntax specification
 describes the concept of an RDF property as a relation
 between subject resources and object resources”



 A resource        can be defined as property explicitly

           ex:Brand        rdf:type        rdf:Property



    www.iks-project.eu                                Copyright IKS Consortium
Page: 16




  Hierarchies of Properties
 “The property rdfs:subPropertyOf is an instance of
 rdf:Property that is used to state that all resources
 related by one property are also related by another.”
 The subject and object of the predicate
 “rdfs:subPropertyOf ” must be instances of
 rdf:Property
 The   property rdfs:subPropertyOf is transitive
 Example:


  ex:friendOf            rdfs:subPropertyOf   ex:knows
    www.iks-project.eu                              Copyright IKS Consortium
Page: 17




       Property Restrictions

  http://example.org/my      http://example.org/rel/Brand    http://example.org/University
            Car                                                        Paderborn




                                               Is “UniversityPaderborn” a valid
                                                  value for property “Brand”?


 Weneed to express, that only subjects and objects of
 specific types should be used for the predicate “Brand”

        www.iks-project.eu                                                   Copyright IKS Consortium
Page: 18




   Domain
 “rdfs:domain   is an instance of rdf:Property that is
  used to state that any resource that has a given
  property is an instance of one or more classes.”
 States that each subject with the predicate (property) is
  an instance of the defined class
 Ifmore than one domain is defined, the subjects are
  instances of all classes!
 Example:


             ex:Brand       rdfs:domain       ex:Vehicle
       www.iks-project.eu                            Copyright IKS Consortium
Page: 19




  Range
 “rdfs:range   is an instance of rdf:Property that is used
  to state that the values of a property are instances of
  one or more classes.”
 States that each object of the predicate (property) is an
  instance of the defined class
 If more than one range is defined, the objects are
  instances of all classes!
 Example:


           ex:Brand      rdfs:range       ex:Company

    www.iks-project.eu                            Copyright IKS Consortium
Page: 20




    RDFS Constructs – Predefined
    Properties (I)
                            rdfs:range is an instance of rdf:Property that is used to
rdfs:range                  state that the values of a property are instances of
                            one or more classes.
                            rdfs:domain is an instance of rdf:Property that is used
rdfs:domain                 to state that any resource that has a given property is
                            an instance of one or more classes.
                            rdf:type is an instance of rdf:Property that is used to
rdf:type
                            state that a resource is an instance of a class.
                            The property rdfs:subClassOf is an instance of
rdfs:subClassOf             rdf:Property that is used to state that all the instances
                            of one class are instances of another.
                            The property rdfs:subPropertyOf is an instance of
rdfs:subPropertyOf          rdf:Property that is used to state that all resources
                            related by one property are also related by another.
       www.iks-project.eu
                                                    Copyright IKS Consortium
Page: 21




      RDFS Constructs – Predefined
      Properties (II)
                              rdfs:label is an instance of rdf:Property that may be
rdfs:label                    used to provide a human-readable version of a
                              resource's name.
                              rdfs:comment is an instance of rdf:Property that may
rdfs:comment                  be used to provide a human-readable description of a
                              resource.




         www.iks-project.eu
                                                        Copyright IKS Consortium
Page: 22



          RDFS - Example
                                                                                                  class
class
                                                                                  ex:Company
         ex:Vehicle                                        rdf:range
                                  rdfs:domain


             rdfs:subClassOf
                                                ex:Brand                               rdfs:subClassOf
class                                 property
        ex:Car                                                                                      class
                                                                             ex:CarManufacturer


                                                                                                        RDFS
             rdf:type
                                                                                      Terminological knowledge
                                                                                                         RDF
                                                                       rdf:type         Assertional knowledge


                                           ex:Brand
           ex:myCar                                                      ex:Jaguar

             www.iks-project.eu                                                           Copyright IKS Consortium
Page: 23




       Back to the Cake ...




A language for querying
information specified in
                                                                    A language for describing a
         RDF.
                                                                        lightweight ontology.
  A model for describing
resources with properties                                         A format for specifying structured
   and property values.                                           data in a machine-readable form

    Unique identification
       of resources
                               Semantic Web Layer Cake, Image source: http://www.w3.org/2007/03/layerCake.svg
          www.iks-project.eu                                                           Copyright IKS Consortium
Page: 24




  Why is RDFS not enough?
 RDFS     cannot express negations

 Defined      property restrictions are global

 Missing     cardinalities for properties

 Relations       between (sub-)classes (e.g. disjunction)




    www.iks-project.eu                              Copyright IKS Consortium
Page: 25




  OWL – Web Ontology
  Language
 “The OWL Web Ontology Language is designed for use
  by applications that need to process the content of
  information instead of just presenting information to
  humans.”
 OWL     has been developed as a vocabulary extension of
  RDF
 Explicitly
           represents the meaning of terms in
  vocabularies and the relationships between those
  terms. (Ontology)

                          http://www.w3.org/TR/2004/REC-owl-features-20040210/
     www.iks-project.eu                                    Copyright IKS Consortium
Page: 26




  OWL – The Story
 2004 - OWL W3C Recommendation
 2009 - OWL 2 W3C Recommendation


OWL = Web Ontology Language
 Why    not WOL?
    Obvious pronunciation which is easy on the ear                               http://piqs.de
    Opens up great opportunities for logos
    Owls are associated with wisdom
    It has an interesting back story
                          http://lists.w3.org/Archives/Public/www-webont-wg/2001Dec/0169.html
     www.iks-project.eu                                                  Copyright IKS Consortium
Page: 27




    Dialects of OWL
 OWL         Lite
       Provides classification hierarchy and simple constraint
        features
 OWL         DL (description logic) - Includes OWL Lite
     Provides the maximum expressiveness without losing
      computational completeness and decidability of reasoning
      systems.
   OWL Full - Includes OWL DL
     Is meant for users who want maximum expressiveness
      and the syntactic freedom of RDF with no computational
      guarantees.
                               http://www.w3.org/TR/2004/REC-owl-features-20040210/
        www.iks-project.eu                                      Copyright IKS Consortium
Page: 28




  How does OWL look like?
  RDF Document
 Basic structure            of an OWL Document                   Namespace
                                                                  Definitions
<rdf:RDF xmlns:owl ="http://www.w3.org/2002/07/owl#"
         xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
               Default Namespace
         xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
         xmlns:xsd ="http://www.w3.org/2001/XMLSchema#">
         xmlns="http://example.org/">
                                          Ontology Header
      <owl:Ontology rdf:about=“”>
            <rdfs:comment>An example OWL ontology</rdfs:comment>
            <owl:priorVersion rdf:resource="http://example.org/20120101/cars"/>
            <owl:imports rdf:resource="http://example.org/20110707/manufacturer"/>
            <rdfs:label>Car Ontology</rdfs:label>
         </owl:Ontology>
 Importing another
...
     ontology
</rdf:RDF>

        www.iks-project.eu                                        Copyright IKS Consortium
Page: 29




  Simple OWL Classes
 Comparable    to RDFS classes
 Every individual in OWL is a member of the class
  owl:Thing
 Each user-defined class is implicitly a subclass of
  owl:Thing
 OWL also defines the empty class owl:Nothing
 Definition of domain-specific root classes:

   <owl:Class rdf:ID=“Vehicle”/>
   <owl:Class rdf:ID=“CarManufacturer”/>

        Define class
    www.iks-project.eu                           Copyright IKS Consortium
Page: 30




  Hierarchies of Classes
 Thedefinition of basic taxonomies for classes can be
 done by rdfs:subClassOf.

 rdfs:subClassOf         is transitive.
                                                  “Car” is a subclass
                                                     of “Vehicle”
 <owl:Class rdf:ID=“Car">
    <rdfs:subClassOf rdf:resource="Vehicle"/>
 </owl:Class>




     www.iks-project.eu                                       Copyright IKS Consortium
Page: 31




  Disjoint Classes
 “The disjointness of a set of classes can be expressed
 using the owl:disjointWith constructor. It guarantees
 that an individual that is a member of one class cannot
 simultaneously be an instance of a specified other
 class.“                              The classes “Car”
                                                 and “Vehicle” are
                                                     disjoint.
    <owl:Class rdf:about=“Car">
        <owl:disjointWith rdf:resource=“Cat”/>
    </owl>




    www.iks-project.eu                                        Copyright IKS Consortium
Page: 32




   Infer about Disjoint Classes
                                                   The class “Car” is a
  <owl:Class rdf:ID=“Car">                         subclass of “Vehicle”
     <rdfs:subClassOf rdf:resource="Vehicle"/>
  </owl:Class>

                                                   The class “Cat” is a
  <owl:Class rdf:ID=“Cat">                         subclass of “Animal”
     <rdfs:subClassOf rdf:resource=“Animal"/>
  </owl:Class>
                                                       The classes
  <owl:Class rdf:about=“Vehicle">                     “Vehicle” and
     <owl:disjointWith rdf:resource=“Animal”/>     “Animal” are disjoint
  </owl>




It can be inferred, that the classes “Car” and “Cat“
are disjoint too!
      www.iks-project.eu                                      Copyright IKS Consortium
Page: 33




      Individuals
   In addition to the definition of classes, we also need to
     describe the members of classes (individuals)
                                           Definition of
       <owl:Thing rdf:ID=“Jaguar"/>    individual “Jaguar”

       <owl:Thing rdf:about=“Jaguar">
          <rdf:type rdf:resource=“CarManufacturer"/>
       </owl:Thing>
Ties the individual
   to the class


   Abbreviated               representation
        < CarManufacturer rdf:ID="Jaguar"/>



         www.iks-project.eu                                  Copyright IKS Consortium
Page: 34




  Simple Properties
 “This world of classes and individuals would be pretty
  uninteresting if we could only define taxonomies.
  Properties let us assert general facts about the
  members of classes and specific facts about
  individuals.“
 Property are binary relations. In OWL, two different
  types of properties are distinguished:
     object properties, relations between instances of two
      classes.
     datatype properties, relations between instances of
      classes and RDF literals and XML Schema datatypes
                                            http://www.w3.org/TR/owl-guide/
      www.iks-project.eu                              Copyright IKS Consortium
Page: 35




  Object Properties
 Objectproperties relate instances of classes by
 rdfs:domain and rdfs:range.
                                                    Properties are
   <owl:ObjectProperty rdf:about=“Brand”/>        defined like classes


                                                         Domain and range
   <owl:ObjectProperty rdf:ID=“Brand”>
                                                         for object property
          <rdfs:domain rdf:resource=“Vehicle”/>                “Brand”
          <rdfs:range rdf:resource=“CarManufacturer”/>

   </owl:Thing>




    www.iks-project.eu                                        Copyright IKS Consortium
Page: 36




  Datatype Properties
 Datatypeproperties relate class instances and data
 values using rdfs:domain and rdfs:range.
                                                               Properties are
                                                             defined like classes
   <owl:DatatypeProperty rdf:about=“ConstructionYear”/>



                                                      Domain and range for
   <owl:ObjectProperty rdf:ID=“ConstructionYear”>
                                                        datatype property
          <rdfs:domain rdf:resource=“Car”/>            “ConstructionYear”
          <rdfs:range rdf:resource=“&xsd;gYear”/>

   </owl:Thing>



                                                          http://www.w3.org/TR/owl-guide/
    www.iks-project.eu                                              Copyright IKS Consortium
Page: 37




   Recommended XML Schema
   datatypes
xsd:string                  xsd:normalizedString          xsd:boolean
xsd:decimal                 xsd:float                     xsd:double
xsd:integer                 xsd:nonNegativeInteger        xsd:positiveInteger
xsd:nonPositiveInteger      xsd:negativeInteger           xsd:byte
xsd:long                    xsd:int                       xsd:short
xsd:unsignedLong            xsd:unsignedInt               xsd:unsignedShort
xsd:hexBinary               xsd:base64Binary              xsd:unsignedByte
xsd:dateTime                xsd:time                      xsd:date
xsd:gYear                   xsd:gMonthDay                 xsd:gDay
xsd:anyURI                  xsd:token                     xsd:language
xsd:NMTOKEN                 xsd:Name                      xsd:NCName
xsd:gYearMonth              xsd:gMonth



       www.iks-project.eu                                                  Copyright IKS Consortium
Page: 38




  Cardinality Constraints for
  Properties
 owl:minCardinality   defines the minimal cardinality for
  the value of a property.
 owl:maxCardinality defines the maximal cardinality for
  the value of a property.
  <owl:Class rdf:ID=“Vehicle">
                            Anonymous class              Restriction for
   <rdfs:subClassOf>                                   property “Wheels”
       <owl:Restriction>
          <owl:onProperty rdf:resource=“Wheels”/>
          <owl:minCardinality rdf:datatype=“&xsd;nonNegativeInteger”>2
          </owl:minCardinality>
       </owl:Restriction>
   </rdfs:subClassOf>
                                                  Minimal number of
  </owl:Class>                                     “Wheels” is “2”

     www.iks-project.eu                                      Copyright IKS Consortium
Page: 39




  Cardinality Constraints for
  Properties
 “owl:cardinality
                 permits the specification of exactly the
 number of elements in a relation.”

  <owl:Class rdf:ID=“Motorcycle">
                                                  Restriction for
   <rdfs:subClassOf>                            property “Wheels”
       <owl:Restriction>
          <owl:onProperty rdf:resource=“Wheels”/>
          <owl:cardinality rdf:datatype=“&xsd;nonNegativeInteger”>2
          </owl:cardinality>
       </owl:Restriction>
   </rdfs:subClassOf>
                                                              Exact number of
  </owl:Class>                                                 “Wheels” is “2”



    www.iks-project.eu                                         Copyright IKS Consortium
Page: 40




  Property Restrictions
 “The owl:allValuesFrom restriction requires 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.”               Restriction on property
 Local restriction for class definition      “PreOwner“ for
                                                         instances from class
        <owl:Class rdf:ID=“Car">
           <rdfs:subClassOf>
                                                                “Car”
                 <owl:Restriction>
                     <owl:onProperty rdf:resource=“preOwner” />
                     <owl:allValuesFrom rdf:resource=“Person” />
                 </owl:Restriction>
           <rdfs:subClassOf>
        </owl:Class>          Each value is member
                                of class “Person”              Copyright IKS Consortium
     www.iks-project.eu
Page: 41




  Property Restrictions                                     Restriction on property
    <owl:Class rdf:ID=“Car">                                    “PreOwner“ for
                                                             instances from class
       <rdfs:subClassOf>                                             “Car”
             <owl:Restriction>
                 <owl:onProperty rdf:resource=“preOwner” />
                 <owl:someValuesFrom rdf:resource=“Person” />
             </owl:Restriction>
       <rdfs:subClassOf>                        At least one value       is
    </owl:Class>                                       member of class
                                                         “Person”

      Relation                                    Implication
allValuesFrom            For all cars, if they have a previous owner, all
                         previous owners are persons.
someValuesFrom           For all cars, they have at least one previous
                         owner that is a person.
    www.iks-project.eu                                           Copyright IKS Consortium
Page: 42




  Property Restrictions with
  Constants
 “owl:hasValue   allows us to specify classes based on
 the existence of particular property values. Hence, an
 individual will be a member of such a class whenever at
 least one of its property values is equal to the
 owl:hasValue resource.”
  <owl:Class rdf:ID=“myCars">                        Restriction for
    <rdfs:subClassOf>
                                                    property “Owner”
        <owl:Restriction>
           <owl:onProperty rdf:resource=“Owner”/>
           <owl:hasValue rdf:”JohnMiller”>
        </owl:Restriction>
    </rdfs:subClassOf>
  </owl:Class>
                          The class “myCar”
                          is defined by value
    www.iks-project.eu
                              assignment                    Copyright IKS Consortium
Page: 43




  Intersection
 owl:intersectionOf         defines a class as an intersection
 of other classes.

<owl:Class rdf:ID=“CarsFromVW">

   <owl:intersectionOf rdf:parseType=“Collection”>
         <owl:Class rdf:about=”Cars”>
         <owl:Class rdf:about=“VW”/>        If something is a “Car”
   </owl:intersectionOf>                        and a “VW” it is a
</owl:Class>                                      ”CarFromVW”




     www.iks-project.eu                                       Copyright IKS Consortium
Page: 44




  Union
 “owl:unionOf    describes a class that contains those
 individuals that occur in at least one of the class
                                        Gearbox is everything that
 extensions of the class descriptions in the list”.
                                         is “ManualTransmission”
                                                              or
 <owl:Class rdf:ID=“Gearbox">                      “AutomaticTransmission”.
    <owl:unionOf rdf:parseType=“Collection”>
          <owl:Class rdf:about=”ManualTransmission”>
          <owl:Class rdf:about=“AutomaticTransmission”/>
    </owl:intersectionOf>

 </owl:Class>




    www.iks-project.eu                                      Copyright IKS Consortium
Page: 45




  Complement
 “The owl:complementOf construct selects all
 individuals from the domain of discourse that do not
 belong to a certain class.”

 <owl:Class rdf:about=”ManualTransmission”>

 <owl:Class rdf:about=“AutomaticTransmission”/>
    </owl:complementOf ref:resource=“ManualTransmission” />
 </owl:Class>


                            “AutomaticTransmission”
                            includes as members all
                              individuals that do not
                                     belong to
                             “ManualTransmission”.
    www.iks-project.eu                                        Copyright IKS Consortium
Page: 46




   If you want to know more ...
 There  is stuff about OWL out there, which is not part of
  this course:
      Class axioms
      Global restriction for properties
      Logical characteristics of properties


 Ifyou are interested in learning more about OWL please
  check:
      The W3C OWL Reference (http://www.w3.org/TR/owl-ref)
      The W3C OWL Guide (http://www.w3.org/TR/owl-guide)

       www.iks-project.eu                        Copyright IKS Consortium
Page: 47




  OWL 2
 OWL   2 adds new functionality to OWL, while the overall
  structure is very similar
 OWL 2 provides syntactic sugar
     e.g. disjoint union of classes
 Some       OWL 2 feature provide new expressivity:
     keys, property chains
     richer datatypes, data ranges;
     qualified cardinality restrictions
     asymmetric, reflexive, disjoint properties
     enhanced annotation capabilities
                                              http://www.w3.org/TR/owl2-primer/
      www.iks-project.eu                                   Copyright IKS Consortium
Page: 48




       Back to the Cake ...



                                                                     Highly expressive ontology
                                                                  language for modelling complex
A language for querying                                                 knowledge domains.
information specified in
         RDF.                                                       A language for describing a
                                                                        lightweight ontology.
  A model for describing
resources with properties                                         A format for specifying structured
   and property values.                                           data in a machine-readable form

    Unique identification
       of resources
                               Semantic Web Layer Cake, Image source: http://www.w3.org/2007/03/layerCake.svg
          www.iks-project.eu                                                           Copyright IKS Consortium
Page: 49




  Lessons Learned
 Now    you should know ...
    ... what is the main difference between RDF and ontology
     languages like RDF Schema and OWL.
    ... how can RDF Schema be used to build simple
     ontologies.
    ... what are the shortcomings of RDF Schema and why is
     it not enough in some application cases.
    ... the web ontology language OWL.
    .. in which sense OWL is more expressive than RDF
     Schema.

     www.iks-project.eu                           Copyright IKS Consortium
Page: 50




 References and Additional
 Material
 RDFVocabulary Description Language 1.0: RDF
 Schema
    http://www.w3.org/TR/rdf-schema/
 OWL     Web Ontology Language Guide
    http://www.w3.org/TR/owl-guide/
 OWL     Web Ontology Language Reference
    http://www.w3.org/TR/owl-ref/
 OWL  2 Web Ontology Language Primer
  http://www.w3.org/TR/owl2-primer/



     www.iks-project.eu                     Copyright IKS Consortium

More Related Content

Similar to Lecture the semantic_web_part_2

Resource description framework
Resource description frameworkResource description framework
Resource description framework
hozifa1010
 
RDFa Semantic Web
RDFa Semantic WebRDFa Semantic Web
RDFa Semantic Web
Rob Paok
 
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
Shamod Lacoul
 
Lecture semantic dataaccess_presentation
Lecture semantic dataaccess_presentationLecture semantic dataaccess_presentation
Lecture semantic dataaccess_presentationIKS - Project
 
Semantic web
Semantic webSemantic web
Semantic web
tariq1352
 
Jpl presentation
Jpl presentationJpl presentation
Jpl presentation
Rama Bastola
 
Jpl presentation
Jpl presentationJpl presentation
Jpl presentation
Rama Bastola
 
Jpl presentation
Jpl presentationJpl presentation
Jpl presentation
Rama Bastola
 
The Semantic Web #6 - RDF Schema
The Semantic Web #6 - RDF SchemaThe Semantic Web #6 - RDF Schema
The Semantic Web #6 - RDF Schema
Myungjin Lee
 
The Legal Rdf Ontology A Generic Model For Legal Documents
The Legal Rdf Ontology A Generic Model For Legal DocumentsThe Legal Rdf Ontology A Generic Model For Legal Documents
The Legal Rdf Ontology A Generic Model For Legal Documentslegalwebsite
 
Rdf
RdfRdf
SemanticWeb Nuts 'n Bolts
SemanticWeb Nuts 'n BoltsSemanticWeb Nuts 'n Bolts
SemanticWeb Nuts 'n BoltsRinke Hoekstra
 
Corrib.org - OpenSource and Research
Corrib.org - OpenSource and ResearchCorrib.org - OpenSource and Research
Corrib.org - OpenSource and Research
adameq
 
SNSW CO3.pptx
SNSW CO3.pptxSNSW CO3.pptx
SNSW CO3.pptx
harishdhanukonda48
 
DLF 2015 Presentation, "RDF in the Real World."
DLF 2015 Presentation, "RDF in the Real World." DLF 2015 Presentation, "RDF in the Real World."
DLF 2015 Presentation, "RDF in the Real World."
Avalon Media System
 
Semantic - Based Querying Using Ontology in Relational Database of Library Ma...
Semantic - Based Querying Using Ontology in Relational Database of Library Ma...Semantic - Based Querying Using Ontology in Relational Database of Library Ma...
Semantic - Based Querying Using Ontology in Relational Database of Library Ma...
dannyijwest
 

Similar to Lecture the semantic_web_part_2 (20)

Resource description framework
Resource description frameworkResource description framework
Resource description framework
 
RDFa Semantic Web
RDFa Semantic WebRDFa Semantic Web
RDFa Semantic Web
 
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
 
Lecture semantic dataaccess_presentation
Lecture semantic dataaccess_presentationLecture semantic dataaccess_presentation
Lecture semantic dataaccess_presentation
 
XML Bible
XML BibleXML Bible
XML Bible
 
Semantic web
Semantic webSemantic web
Semantic web
 
Jpl presentation
Jpl presentationJpl presentation
Jpl presentation
 
Jpl presentation
Jpl presentationJpl presentation
Jpl presentation
 
Jpl presentation
Jpl presentationJpl presentation
Jpl presentation
 
.Net and Rdf APIs
.Net and Rdf APIs.Net and Rdf APIs
.Net and Rdf APIs
 
The Semantic Web #6 - RDF Schema
The Semantic Web #6 - RDF SchemaThe Semantic Web #6 - RDF Schema
The Semantic Web #6 - RDF Schema
 
The Legal Rdf Ontology A Generic Model For Legal Documents
The Legal Rdf Ontology A Generic Model For Legal DocumentsThe Legal Rdf Ontology A Generic Model For Legal Documents
The Legal Rdf Ontology A Generic Model For Legal Documents
 
Rdf
RdfRdf
Rdf
 
Linked data and voyager
Linked data and voyagerLinked data and voyager
Linked data and voyager
 
SemanticWeb Nuts 'n Bolts
SemanticWeb Nuts 'n BoltsSemanticWeb Nuts 'n Bolts
SemanticWeb Nuts 'n Bolts
 
Corrib.org - OpenSource and Research
Corrib.org - OpenSource and ResearchCorrib.org - OpenSource and Research
Corrib.org - OpenSource and Research
 
SNSW CO3.pptx
SNSW CO3.pptxSNSW CO3.pptx
SNSW CO3.pptx
 
DLF 2015 Presentation, "RDF in the Real World."
DLF 2015 Presentation, "RDF in the Real World." DLF 2015 Presentation, "RDF in the Real World."
DLF 2015 Presentation, "RDF in the Real World."
 
semanticweb
semanticwebsemanticweb
semanticweb
 
Semantic - Based Querying Using Ontology in Relational Database of Library Ma...
Semantic - Based Querying Using Ontology in Relational Database of Library Ma...Semantic - Based Querying Using Ontology in Relational Database of Library Ma...
Semantic - Based Querying Using Ontology in Relational Database of Library Ma...
 

More from IKS - Project

Iks d73-teachers handbook-v12
Iks d73-teachers handbook-v12Iks d73-teachers handbook-v12
Iks d73-teachers handbook-v12IKS - Project
 
Chapter 0 -_organization
Chapter 0 -_organizationChapter 0 -_organization
Chapter 0 -_organizationIKS - Project
 
Lecture specifying requirementsforsemanticcms_presentation
Lecture specifying requirementsforsemanticcms_presentationLecture specifying requirementsforsemanticcms_presentation
Lecture specifying requirementsforsemanticcms_presentationIKS - Project
 
Lecture semantic lifting_presentation
Lecture semantic lifting_presentationLecture semantic lifting_presentation
Lecture semantic lifting_presentationIKS - Project
 
Lecture semantic based_interaction_and_presentation_of_content
Lecture semantic based_interaction_and_presentation_of_contentLecture semantic based_interaction_and_presentation_of_content
Lecture semantic based_interaction_and_presentation_of_contentIKS - Project
 
Lecture reference architecture_for_semantic_cms_part_i
Lecture reference architecture_for_semantic_cms_part_iLecture reference architecture_for_semantic_cms_part_i
Lecture reference architecture_for_semantic_cms_part_iIKS - Project
 
Lecture knowledge representationreasoning
Lecture knowledge representationreasoningLecture knowledge representationreasoning
Lecture knowledge representationreasoningIKS - Project
 
Lecture designing interactive_ubiquitous_is_part_2
Lecture designing interactive_ubiquitous_is_part_2Lecture designing interactive_ubiquitous_is_part_2
Lecture designing interactive_ubiquitous_is_part_2IKS - Project
 
Lecture content management
Lecture content managementLecture content management
Lecture content managementIKS - Project
 
Introduction 1 -_the_iks_project
Introduction 1 -_the_iks_projectIntroduction 1 -_the_iks_project
Introduction 1 -_the_iks_projectIKS - Project
 
Lecture semantifying yourcms_presentation
Lecture semantifying yourcms_presentationLecture semantifying yourcms_presentation
Lecture semantifying yourcms_presentationIKS - Project
 
Iks lecture designing_interactive_ubiquitous_is_part_1
Iks lecture designing_interactive_ubiquitous_is_part_1Iks lecture designing_interactive_ubiquitous_is_part_1
Iks lecture designing_interactive_ubiquitous_is_part_1IKS - Project
 

More from IKS - Project (12)

Iks d73-teachers handbook-v12
Iks d73-teachers handbook-v12Iks d73-teachers handbook-v12
Iks d73-teachers handbook-v12
 
Chapter 0 -_organization
Chapter 0 -_organizationChapter 0 -_organization
Chapter 0 -_organization
 
Lecture specifying requirementsforsemanticcms_presentation
Lecture specifying requirementsforsemanticcms_presentationLecture specifying requirementsforsemanticcms_presentation
Lecture specifying requirementsforsemanticcms_presentation
 
Lecture semantic lifting_presentation
Lecture semantic lifting_presentationLecture semantic lifting_presentation
Lecture semantic lifting_presentation
 
Lecture semantic based_interaction_and_presentation_of_content
Lecture semantic based_interaction_and_presentation_of_contentLecture semantic based_interaction_and_presentation_of_content
Lecture semantic based_interaction_and_presentation_of_content
 
Lecture reference architecture_for_semantic_cms_part_i
Lecture reference architecture_for_semantic_cms_part_iLecture reference architecture_for_semantic_cms_part_i
Lecture reference architecture_for_semantic_cms_part_i
 
Lecture knowledge representationreasoning
Lecture knowledge representationreasoningLecture knowledge representationreasoning
Lecture knowledge representationreasoning
 
Lecture designing interactive_ubiquitous_is_part_2
Lecture designing interactive_ubiquitous_is_part_2Lecture designing interactive_ubiquitous_is_part_2
Lecture designing interactive_ubiquitous_is_part_2
 
Lecture content management
Lecture content managementLecture content management
Lecture content management
 
Introduction 1 -_the_iks_project
Introduction 1 -_the_iks_projectIntroduction 1 -_the_iks_project
Introduction 1 -_the_iks_project
 
Lecture semantifying yourcms_presentation
Lecture semantifying yourcms_presentationLecture semantifying yourcms_presentation
Lecture semantifying yourcms_presentation
 
Iks lecture designing_interactive_ubiquitous_is_part_1
Iks lecture designing_interactive_ubiquitous_is_part_1Iks lecture designing_interactive_ubiquitous_is_part_1
Iks lecture designing_interactive_ubiquitous_is_part_1
 

Lecture the semantic_web_part_2

  • 1. The Semantic Web – Part 2 Semantic CMS Community Lecturer Organization Modeling Complex Knowledge Date of presentation Domains Co-funded by the 1 Copyright IKS Consortium European Union
  • 2. Page: Part I: Foundations (1) Introduction of Content Foundations of Semantic (2) Management Web Technologies Part II: Semantic Content Part III: Methodologies Management Knowledge Interaction Requirements Engineering (3) (7) and Presentation for Semantic CMS (4) Knowledge Representation and Reasoning (8) Designing Semantic CMS Semantifying (5) Semantic Lifting (9) your CMS Storing and Accessing Designing Interactive (6) Semantic Data (10) Ubiquitous IS www.iks-project.eu Copyright IKS Consortium
  • 3. Page: 3 Semantic Web Layer Cake A language for querying information specified in RDF. A model for describing resources with properties A format for specifying structured and property values. data in a machine-readable form Unique identification of resources Semantic Web Layer Cake, Image source: http://www.w3.org/2007/03/layerCake.svg www.iks-project.eu Copyright IKS Consortium
  • 4. Page: 4 RDF  RDF can be used to make statements about single resources identified by URIs  RDF is able to define relations among resources  Literals can be assigned as values to properties of resources http://example.org/rel/Brand http://example.org/myCar http://example.org/Jaguar http://example.org/rel/Model http://example.org/myCar XF www.iks-project.eu Copyright IKS Consortium
  • 5. Page: 5 RDF Classes http://example.org/rel/Brand http://example.org/myCar http://example.org/Jaguar Car Vehicle http://example.org/VW How are these terms related Do these terms have to each other? anything in common? www.iks-project.eu Copyright IKS Consortium
  • 6. Page: 6 RDF Properties http://example.org/my http://example.org/rel/Brand http://example.org/University Car Paderborn Is “UniversityPaderborn” a valid value for property “Brand”?  We need to do statements about properties  What is the type of the property?  Definition of valid types for subjects and objects  Definition of hierarchies of properties www.iks-project.eu Copyright IKS Consortium
  • 7. Page: 7 www.iks-project.eu Copyright IKS Consortium
  • 8. Page: 8 RDF Schema  “RDF'svocabulary description language, RDF Schema, is a semantic extension of RDF. It provides mechanisms for describing groups of related resources and the relationships between these resources.”  W3C Recommendation  RDF Vocabulary Description Language 1.0: RDF Schema  The RDFS namespace is: “rdfs: http://www.w3.org/2000/01/rdf-schema#”  But RDFS also uses elements from the rdf namespace! http://www.w3.org/TR/rdf-schema/ www.iks-project.eu Copyright IKS Consortium
  • 9. Page: 9 RDF Schema  RDFS does not provide a specific vocabulary for describing properties such as “Brand”, but a language to define vocabularies  RDFS uses RDF to define RDF vocabularies  Due to it's limited expressiveness, RDFS is a language to define lightweight ontologies http://www.w3.org/TR/rdf-schema/ www.iks-project.eu Copyright IKS Consortium
  • 10. Page: 10 RDFS Classes  “Resources may be divided into groups called classes. The members of a class are known as instances of the class. Classes are themselves resources.”  Themembers (resources) of a class A are termed instances of the class A  Classes are resource, e.g. “http://example.org/CarManufacturer” and can be described by RDF properties www.iks-project.eu Copyright IKS Consortium
  • 11. Page: 11 RDFS Classes  Thepredicate rdf:type assigns the object as type of the subject  Theassignment to a type is not exclusive  A subject can be typed by several objects!  Example: ex:Jaguar rdf:type ex:CarManufacturer www.iks-project.eu Copyright IKS Consortium
  • 12. Page: 12 RDFS Classes  A resource can be defined as a class explicitly  The type rdfs:Class defines a resource as a class  Example: ex:CarManufacturer rdf:type rdfs:Class  rdfs:Class is the “class of all classes”, i.e.: rdfs:Class rdf:type rdfs:Class www.iks-project.eu Copyright IKS Consortium
  • 13. Page: 13 Hierarchies of Classes  “Theproperty rdfs:subClassOf is an instance of rdf:Property that is used to state that all the instances of one class are instances of another.”  The subject and object of the predicate “rdfs:subClassOf” must be instances of rdfs:Class  The property rdfs:subClassOf is transitive  Example: ex:CarManufacturer rdfs:subClassOf ex:Company www.iks-project.eu Copyright IKS Consortium
  • 14. Page: 14 RDFS Constructs - Predefined Classes All things described by RDF are called resources, and rdfs:Resource are instances of the class rdfs:Resource. This is the class of resources that are classes. rdfs:Class rdfs:Class is an instance of rdfs:Class. The class rdfs:Literal is the class of literal values such rdfs:Literal as strings and integers. rdfs:Literal is an instance of rdfs:Class. rdfs:Literal is a subclass of rdfs:Resource. rdfs:Datatype is the class of datatypes. rdfs:Datatype is rdfs:Datatype both an instance of and a subclass of rdfs:Class. Each instance of rdfs:Datatype is a subclass of rdfs:Literal. The class rdf:XMLLiteral is the class of XML literal rdf:XMLLiteral values. rdf:XMLLiteral is an instance of rdfs:Datatype and a subclass of rdfs:Literal. Typos? rdf:Property is the class of RDF properties. rdf:Property rdf:Property is an instance of rdfs:Class. http://www.w3.org/TR/rdf-schema/ www.iks-project.eu Copyright IKS Consortium
  • 15. Page: 15 RDFS Properties  “TheRDF Concepts and Abstract Syntax specification describes the concept of an RDF property as a relation between subject resources and object resources”  A resource can be defined as property explicitly ex:Brand rdf:type rdf:Property www.iks-project.eu Copyright IKS Consortium
  • 16. Page: 16 Hierarchies of Properties  “The property rdfs:subPropertyOf is an instance of rdf:Property that is used to state that all resources related by one property are also related by another.”  The subject and object of the predicate “rdfs:subPropertyOf ” must be instances of rdf:Property  The property rdfs:subPropertyOf is transitive  Example: ex:friendOf rdfs:subPropertyOf ex:knows www.iks-project.eu Copyright IKS Consortium
  • 17. Page: 17 Property Restrictions http://example.org/my http://example.org/rel/Brand http://example.org/University Car Paderborn Is “UniversityPaderborn” a valid value for property “Brand”?  Weneed to express, that only subjects and objects of specific types should be used for the predicate “Brand” www.iks-project.eu Copyright IKS Consortium
  • 18. Page: 18 Domain  “rdfs:domain is an instance of rdf:Property that is used to state that any resource that has a given property is an instance of one or more classes.”  States that each subject with the predicate (property) is an instance of the defined class  Ifmore than one domain is defined, the subjects are instances of all classes!  Example: ex:Brand rdfs:domain ex:Vehicle www.iks-project.eu Copyright IKS Consortium
  • 19. Page: 19 Range  “rdfs:range is an instance of rdf:Property that is used to state that the values of a property are instances of one or more classes.”  States that each object of the predicate (property) is an instance of the defined class  If more than one range is defined, the objects are instances of all classes!  Example: ex:Brand rdfs:range ex:Company www.iks-project.eu Copyright IKS Consortium
  • 20. Page: 20 RDFS Constructs – Predefined Properties (I) rdfs:range is an instance of rdf:Property that is used to rdfs:range state that the values of a property are instances of one or more classes. rdfs:domain is an instance of rdf:Property that is used rdfs:domain to state that any resource that has a given property is an instance of one or more classes. rdf:type is an instance of rdf:Property that is used to rdf:type state that a resource is an instance of a class. The property rdfs:subClassOf is an instance of rdfs:subClassOf rdf:Property that is used to state that all the instances of one class are instances of another. The property rdfs:subPropertyOf is an instance of rdfs:subPropertyOf rdf:Property that is used to state that all resources related by one property are also related by another. www.iks-project.eu Copyright IKS Consortium
  • 21. Page: 21 RDFS Constructs – Predefined Properties (II) rdfs:label is an instance of rdf:Property that may be rdfs:label used to provide a human-readable version of a resource's name. rdfs:comment is an instance of rdf:Property that may rdfs:comment be used to provide a human-readable description of a resource. www.iks-project.eu Copyright IKS Consortium
  • 22. Page: 22 RDFS - Example class class ex:Company ex:Vehicle rdf:range rdfs:domain rdfs:subClassOf ex:Brand rdfs:subClassOf class property ex:Car class ex:CarManufacturer RDFS rdf:type Terminological knowledge RDF rdf:type Assertional knowledge ex:Brand ex:myCar ex:Jaguar www.iks-project.eu Copyright IKS Consortium
  • 23. Page: 23 Back to the Cake ... A language for querying information specified in A language for describing a RDF. lightweight ontology. A model for describing resources with properties A format for specifying structured and property values. data in a machine-readable form Unique identification of resources Semantic Web Layer Cake, Image source: http://www.w3.org/2007/03/layerCake.svg www.iks-project.eu Copyright IKS Consortium
  • 24. Page: 24 Why is RDFS not enough?  RDFS cannot express negations  Defined property restrictions are global  Missing cardinalities for properties  Relations between (sub-)classes (e.g. disjunction) www.iks-project.eu Copyright IKS Consortium
  • 25. Page: 25 OWL – Web Ontology Language  “The OWL Web Ontology Language is designed for use by applications that need to process the content of information instead of just presenting information to humans.”  OWL has been developed as a vocabulary extension of RDF  Explicitly represents the meaning of terms in vocabularies and the relationships between those terms. (Ontology) http://www.w3.org/TR/2004/REC-owl-features-20040210/ www.iks-project.eu Copyright IKS Consortium
  • 26. Page: 26 OWL – The Story  2004 - OWL W3C Recommendation  2009 - OWL 2 W3C Recommendation OWL = Web Ontology Language  Why not WOL?  Obvious pronunciation which is easy on the ear http://piqs.de  Opens up great opportunities for logos  Owls are associated with wisdom  It has an interesting back story http://lists.w3.org/Archives/Public/www-webont-wg/2001Dec/0169.html www.iks-project.eu Copyright IKS Consortium
  • 27. Page: 27 Dialects of OWL  OWL Lite  Provides classification hierarchy and simple constraint features  OWL DL (description logic) - Includes OWL Lite  Provides the maximum expressiveness without losing computational completeness and decidability of reasoning systems.  OWL Full - Includes OWL DL  Is meant for users who want maximum expressiveness and the syntactic freedom of RDF with no computational guarantees. http://www.w3.org/TR/2004/REC-owl-features-20040210/ www.iks-project.eu Copyright IKS Consortium
  • 28. Page: 28 How does OWL look like? RDF Document  Basic structure of an OWL Document Namespace Definitions <rdf:RDF xmlns:owl ="http://www.w3.org/2002/07/owl#" xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#" Default Namespace xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:xsd ="http://www.w3.org/2001/XMLSchema#"> xmlns="http://example.org/"> Ontology Header <owl:Ontology rdf:about=“”> <rdfs:comment>An example OWL ontology</rdfs:comment> <owl:priorVersion rdf:resource="http://example.org/20120101/cars"/> <owl:imports rdf:resource="http://example.org/20110707/manufacturer"/> <rdfs:label>Car Ontology</rdfs:label> </owl:Ontology> Importing another ... ontology </rdf:RDF> www.iks-project.eu Copyright IKS Consortium
  • 29. Page: 29 Simple OWL Classes  Comparable to RDFS classes  Every individual in OWL is a member of the class owl:Thing  Each user-defined class is implicitly a subclass of owl:Thing  OWL also defines the empty class owl:Nothing  Definition of domain-specific root classes: <owl:Class rdf:ID=“Vehicle”/> <owl:Class rdf:ID=“CarManufacturer”/> Define class www.iks-project.eu Copyright IKS Consortium
  • 30. Page: 30 Hierarchies of Classes  Thedefinition of basic taxonomies for classes can be done by rdfs:subClassOf.  rdfs:subClassOf is transitive. “Car” is a subclass of “Vehicle” <owl:Class rdf:ID=“Car"> <rdfs:subClassOf rdf:resource="Vehicle"/> </owl:Class> www.iks-project.eu Copyright IKS Consortium
  • 31. Page: 31 Disjoint Classes  “The disjointness of a set of classes can be expressed using the owl:disjointWith constructor. It guarantees that an individual that is a member of one class cannot simultaneously be an instance of a specified other class.“ The classes “Car” and “Vehicle” are disjoint. <owl:Class rdf:about=“Car"> <owl:disjointWith rdf:resource=“Cat”/> </owl> www.iks-project.eu Copyright IKS Consortium
  • 32. Page: 32 Infer about Disjoint Classes The class “Car” is a <owl:Class rdf:ID=“Car"> subclass of “Vehicle” <rdfs:subClassOf rdf:resource="Vehicle"/> </owl:Class> The class “Cat” is a <owl:Class rdf:ID=“Cat"> subclass of “Animal” <rdfs:subClassOf rdf:resource=“Animal"/> </owl:Class> The classes <owl:Class rdf:about=“Vehicle"> “Vehicle” and <owl:disjointWith rdf:resource=“Animal”/> “Animal” are disjoint </owl> It can be inferred, that the classes “Car” and “Cat“ are disjoint too! www.iks-project.eu Copyright IKS Consortium
  • 33. Page: 33 Individuals  In addition to the definition of classes, we also need to describe the members of classes (individuals) Definition of <owl:Thing rdf:ID=“Jaguar"/> individual “Jaguar” <owl:Thing rdf:about=“Jaguar"> <rdf:type rdf:resource=“CarManufacturer"/> </owl:Thing> Ties the individual to the class  Abbreviated representation < CarManufacturer rdf:ID="Jaguar"/> www.iks-project.eu Copyright IKS Consortium
  • 34. Page: 34 Simple Properties  “This world of classes and individuals would be pretty uninteresting if we could only define taxonomies. Properties let us assert general facts about the members of classes and specific facts about individuals.“  Property are binary relations. In OWL, two different types of properties are distinguished:  object properties, relations between instances of two classes.  datatype properties, relations between instances of classes and RDF literals and XML Schema datatypes http://www.w3.org/TR/owl-guide/ www.iks-project.eu Copyright IKS Consortium
  • 35. Page: 35 Object Properties  Objectproperties relate instances of classes by rdfs:domain and rdfs:range. Properties are <owl:ObjectProperty rdf:about=“Brand”/> defined like classes Domain and range <owl:ObjectProperty rdf:ID=“Brand”> for object property <rdfs:domain rdf:resource=“Vehicle”/> “Brand” <rdfs:range rdf:resource=“CarManufacturer”/> </owl:Thing> www.iks-project.eu Copyright IKS Consortium
  • 36. Page: 36 Datatype Properties  Datatypeproperties relate class instances and data values using rdfs:domain and rdfs:range. Properties are defined like classes <owl:DatatypeProperty rdf:about=“ConstructionYear”/> Domain and range for <owl:ObjectProperty rdf:ID=“ConstructionYear”> datatype property <rdfs:domain rdf:resource=“Car”/> “ConstructionYear” <rdfs:range rdf:resource=“&xsd;gYear”/> </owl:Thing> http://www.w3.org/TR/owl-guide/ www.iks-project.eu Copyright IKS Consortium
  • 37. Page: 37 Recommended XML Schema datatypes xsd:string xsd:normalizedString xsd:boolean xsd:decimal xsd:float xsd:double xsd:integer xsd:nonNegativeInteger xsd:positiveInteger xsd:nonPositiveInteger xsd:negativeInteger xsd:byte xsd:long xsd:int xsd:short xsd:unsignedLong xsd:unsignedInt xsd:unsignedShort xsd:hexBinary xsd:base64Binary xsd:unsignedByte xsd:dateTime xsd:time xsd:date xsd:gYear xsd:gMonthDay xsd:gDay xsd:anyURI xsd:token xsd:language xsd:NMTOKEN xsd:Name xsd:NCName xsd:gYearMonth xsd:gMonth www.iks-project.eu Copyright IKS Consortium
  • 38. Page: 38 Cardinality Constraints for Properties  owl:minCardinality defines the minimal cardinality for the value of a property.  owl:maxCardinality defines the maximal cardinality for the value of a property. <owl:Class rdf:ID=“Vehicle"> Anonymous class Restriction for <rdfs:subClassOf> property “Wheels” <owl:Restriction> <owl:onProperty rdf:resource=“Wheels”/> <owl:minCardinality rdf:datatype=“&xsd;nonNegativeInteger”>2 </owl:minCardinality> </owl:Restriction> </rdfs:subClassOf> Minimal number of </owl:Class> “Wheels” is “2” www.iks-project.eu Copyright IKS Consortium
  • 39. Page: 39 Cardinality Constraints for Properties  “owl:cardinality permits the specification of exactly the number of elements in a relation.” <owl:Class rdf:ID=“Motorcycle"> Restriction for <rdfs:subClassOf> property “Wheels” <owl:Restriction> <owl:onProperty rdf:resource=“Wheels”/> <owl:cardinality rdf:datatype=“&xsd;nonNegativeInteger”>2 </owl:cardinality> </owl:Restriction> </rdfs:subClassOf> Exact number of </owl:Class> “Wheels” is “2” www.iks-project.eu Copyright IKS Consortium
  • 40. Page: 40 Property Restrictions  “The owl:allValuesFrom restriction requires 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.” Restriction on property  Local restriction for class definition “PreOwner“ for instances from class <owl:Class rdf:ID=“Car"> <rdfs:subClassOf> “Car” <owl:Restriction> <owl:onProperty rdf:resource=“preOwner” /> <owl:allValuesFrom rdf:resource=“Person” /> </owl:Restriction> <rdfs:subClassOf> </owl:Class> Each value is member of class “Person” Copyright IKS Consortium www.iks-project.eu
  • 41. Page: 41 Property Restrictions Restriction on property <owl:Class rdf:ID=“Car"> “PreOwner“ for instances from class <rdfs:subClassOf> “Car” <owl:Restriction> <owl:onProperty rdf:resource=“preOwner” /> <owl:someValuesFrom rdf:resource=“Person” /> </owl:Restriction> <rdfs:subClassOf> At least one value is </owl:Class> member of class “Person” Relation Implication allValuesFrom For all cars, if they have a previous owner, all previous owners are persons. someValuesFrom For all cars, they have at least one previous owner that is a person. www.iks-project.eu Copyright IKS Consortium
  • 42. Page: 42 Property Restrictions with Constants  “owl:hasValue allows us to specify classes based on the existence of particular property values. Hence, an individual will be a member of such a class whenever at least one of its property values is equal to the owl:hasValue resource.” <owl:Class rdf:ID=“myCars"> Restriction for <rdfs:subClassOf> property “Owner” <owl:Restriction> <owl:onProperty rdf:resource=“Owner”/> <owl:hasValue rdf:”JohnMiller”> </owl:Restriction> </rdfs:subClassOf> </owl:Class> The class “myCar” is defined by value www.iks-project.eu assignment Copyright IKS Consortium
  • 43. Page: 43 Intersection  owl:intersectionOf defines a class as an intersection of other classes. <owl:Class rdf:ID=“CarsFromVW"> <owl:intersectionOf rdf:parseType=“Collection”> <owl:Class rdf:about=”Cars”> <owl:Class rdf:about=“VW”/> If something is a “Car” </owl:intersectionOf> and a “VW” it is a </owl:Class> ”CarFromVW” www.iks-project.eu Copyright IKS Consortium
  • 44. Page: 44 Union  “owl:unionOf describes a class that contains those individuals that occur in at least one of the class Gearbox is everything that extensions of the class descriptions in the list”. is “ManualTransmission” or <owl:Class rdf:ID=“Gearbox"> “AutomaticTransmission”. <owl:unionOf rdf:parseType=“Collection”> <owl:Class rdf:about=”ManualTransmission”> <owl:Class rdf:about=“AutomaticTransmission”/> </owl:intersectionOf> </owl:Class> www.iks-project.eu Copyright IKS Consortium
  • 45. Page: 45 Complement  “The owl:complementOf construct selects all individuals from the domain of discourse that do not belong to a certain class.” <owl:Class rdf:about=”ManualTransmission”> <owl:Class rdf:about=“AutomaticTransmission”/> </owl:complementOf ref:resource=“ManualTransmission” /> </owl:Class> “AutomaticTransmission” includes as members all individuals that do not belong to “ManualTransmission”. www.iks-project.eu Copyright IKS Consortium
  • 46. Page: 46 If you want to know more ...  There is stuff about OWL out there, which is not part of this course:  Class axioms  Global restriction for properties  Logical characteristics of properties  Ifyou are interested in learning more about OWL please check:  The W3C OWL Reference (http://www.w3.org/TR/owl-ref)  The W3C OWL Guide (http://www.w3.org/TR/owl-guide) www.iks-project.eu Copyright IKS Consortium
  • 47. Page: 47 OWL 2  OWL 2 adds new functionality to OWL, while the overall structure is very similar  OWL 2 provides syntactic sugar  e.g. disjoint union of classes  Some OWL 2 feature provide new expressivity:  keys, property chains  richer datatypes, data ranges;  qualified cardinality restrictions  asymmetric, reflexive, disjoint properties  enhanced annotation capabilities http://www.w3.org/TR/owl2-primer/ www.iks-project.eu Copyright IKS Consortium
  • 48. Page: 48 Back to the Cake ... Highly expressive ontology language for modelling complex A language for querying knowledge domains. information specified in RDF. A language for describing a lightweight ontology. A model for describing resources with properties A format for specifying structured and property values. data in a machine-readable form Unique identification of resources Semantic Web Layer Cake, Image source: http://www.w3.org/2007/03/layerCake.svg www.iks-project.eu Copyright IKS Consortium
  • 49. Page: 49 Lessons Learned  Now you should know ...  ... what is the main difference between RDF and ontology languages like RDF Schema and OWL.  ... how can RDF Schema be used to build simple ontologies.  ... what are the shortcomings of RDF Schema and why is it not enough in some application cases.  ... the web ontology language OWL.  .. in which sense OWL is more expressive than RDF Schema. www.iks-project.eu Copyright IKS Consortium
  • 50. Page: 50 References and Additional Material  RDFVocabulary Description Language 1.0: RDF Schema  http://www.w3.org/TR/rdf-schema/  OWL Web Ontology Language Guide  http://www.w3.org/TR/owl-guide/  OWL Web Ontology Language Reference  http://www.w3.org/TR/owl-ref/  OWL 2 Web Ontology Language Primer  http://www.w3.org/TR/owl2-primer/ www.iks-project.eu Copyright IKS Consortium