SlideShare una empresa de Scribd logo
1 de 71
Jarrar © 2011 1
ORM in Description Logic
Lecture Notes on ORM in Description Logic
Birzeit University
2011
Dr. Mustafa Jarrar
University of Birzeit
mjarrar@birzeit.edu
www.jarrar.info
Knowledge Engineering
Jarrar © 2011 2
Outline
• Part I: Introduction (Why Description logics)
• Part II: Introduction to Description logics
• Part III: Mapping ORM into Description logic
• Something to think about 
Jarrar © 2011 3
Reading
• Mustafa Jarrar: Mapping ORM into the SHOIN/OWL Description Logic-
Towards a Methodological and Expressive Graphical Notation for
Ontology Engineering. In OTM workshops, proceeding of the International
Workshop on Object-Role Modeling (ORM'07). Volume 4805, LNCS, Pages
(729-741), Springer. ISBN: 9783540768890. Portogal. November, 2007.
• D. Nardi, R. J. Brachman. An Introduction to Description Logics. In the
Description Logic Handbook, edited by F. Baader, D. Calvanese, D.L.
McGuinness, D. Nardi, P.F. Patel-Schneider, Cambridge University Press, 2002,
pages 5-44.
http://www.inf.unibz.it/~franconi/dl/course/dlhb/dlhb-01.pdf
• Sean Bechhofer, “The DIG Description Logic Interface: DIG/1.1 ”
http://racer-systems.com/dl.php?file=NativeLibraries%252FDIGinterface11.pdf&typ=file&name=DIGinterface11.pdf
Jarrar © 2011 4
Remember: ORM has many Applications
Database
XML Schema Web (x)FormsBusiness Rules
Ontology
Originally
Warehouse
Later
Requirements
Engineering
Record
my recipes !
Jarrar © 2011 5
An Information System
Conceptual
Schema
Data
Logical Schema
DBMS
Queryprocessor
Apps
Information System
 Why do we need conceptual schemes? for designing Information
systems at the conceptual level.
 Each Information System is made for one organization.
Jarrar © 2011 6
Conceptual Schema
Data
DBMS
Logical Schema
Queryprocessor
Apps
IS1
Conceptual Schema
Data
DBMS
Logical Schema
Queryprocessor
Apps
ISn
New needs:
Open data exchange, inter-organizational transactions, global
queries…
Agreed data schemes
(XML, RDF)
Ontologies/ Semantics
(OWL)
(Web) Information Systems
Jarrar © 2011 7
Semantic Mediator
(Web) Information Systems
Bookstore
Ontology
Jarrar © 2011 8
Semantic Mediator
(Web) Information Systems
….
<owl:Class rdf:ID="Product" />
<owl:Class rdf:ID="Book">
<rdfs:subClassOf rdf:resource="#Product" />
</owl:Class>
<owl:Class rdf:ID="Price" />
<owl:Class rdf:ID="Value" />
<owl:Class rdf:ID="Currency" />
<owl:Class rdf:ID="Title" />
<owl:Class rdf:ID="ISBN" />
<owl:Class rdf:ID="Author" />
<owl:ObjectProperty rdf:ID="Valuated-By">
<rdfs:domain rdf:resource="#Product" />
<rdfs:range rdf:resource="#Price" />
</owl:ObjectProperty>
<owl:DataProperty rdf:ID=" Amounted-To .Value">
<rdfs:domain rdf:resource="#Price" />
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
</owl:ObjectProperty>
<owl:DataProperty rdf:ID="Measured-In.Currency">
<rdfs:domain rdf:resource="#Price" />
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
…
Bookstore
Ontology
Written in
OWL
Jarrar © 2011 9
OWL
 The Web Ontology Language (W3C Standard)
 Based on Description logic
….
<owl:Class rdf:ID="Product" />
<owl:Class rdf:ID="Book">
<rdfs:subClassOf rdf:resource="#Product" />
</owl:Class>
<owl:Class rdf:ID="Price" />
<owl:Class rdf:ID="Value" />
<owl:Class rdf:ID="Currency" />
<owl:Class rdf:ID="Title" />
<owl:Class rdf:ID="ISBN" />
<owl:Class rdf:ID="Author" />
<owl:ObjectProperty rdf:ID="Valuated-By">
<rdfs:domain rdf:resource="#Product" />
<rdfs:range rdf:resource="#Price" />
</owl:ObjectProperty>
<owl:DataProperty rdf:ID=" Amounted-To .Value">
<rdfs:domain rdf:resource="#Price" />
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
</owl:ObjectProperty>
…
 Can we use ORM to Model OWL ontologies?
Jarrar © 2011 10
First Order Logic (FOL)
• FOL allows us to represent knowledge precisely (Syntax and
Semantics).
• However, representation alone is not enough.
x PhDStudent(x)  Student (x)
x Employee(x)  Person (x)
x Student(x)  Person (x)
x PhDStudent(x)  Employee (x)
Person
StudentEmployee
PhD Student
• We also need to process this knowledge and make use of it, i.e.
Logical inference = (Reasoning).
Jarrar © 2011 11
x PhDStudent(x)  Student (x)
x Employee(x)  Person (x)
x Student(x)  Person (x)
x PhDStudent(x)  Employee (x)
Person
StudentEmployee
PhD Student
x PhDStudent(x)  Person (x)
How to process the above axioms to know that an axiom can
be derived from (=implied by) another axiom.
First Order Logic (FOL)
Reasoning:
Jarrar © 2011 12
Person
StudentEmployee
PhD Student
Find contradictions (satisfiability)
x Student(x)  Employee (x) = 
…etc.
x PhDStudent(x)  Student (x)
x Employee(x)  Person (x)
x Student(x)  Person (x)
x PhDStudent(x)  Employee (x)
First Order Logic (FOL)
Reasoning:
How to process the above axioms to know that an axiom can
be derived from (=implied by) another axiom.
Jarrar © 2011 13
First Order Logic (FOL)
Reasoning on FOL is far too complex (i.e. not decidable)
 Here comes description logics.
Jarrar © 2011 14
Introduction to
Description Logics
Jarrar © 2011 15
Description Logics
• Description logics are a family of logics concerned with knowledge
representation.
• A description logic is a decidable fragment of first-order logic,
associated with a set of automatic reasoning procedures.
• The basic constructs for a description logic are the notion of a
concept and the notion of a relationship.
• Complex concept and relationship expressions can be constructed
from atomic concepts and relationships with suitable constructs
between them.
• Example:
Mother ⊑ Female ⊓ HasChild
HumanMother ⊑ Female ⊓ HasChild.Person
Jarrar © 2011 16
Description Logics
Most known description logics are :
A more practical and expressive description logic.
C, D  A | ⊤ | ⊥|¬A | C ⊓ D | R.C | R.⊤
AL
Very expressive description logic,
Capable of representing most database constructs.DLRidf
Very popular description logic.
The logic underlying OWL.
SROIQ
The simplest and less expressive description logic.
C, D  A | C ⊓ D | R.C | R
FL¯
Jarrar © 2011 17
Description logic AL
• Example constructs:
Jarrar © 2011 18
More AL Family Members
• Disjunction (U)
• Full existential quantification ()
• Number restrictions (N)
• Full negation (C)
• Example:
Jarrar © 2011 19
DL as fragments of Predicate Logic
Jarrar © 2011 20
DL Knowledge Base
• DL Knowledge Base (KB) normally separated
into 2 parts:
– TBox is a set of axioms describing structure of
domain (i.e., a conceptual schema), e.g.:
• HappyFather  Man ⊓ hasChild.Female ⊓ …
• Elephant ⊑ Animal ⊓ Large ⊓ Grey
• transitive(ancestor)
– ABox is a set of axioms describing a concrete
situation (data), e.g.:
• John:HappyFather
• <John,Mary>:hasChild
Jarrar © 2011 21
Terminologies or TBoxes
Jarrar © 2011 22
Inference Services
Jarrar © 2011 23
Inference services based on Satisfiability
Jarrar © 2011 24
Inference service: concept subsumption
Is a Mother always a Woman?
Yes, Mother Subsumes Woman
Description logic reasoners offer the computation of a
Subsumption (taxonomy) of all named concepts
Jarrar © 2011 25
• They offer reasoning services for multiple TBoxes and ABoxes.
• They run as background reasoning engines.
• They understand DIG, which is a simple protocol (based on HTTP)
along with an XML Schema.
Description Logic Reasoners
<impliesc>
<catom name=“Student"/>
<catom name=“Person"/>
</impliesc>
Student ⊑ Person• Example:
• For example:
Jarrar © 2011 26
The SHOIN Description Logic
• The logic underpinning OWL, the standard (W3C recommendation)
Ontology Web Language.
• A compromise between expressive power and computational
complexity.
• Does not support: n-ary relations, identification, functional
dependencies.
Jarrar © 2011 27
Mapping ORM to SHOIN
Jarrar © 2011 28
….
<owl:Class rdf:ID="Product" />
<owl:Class rdf:ID="Book">
<rdfs:subClassOf rdf:resource="#Product" />
</owl:Class>
<owl:Class rdf:ID="Price" />
<owl:Class rdf:ID="Value" />
<owl:Class rdf:ID="Currency" />
<owl:Class rdf:ID="Title" />
<owl:Class rdf:ID="ISBN" />
<owl:Class rdf:ID="Author" />
<owl:ObjectProperty rdf:ID="Valuated-By">
<rdfs:domain rdf:resource="#Product" />
<rdfs:range rdf:resource="#Price" />
</owl:ObjectProperty>
<owl:DataProperty rdf:ID=" Amounted-To .Value">
<rdfs:domain rdf:resource="#Price" />
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
</owl:ObjectProperty>
<owl:DataProperty rdf:ID="Measured-In.Currency">
<rdfs:domain rdf:resource="#Price" />
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
…
(Web) Information Systems
Semantic Mediator
Bookstore
Ontology
Jarrar © 2011 29
Mapping ORM to Description Logic
Why do we need this mapping for?
• Use ORM as a graphical notation for Ontology/description
logic languages.
(The DL benefit from ORM)
• Reasoning on ORM schemes automatically.
(The ORM benefit from DL)
Jarrar © 2011 30
Examples of reasoning services:
- Satisfiability
SAT(C,T ) iff there is a model I of T with CI  
To know whether a concept can be populated or not (e.g. because of
some axioms contradicting each other)
- Subsumption
SUBS(C, D,T ) iff CI ⊆ DI for all model I of T
To know whether a concept is subsuming another concept (e.g. to find
unwanted or missing subsumptions)
- Redundancies
EQUIV(C, D,T ) iff CI = DI for all model I of T
To know whether two concepts are equal (e.g. to find out redundancies)
Reasoning Services
Jarrar © 2011 31
Reasoning on ORM Schemes
 Schema satisfiability: A schema is satisfiable if and only if there is at
least one concept in the schema that can be populated.
 Concept satisfiability: A schema is satisfiable if and only if all
concepts in the schema can be populated.
 Role satisfiability: A schema is satisfiable if and only if all roles in the
schema can be populated.
 Concept satisfiability implies schema satiability.
 Role satisfiability implies concept satiability.
 Weak satisfiability
 Strong satisfiability
Person Course
Teaches
Studies
{Math1, Prog1}
3-5
Jarrar © 2011 32
Mapping ORM to DLR and SHOIN
n-ary relations:
-- No Support --
SHOIN
Jarrar © 2011 33
Mapping ORM to DLR and SHOIN
Binary relations:
SHOIN
Jarrar © 2011 34
Mapping ORM to DLR and SHOIN
Unary roles:
SHOIN
Jarrar © 2011 35
Mapping ORM to DLR and SHOIN
Role Mandatory:
SHOIN
Jarrar © 2011 36
Mapping ORM to DLR and SHOIN
Disjunctive Mandatory:
SHOIN
Jarrar © 2011 37
Mapping ORM to DLR and SHOIN
Role Uniqueness:
SHOIN
Jarrar © 2011 38
Mapping ORM to DLR and SHOIN
Predicate Mandatory:
-- No Support --
SHOIN
Jarrar © 2011 39
Mapping ORM to DLR and SHOIN
External Mandatory:
-- No Support --
SHOIN
Jarrar © 2011 40
Mapping ORM to DLR and SHOIN
Role Frequency:
SHOIN
Jarrar © 2011 41
Mapping ORM to DLR and SHOIN
Multiple-Role Frequency:
-- No Support --
SHOIN
Jarrar © 2011 42
Mapping ORM to DLR and SHOIN
Subtypes:
SHOIN
Jarrar © 2011 43
Mapping ORM to DLR and SHOIN
Total Subtypes:
SHOIN
Jarrar © 2011 44
Mapping ORM to DLR and SHOIN
Exclusive Subtypes:
SHOIN
Jarrar © 2011 45
Mapping ORM to DLR and SHOIN
Value Constraint:
STRING:
Number:
SHOIN
SHOIN
Jarrar © 2011 46
Mapping ORM to DLR and SHOIN
Role Subset Constraint:
SHOIN
Jarrar © 2011 47
Mapping ORM to DLR and SHOIN
Predicate Subset Constraint:
SHOIN
Jarrar © 2011 48
Mapping ORM to DLR and SHOIN
Role-sequence Subset Constraint:
-- No Support --
SHOIN
Jarrar © 2011 49
Mapping ORM to DLR and SHOIN
Role Equality Constraint:
SHOIN
Jarrar © 2011 50
Mapping ORM to DLR and SHOIN
Predicate Equality Constraint:
SHOIN
Jarrar © 2011 51
Mapping ORM to DLR and SHOIN
Role-sequence Equality Constraint:
-- No Support --
SHOIN
Jarrar © 2011 52
Mapping ORM to DLR and SHOIN
Role exclusion Constraint:
SHOIN
Jarrar © 2011 53
Mapping ORM to DLR and SHOIN
Predicate Exclusion Constraint:
SHOIN
Jarrar © 2011 54
Mapping ORM to DLR and SHOIN
Role- sequence Exclusion Constraint:
-- No Support --
SHOIN
Jarrar © 2011 55
Mapping ORM to DLR and SHOIN
Objectification:
SHOIN
-- No Support --
Jarrar © 2011 56
DogmaModeler
 DogmaModeler is an ontology engineering tool
 It uses ORM as a graphical notation
 It uses Racer as a background reasoning engine
Other functionalities of DogmaModeler:
 Verbalization of ORM into 11 human languages.
 Modularization of auto composition of ORM schemes
 ….
Jarrar © 2011 57
Home Work
• Map your ORM model (project 3) into description logic.
• Reason about your ORM model using Racer.
• MS Word file containing:
1. You ORM model
2. Map ORM into DL
3. Map ORM into DIG and load it to Racer
4. Screen shorts of Racer results, that (a)your model is satisfiable, (b)
your model is unsatisfiable (make something wrong)
The next Lecture assumes that you know XML, if not
please read about it.
Jarrar © 2011 58
Conclusions and Discussion
Jarrar © 2011 59
n-ary Relations
Binary Relations
Predicate Uniqueness
Role Equality
Predicate Equality
Seq-Role Equality Irreflexive
Role MandatorySybtype
NUMBER Value
Symmetric
Unary Relations
Disjunctive Mandatory
Exclusive
STRING Value
Asymmetric
Role Frequency Multi Role Frequency
Total
Objectification
Anti Symmetric
Role Uniqueness
Role subset
Predicate Subset
Seq-Role Subset Intransitive
External Uniqueness
Role Exclusion
Predicate Exclusion
Seq-Role Exclusion Acyclic
ORM Constructs and constraints
MappedtoDLRMappedtoSHONOWLCannotmap
Jarrar © 2011 60
Predicate Uniqueness
Seq-Role Equality
Seq-Role Subset
Seq-Role Exclusion
Acyclic
Multi Role Frequency
n-ary Relations
Objectification
External Uniqueness
Binary Relations
Role Equality
Predicate Equality
Irreflexive
Role Mandatory
NUMBER Value
Symmetric
Unary Relations
Disjunctive Mandatory
Exclusive
STRING Value
Asymmetric
Total
Anti Symmetric
Role Uniqueness
Role subset Predicate Subset
Intransitive
Role Exclusion Predicate Exclusion
Role Frequency
Sybtype
Lesson 1: what is mapped to what
Jarrar © 2011 61
Predicate Uniqueness
Seq-Role Equality
Seq-Role Subset
Seq-Role Exclusion
Acyclic
Multi Role Frequency
n-ary Relations
Objectification
External Uniqueness
Binary Relations
Role Equality
Predicate Equality
Irreflexive
Role Mandatory
NUMBER Value
Symmetric
Unary Relations
Disjunctive Mandatory
Exclusive
STRING Value
Asymmetric
Total
Anti Symmetric
Role Uniqueness
Role subset Predicate Subset
Intransitive
Role Exclusion Predicate Exclusion
Role Frequency
Sybtype
Lesson 2: Decidable fragments
Decidable
Jarrar © 2011 62
Description Logic Reasoners
a short tutorial on DIG
Jarrar © 2011 63
• They offer reasoning services for multiple TBoxes and ABoxes.
• They run as background reasoning engines.
• They understand DIG, which is a simple protocol (based on HTTP)
along with an XML Schema.
Description Logic Reasoners
<impliesc>
<catom name="Student"/>
<catom name="Person"/>
</impliesc>
Student ⊑ Person• Example:
• For example:
Jarrar © 2011 64
DIG Interface (http://dig.sourceforge.net/ )
S. Bechhofer: The DIG Description Logic Interface: DIG/1.1
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.104.3837&rep=rep1&type=pdf
Jarrar © 2011 65
DIG Interface (http://dig.sourceforge.net/ )
S. Bechhofer: The DIG Description Logic Interface: DIG/1.1
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.104.3837&rep=rep1&type=pdf
Jarrar © 2011 66
DIG Protocol
• DIG is only an XML schema for a description logic along with ask/tell
functionality
• You write a new Knowledge base (using the DIG XML syntax), and
send it to Racer using the TELL functionality.
• You can then write you Query/Question (using the DIG, XML syntax),
and send it to Racer using the ASK functionality.
• You may communicate with the Racer through HTTP or SOAP.
Jarrar © 2011 67
Create e a new Knowledge Base
<?xml version="1.0" encoding="UTF-8"?>
<newKB
xmlns="http://dl.kr.org/dig/2003/02/lang"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://dl.kr.org/dig/2003/02/lang
http://dl-web.man.ac.uk/dig/2003/02/dig.xsd"/>
<?xml version="1.0" encoding="UTF-8"?>
<response
xmlns="http://dl.kr.org/dig/2003/02/lang"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://dl.kr.org/dig/2003/02/lang
http://dl-web.man.ac.uk/dig/2003/02/dig.xsd">
<kb uri="urn:uuid:abcdefgh-1234-1234-12345689ab"/>
The Response Message
The newKB Message
This URI should then be used during TELL and
ASK requests made against the knowledge base
Jarrar © 2011 68
Tell Syntax
<?xml version="1.0" encoding="ISO-8859-1"?>
<tells
xmlns="http://dl.kr.org/dig/2003/02/lang"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://dl.kr.org/dig/2003/02/lang
http://dl-web.man.ac.uk/dig/2003/02/dig.xsd"
uri="urn:uuid:abcdefgh-1234-1234-12345689ab">
<defconcept name="driver"/>
<equalc>
<catom name="driver"/>
<and>
<catom name="person"/>
<some>
<ratom name="drives"/>
<catom name="vehicle"/>
</some>
</and>
</equalc>
<defconcept name="person"/>
<defconcept name="vehicle"/>
<defrole name="drives"/>
</tells>
A TELL request must contain in its body a tells element, which itself
consists of a number of tell statements.
Example: Driver ⊑ Person ⊓ Drives.Vehicle
Jarrar © 2011 69
Tell Syntax
Tell Language
Primitive
Concept
Introduction
<defconcept name="CN"/>
<defrole name="CN"/>
<deffeature name="CN"/>
<defattribute name="CN"/>
<defindividual name="CN"/>
Concept
Axioms
<impliesc>C1 C2</impliesc>
<equalc>C1 C2</equalc>
<disjoint>C1... Cn</disjoint>
Role
Axioms
<impliesr>R1 R2</impliesc>
<equalr>R1 R2</equalr>
<domain>R E</domain>
<range>R E</range>
<rangeint>R</rangeint>
<rangestring>R</rangestring>
<transitive>R</transitive>
<functional>R</functional>
Individual
Axioms
<instanceof>I C</instanceof>
<related>I1 R I2</related>
<value>I A V</value>
Concept Language
Primitive
Concepts
<top/>
<bottom/>
<catom name="CN"/>
Boolean
Operators
<and>E1... En</and>
<or>E1... En</or>
<not>E</not>
Property
Restrictions
<some>R E</some>
<all>R E</all>
<atmost num="n">R E</atmost>
<atleast num="n">R E</atleast>
<iset>I1... In</iset>
Concrete
Domain
Expressions
<defined>A</defined>
<stringmin val="s">A</stringmin>
<stringmax val="s">A</stringmax>
<stringequals val="s">A</stringequals>
<stringrange min="s"
max="t">A</stringrange>
<intmin val="i">A</intmin>
<intmax val="i">A</intmax>
<intequals val="i">A</intequals>
<intrange min="i" max="j">A</intrange>
Role
Expressions
<ratom name="CN"/>
<feature name="CN"/>
<inverse>R</inverse>
<attribute name="CN"/>
<chain>F1... FN A</chain>
Individuals <individual name="CN"/>
Jarrar © 2011 70
Ask Syntax
• An ASK request must contain in its body an asks element.
• Multiple queries in one request is possible.
<?xml version="1.0"?>
<asks
xmlns="http://dl.kr.org/dig/2003/02/lang">
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://dl.kr.org/dig/2003/02/lang"
http://dl-web.man.ac.uk/dig/2003/02/dig.xsd"
uri="urn:uuid:abcdefgh-1234-1234-12345689ab">
<satisfiable id="q1">
<catom name="Vehicle"/>
</satisfiable>
<descendants id="q2">
<and>
<catom name="person"/>
<some>
<ratom name="drives"/>
<catom name="vehicle"/>
</some>
</and>
</descendants>
<types id="q3">
<individual name="JohnSmith"></individual>
</types>
</asks>
KB |= Vehicle
asks about satisfiability of
the Vehicle concept
asks for all those concepts subsumed by
the description given, i.e. all the drivers
a |  |= Peron(a) ⊓Drives.Vehicle
asks for the known types of the
given individual
C |  |= C(JohnSmith)
Jarrar © 2011 71
Ask Syntax
Ask Language
Primitive Concept
Retrieval
<allConceptNames/>
<allRoleNames/>
<allIndividuals/>
Satisfiability
<satisfiable>C</satisfiable>
<subsumes>C1 C2</subsumes>
<disjoint>C1 C2</disjoint>
Concept Hierarchy
<parents>C</parents>
<children>C</children>
<ancestors>C</ancestors>
<descendants>C<descendants/>
<equivalents>C</equivalents>
Role Hierarchy
<rparents>R</rparents>
<rchildren>R</rchildren>
<rancestors>R</rancestors>
<rdescendants>R<rdescendants/>
Individual Queries
<instances>C</instances>
<types>I</types>
<instance>I C</instance>
<roleFillers>I R</roleFillers>
<relatedIndividuals>R</relatedIndividuals>

Más contenido relacionado

La actualidad más candente

Introduction to Object Oriented Programming
Introduction to Object Oriented ProgrammingIntroduction to Object Oriented Programming
Introduction to Object Oriented ProgrammingMoutaz Haddara
 
Categorization of Semantic Roles for Dictionary Definitions
Categorization of Semantic Roles for Dictionary DefinitionsCategorization of Semantic Roles for Dictionary Definitions
Categorization of Semantic Roles for Dictionary DefinitionsAndre Freitas
 
Object Oriented Programming Overview for the PeopleSoft Developer
Object Oriented Programming Overview for the PeopleSoft DeveloperObject Oriented Programming Overview for the PeopleSoft Developer
Object Oriented Programming Overview for the PeopleSoft DeveloperLee Greffin
 
Oop c++class(final).ppt
Oop c++class(final).pptOop c++class(final).ppt
Oop c++class(final).pptAlok Kumar
 
Abstract Class In Java | Java Abstract Class Tutorial | Java Tutorial For Beg...
Abstract Class In Java | Java Abstract Class Tutorial | Java Tutorial For Beg...Abstract Class In Java | Java Abstract Class Tutorial | Java Tutorial For Beg...
Abstract Class In Java | Java Abstract Class Tutorial | Java Tutorial For Beg...Simplilearn
 
Object Oriented Programming in Java _lecture 1
Object Oriented Programming in Java _lecture 1Object Oriented Programming in Java _lecture 1
Object Oriented Programming in Java _lecture 1Mahmoud Alfarra
 
Java basics and java variables
Java basics and java variablesJava basics and java variables
Java basics and java variablesPushpendra Tyagi
 
Fundamentals of OOP (Object Oriented Programming)
Fundamentals of OOP (Object Oriented Programming)Fundamentals of OOP (Object Oriented Programming)
Fundamentals of OOP (Object Oriented Programming)MD Sulaiman
 
WHAT IS ABSTRACTION IN JAVA
WHAT IS ABSTRACTION IN JAVAWHAT IS ABSTRACTION IN JAVA
WHAT IS ABSTRACTION IN JAVAsivasundari6
 
Object Oriented Paradigm
Object Oriented ParadigmObject Oriented Paradigm
Object Oriented ParadigmHüseyin Ergin
 
Introduction to object oriented programming
Introduction to object oriented programmingIntroduction to object oriented programming
Introduction to object oriented programmingAbzetdin Adamov
 
3. Data types and Variables
3. Data types and Variables3. Data types and Variables
3. Data types and VariablesNilesh Dalvi
 
OOP programming
OOP programmingOOP programming
OOP programminganhdbh
 
Concepts In Object Oriented Programming Languages
Concepts In Object Oriented Programming LanguagesConcepts In Object Oriented Programming Languages
Concepts In Object Oriented Programming Languagesppd1961
 

La actualidad más candente (20)

Introduction to Object Oriented Programming
Introduction to Object Oriented ProgrammingIntroduction to Object Oriented Programming
Introduction to Object Oriented Programming
 
Oop Presentation
Oop PresentationOop Presentation
Oop Presentation
 
javainterface
javainterfacejavainterface
javainterface
 
OWL 2 Overview
OWL 2 OverviewOWL 2 Overview
OWL 2 Overview
 
Categorization of Semantic Roles for Dictionary Definitions
Categorization of Semantic Roles for Dictionary DefinitionsCategorization of Semantic Roles for Dictionary Definitions
Categorization of Semantic Roles for Dictionary Definitions
 
Object Oriented Programming Overview for the PeopleSoft Developer
Object Oriented Programming Overview for the PeopleSoft DeveloperObject Oriented Programming Overview for the PeopleSoft Developer
Object Oriented Programming Overview for the PeopleSoft Developer
 
Oop c++class(final).ppt
Oop c++class(final).pptOop c++class(final).ppt
Oop c++class(final).ppt
 
Abstract Class In Java | Java Abstract Class Tutorial | Java Tutorial For Beg...
Abstract Class In Java | Java Abstract Class Tutorial | Java Tutorial For Beg...Abstract Class In Java | Java Abstract Class Tutorial | Java Tutorial For Beg...
Abstract Class In Java | Java Abstract Class Tutorial | Java Tutorial For Beg...
 
Object Oriented Programming in Java _lecture 1
Object Oriented Programming in Java _lecture 1Object Oriented Programming in Java _lecture 1
Object Oriented Programming in Java _lecture 1
 
Java basics and java variables
Java basics and java variablesJava basics and java variables
Java basics and java variables
 
Fundamentals of OOP (Object Oriented Programming)
Fundamentals of OOP (Object Oriented Programming)Fundamentals of OOP (Object Oriented Programming)
Fundamentals of OOP (Object Oriented Programming)
 
WHAT IS ABSTRACTION IN JAVA
WHAT IS ABSTRACTION IN JAVAWHAT IS ABSTRACTION IN JAVA
WHAT IS ABSTRACTION IN JAVA
 
Object Oriented Paradigm
Object Oriented ParadigmObject Oriented Paradigm
Object Oriented Paradigm
 
Java unit 2
Java unit 2Java unit 2
Java unit 2
 
Introduction to object oriented programming
Introduction to object oriented programmingIntroduction to object oriented programming
Introduction to object oriented programming
 
3. Data types and Variables
3. Data types and Variables3. Data types and Variables
3. Data types and Variables
 
Object-oriented concepts
Object-oriented conceptsObject-oriented concepts
Object-oriented concepts
 
OOP programming
OOP programmingOOP programming
OOP programming
 
Oop concept
Oop conceptOop concept
Oop concept
 
Concepts In Object Oriented Programming Languages
Concepts In Object Oriented Programming LanguagesConcepts In Object Oriented Programming Languages
Concepts In Object Oriented Programming Languages
 

Similar a Jarrar: ORM in Description Logic

ARTIFICIAL INTELLIGENCE---UNIT 4.pptx
ARTIFICIAL INTELLIGENCE---UNIT 4.pptxARTIFICIAL INTELLIGENCE---UNIT 4.pptx
ARTIFICIAL INTELLIGENCE---UNIT 4.pptxRuchitaMaaran
 
Different Semantic Perspectives for Question Answering Systems
Different Semantic Perspectives for Question Answering SystemsDifferent Semantic Perspectives for Question Answering Systems
Different Semantic Perspectives for Question Answering SystemsAndre Freitas
 
Mdst3705 2013-02-05-databases
Mdst3705 2013-02-05-databasesMdst3705 2013-02-05-databases
Mdst3705 2013-02-05-databasesRafael Alvarado
 
Dsm as theory building
Dsm as theory buildingDsm as theory building
Dsm as theory buildingClarkTony
 
Web ontology language (owl)
Web ontology language (owl)Web ontology language (owl)
Web ontology language (owl)Ameer Sameer
 
chapter7.ppt java programming lecture notes
chapter7.ppt java programming lecture noteschapter7.ppt java programming lecture notes
chapter7.ppt java programming lecture noteskavitamittal18
 
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...Khirulnizam Abd Rahman
 
A Simple Introduction to Neural Information Retrieval
A Simple Introduction to Neural Information RetrievalA Simple Introduction to Neural Information Retrieval
A Simple Introduction to Neural Information RetrievalBhaskar Mitra
 
Constructive Description Logics 2006
Constructive Description Logics 2006Constructive Description Logics 2006
Constructive Description Logics 2006Valeria de Paiva
 
Mdst3703 2013-09-17-text-models
Mdst3703 2013-09-17-text-modelsMdst3703 2013-09-17-text-models
Mdst3703 2013-09-17-text-modelsRafael Alvarado
 
Tutorial OWL and drug discovery ICBO 2013
Tutorial OWL and drug discovery ICBO 2013Tutorial OWL and drug discovery ICBO 2013
Tutorial OWL and drug discovery ICBO 2013Samuel Croset
 
OODBMS Concepts - National University of Singapore.pdf
OODBMS Concepts - National University of Singapore.pdfOODBMS Concepts - National University of Singapore.pdf
OODBMS Concepts - National University of Singapore.pdfssuserd5e338
 

Similar a Jarrar: ORM in Description Logic (20)

BT02.pptx
BT02.pptxBT02.pptx
BT02.pptx
 
ARTIFICIAL INTELLIGENCE---UNIT 4.pptx
ARTIFICIAL INTELLIGENCE---UNIT 4.pptxARTIFICIAL INTELLIGENCE---UNIT 4.pptx
ARTIFICIAL INTELLIGENCE---UNIT 4.pptx
 
Different Semantic Perspectives for Question Answering Systems
Different Semantic Perspectives for Question Answering SystemsDifferent Semantic Perspectives for Question Answering Systems
Different Semantic Perspectives for Question Answering Systems
 
Ontology Engineering
Ontology EngineeringOntology Engineering
Ontology Engineering
 
Mdst3705 2013-02-05-databases
Mdst3705 2013-02-05-databasesMdst3705 2013-02-05-databases
Mdst3705 2013-02-05-databases
 
Ontologies Fmi 042010
Ontologies Fmi 042010Ontologies Fmi 042010
Ontologies Fmi 042010
 
Dsm as theory building
Dsm as theory buildingDsm as theory building
Dsm as theory building
 
Web ontology language (owl)
Web ontology language (owl)Web ontology language (owl)
Web ontology language (owl)
 
chapter7.ppt java programming lecture notes
chapter7.ppt java programming lecture noteschapter7.ppt java programming lecture notes
chapter7.ppt java programming lecture notes
 
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
 
Learning ontologies
Learning ontologiesLearning ontologies
Learning ontologies
 
Formal Logic in AI
Formal Logic in AIFormal Logic in AI
Formal Logic in AI
 
Prolog final
Prolog finalProlog final
Prolog final
 
A Simple Introduction to Neural Information Retrieval
A Simple Introduction to Neural Information RetrievalA Simple Introduction to Neural Information Retrieval
A Simple Introduction to Neural Information Retrieval
 
Description logic
Description logicDescription logic
Description logic
 
Constructive Description Logics 2006
Constructive Description Logics 2006Constructive Description Logics 2006
Constructive Description Logics 2006
 
Mdst3703 2013-09-17-text-models
Mdst3703 2013-09-17-text-modelsMdst3703 2013-09-17-text-models
Mdst3703 2013-09-17-text-models
 
Tutorial OWL and drug discovery ICBO 2013
Tutorial OWL and drug discovery ICBO 2013Tutorial OWL and drug discovery ICBO 2013
Tutorial OWL and drug discovery ICBO 2013
 
AI Lesson 11
AI Lesson 11AI Lesson 11
AI Lesson 11
 
OODBMS Concepts - National University of Singapore.pdf
OODBMS Concepts - National University of Singapore.pdfOODBMS Concepts - National University of Singapore.pdf
OODBMS Concepts - National University of Singapore.pdf
 

Más de Mustafa Jarrar

Clustering Arabic Tweets for Sentiment Analysis
Clustering Arabic Tweets for Sentiment AnalysisClustering Arabic Tweets for Sentiment Analysis
Clustering Arabic Tweets for Sentiment AnalysisMustafa Jarrar
 
Classifying Processes and Basic Formal Ontology
Classifying Processes  and Basic Formal OntologyClassifying Processes  and Basic Formal Ontology
Classifying Processes and Basic Formal OntologyMustafa Jarrar
 
Discrete Mathematics Course Outline
Discrete Mathematics Course OutlineDiscrete Mathematics Course Outline
Discrete Mathematics Course OutlineMustafa Jarrar
 
Business Process Implementation
Business Process ImplementationBusiness Process Implementation
Business Process ImplementationMustafa Jarrar
 
Business Process Design and Re-engineering
Business Process Design and Re-engineeringBusiness Process Design and Re-engineering
Business Process Design and Re-engineeringMustafa Jarrar
 
BPMN 2.0 Analytical Constructs
BPMN 2.0 Analytical ConstructsBPMN 2.0 Analytical Constructs
BPMN 2.0 Analytical ConstructsMustafa Jarrar
 
BPMN 2.0 Descriptive Constructs
BPMN 2.0 Descriptive Constructs  BPMN 2.0 Descriptive Constructs
BPMN 2.0 Descriptive Constructs Mustafa Jarrar
 
Introduction to Business Process Management
Introduction to Business Process ManagementIntroduction to Business Process Management
Introduction to Business Process ManagementMustafa Jarrar
 
Customer Complaint Ontology
Customer Complaint Ontology Customer Complaint Ontology
Customer Complaint Ontology Mustafa Jarrar
 
Subset, Equality, and Exclusion Rules
Subset, Equality, and Exclusion RulesSubset, Equality, and Exclusion Rules
Subset, Equality, and Exclusion RulesMustafa Jarrar
 
Schema Modularization in ORM
Schema Modularization in ORMSchema Modularization in ORM
Schema Modularization in ORMMustafa Jarrar
 
On Computer Science Trends and Priorities in Palestine
On Computer Science Trends and Priorities in PalestineOn Computer Science Trends and Priorities in Palestine
On Computer Science Trends and Priorities in PalestineMustafa Jarrar
 
Lessons from Class Recording & Publishing of Eight Online Courses
Lessons from Class Recording & Publishing of Eight Online CoursesLessons from Class Recording & Publishing of Eight Online Courses
Lessons from Class Recording & Publishing of Eight Online CoursesMustafa Jarrar
 
Presentation curras paper-emnlp2014-final
Presentation curras paper-emnlp2014-finalPresentation curras paper-emnlp2014-final
Presentation curras paper-emnlp2014-finalMustafa Jarrar
 
Jarrar: Future Internet in Horizon 2020 Calls
Jarrar: Future Internet in Horizon 2020 CallsJarrar: Future Internet in Horizon 2020 Calls
Jarrar: Future Internet in Horizon 2020 CallsMustafa Jarrar
 
Habash: Arabic Natural Language Processing
Habash: Arabic Natural Language ProcessingHabash: Arabic Natural Language Processing
Habash: Arabic Natural Language ProcessingMustafa Jarrar
 
Adnan: Introduction to Natural Language Processing
Adnan: Introduction to Natural Language Processing Adnan: Introduction to Natural Language Processing
Adnan: Introduction to Natural Language Processing Mustafa Jarrar
 
Riestra: How to Design and engineer Competitive Horizon 2020 Proposals
Riestra: How to Design and engineer Competitive Horizon 2020 ProposalsRiestra: How to Design and engineer Competitive Horizon 2020 Proposals
Riestra: How to Design and engineer Competitive Horizon 2020 ProposalsMustafa Jarrar
 
Bouquet: SIERA Workshop on The Pillars of Horizon2020
Bouquet: SIERA Workshop on The Pillars of Horizon2020Bouquet: SIERA Workshop on The Pillars of Horizon2020
Bouquet: SIERA Workshop on The Pillars of Horizon2020Mustafa Jarrar
 
Jarrar: Sparql Project
Jarrar: Sparql ProjectJarrar: Sparql Project
Jarrar: Sparql ProjectMustafa Jarrar
 

Más de Mustafa Jarrar (20)

Clustering Arabic Tweets for Sentiment Analysis
Clustering Arabic Tweets for Sentiment AnalysisClustering Arabic Tweets for Sentiment Analysis
Clustering Arabic Tweets for Sentiment Analysis
 
Classifying Processes and Basic Formal Ontology
Classifying Processes  and Basic Formal OntologyClassifying Processes  and Basic Formal Ontology
Classifying Processes and Basic Formal Ontology
 
Discrete Mathematics Course Outline
Discrete Mathematics Course OutlineDiscrete Mathematics Course Outline
Discrete Mathematics Course Outline
 
Business Process Implementation
Business Process ImplementationBusiness Process Implementation
Business Process Implementation
 
Business Process Design and Re-engineering
Business Process Design and Re-engineeringBusiness Process Design and Re-engineering
Business Process Design and Re-engineering
 
BPMN 2.0 Analytical Constructs
BPMN 2.0 Analytical ConstructsBPMN 2.0 Analytical Constructs
BPMN 2.0 Analytical Constructs
 
BPMN 2.0 Descriptive Constructs
BPMN 2.0 Descriptive Constructs  BPMN 2.0 Descriptive Constructs
BPMN 2.0 Descriptive Constructs
 
Introduction to Business Process Management
Introduction to Business Process ManagementIntroduction to Business Process Management
Introduction to Business Process Management
 
Customer Complaint Ontology
Customer Complaint Ontology Customer Complaint Ontology
Customer Complaint Ontology
 
Subset, Equality, and Exclusion Rules
Subset, Equality, and Exclusion RulesSubset, Equality, and Exclusion Rules
Subset, Equality, and Exclusion Rules
 
Schema Modularization in ORM
Schema Modularization in ORMSchema Modularization in ORM
Schema Modularization in ORM
 
On Computer Science Trends and Priorities in Palestine
On Computer Science Trends and Priorities in PalestineOn Computer Science Trends and Priorities in Palestine
On Computer Science Trends and Priorities in Palestine
 
Lessons from Class Recording & Publishing of Eight Online Courses
Lessons from Class Recording & Publishing of Eight Online CoursesLessons from Class Recording & Publishing of Eight Online Courses
Lessons from Class Recording & Publishing of Eight Online Courses
 
Presentation curras paper-emnlp2014-final
Presentation curras paper-emnlp2014-finalPresentation curras paper-emnlp2014-final
Presentation curras paper-emnlp2014-final
 
Jarrar: Future Internet in Horizon 2020 Calls
Jarrar: Future Internet in Horizon 2020 CallsJarrar: Future Internet in Horizon 2020 Calls
Jarrar: Future Internet in Horizon 2020 Calls
 
Habash: Arabic Natural Language Processing
Habash: Arabic Natural Language ProcessingHabash: Arabic Natural Language Processing
Habash: Arabic Natural Language Processing
 
Adnan: Introduction to Natural Language Processing
Adnan: Introduction to Natural Language Processing Adnan: Introduction to Natural Language Processing
Adnan: Introduction to Natural Language Processing
 
Riestra: How to Design and engineer Competitive Horizon 2020 Proposals
Riestra: How to Design and engineer Competitive Horizon 2020 ProposalsRiestra: How to Design and engineer Competitive Horizon 2020 Proposals
Riestra: How to Design and engineer Competitive Horizon 2020 Proposals
 
Bouquet: SIERA Workshop on The Pillars of Horizon2020
Bouquet: SIERA Workshop on The Pillars of Horizon2020Bouquet: SIERA Workshop on The Pillars of Horizon2020
Bouquet: SIERA Workshop on The Pillars of Horizon2020
 
Jarrar: Sparql Project
Jarrar: Sparql ProjectJarrar: Sparql Project
Jarrar: Sparql Project
 

Último

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 

Último (20)

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

Jarrar: ORM in Description Logic

  • 1. Jarrar © 2011 1 ORM in Description Logic Lecture Notes on ORM in Description Logic Birzeit University 2011 Dr. Mustafa Jarrar University of Birzeit mjarrar@birzeit.edu www.jarrar.info Knowledge Engineering
  • 2. Jarrar © 2011 2 Outline • Part I: Introduction (Why Description logics) • Part II: Introduction to Description logics • Part III: Mapping ORM into Description logic • Something to think about 
  • 3. Jarrar © 2011 3 Reading • Mustafa Jarrar: Mapping ORM into the SHOIN/OWL Description Logic- Towards a Methodological and Expressive Graphical Notation for Ontology Engineering. In OTM workshops, proceeding of the International Workshop on Object-Role Modeling (ORM'07). Volume 4805, LNCS, Pages (729-741), Springer. ISBN: 9783540768890. Portogal. November, 2007. • D. Nardi, R. J. Brachman. An Introduction to Description Logics. In the Description Logic Handbook, edited by F. Baader, D. Calvanese, D.L. McGuinness, D. Nardi, P.F. Patel-Schneider, Cambridge University Press, 2002, pages 5-44. http://www.inf.unibz.it/~franconi/dl/course/dlhb/dlhb-01.pdf • Sean Bechhofer, “The DIG Description Logic Interface: DIG/1.1 ” http://racer-systems.com/dl.php?file=NativeLibraries%252FDIGinterface11.pdf&typ=file&name=DIGinterface11.pdf
  • 4. Jarrar © 2011 4 Remember: ORM has many Applications Database XML Schema Web (x)FormsBusiness Rules Ontology Originally Warehouse Later Requirements Engineering Record my recipes !
  • 5. Jarrar © 2011 5 An Information System Conceptual Schema Data Logical Schema DBMS Queryprocessor Apps Information System  Why do we need conceptual schemes? for designing Information systems at the conceptual level.  Each Information System is made for one organization.
  • 6. Jarrar © 2011 6 Conceptual Schema Data DBMS Logical Schema Queryprocessor Apps IS1 Conceptual Schema Data DBMS Logical Schema Queryprocessor Apps ISn New needs: Open data exchange, inter-organizational transactions, global queries… Agreed data schemes (XML, RDF) Ontologies/ Semantics (OWL) (Web) Information Systems
  • 7. Jarrar © 2011 7 Semantic Mediator (Web) Information Systems Bookstore Ontology
  • 8. Jarrar © 2011 8 Semantic Mediator (Web) Information Systems …. <owl:Class rdf:ID="Product" /> <owl:Class rdf:ID="Book"> <rdfs:subClassOf rdf:resource="#Product" /> </owl:Class> <owl:Class rdf:ID="Price" /> <owl:Class rdf:ID="Value" /> <owl:Class rdf:ID="Currency" /> <owl:Class rdf:ID="Title" /> <owl:Class rdf:ID="ISBN" /> <owl:Class rdf:ID="Author" /> <owl:ObjectProperty rdf:ID="Valuated-By"> <rdfs:domain rdf:resource="#Product" /> <rdfs:range rdf:resource="#Price" /> </owl:ObjectProperty> <owl:DataProperty rdf:ID=" Amounted-To .Value"> <rdfs:domain rdf:resource="#Price" /> <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/> </owl:ObjectProperty> <owl:DataProperty rdf:ID="Measured-In.Currency"> <rdfs:domain rdf:resource="#Price" /> <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/> … Bookstore Ontology Written in OWL
  • 9. Jarrar © 2011 9 OWL  The Web Ontology Language (W3C Standard)  Based on Description logic …. <owl:Class rdf:ID="Product" /> <owl:Class rdf:ID="Book"> <rdfs:subClassOf rdf:resource="#Product" /> </owl:Class> <owl:Class rdf:ID="Price" /> <owl:Class rdf:ID="Value" /> <owl:Class rdf:ID="Currency" /> <owl:Class rdf:ID="Title" /> <owl:Class rdf:ID="ISBN" /> <owl:Class rdf:ID="Author" /> <owl:ObjectProperty rdf:ID="Valuated-By"> <rdfs:domain rdf:resource="#Product" /> <rdfs:range rdf:resource="#Price" /> </owl:ObjectProperty> <owl:DataProperty rdf:ID=" Amounted-To .Value"> <rdfs:domain rdf:resource="#Price" /> <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/> </owl:ObjectProperty> …  Can we use ORM to Model OWL ontologies?
  • 10. Jarrar © 2011 10 First Order Logic (FOL) • FOL allows us to represent knowledge precisely (Syntax and Semantics). • However, representation alone is not enough. x PhDStudent(x)  Student (x) x Employee(x)  Person (x) x Student(x)  Person (x) x PhDStudent(x)  Employee (x) Person StudentEmployee PhD Student • We also need to process this knowledge and make use of it, i.e. Logical inference = (Reasoning).
  • 11. Jarrar © 2011 11 x PhDStudent(x)  Student (x) x Employee(x)  Person (x) x Student(x)  Person (x) x PhDStudent(x)  Employee (x) Person StudentEmployee PhD Student x PhDStudent(x)  Person (x) How to process the above axioms to know that an axiom can be derived from (=implied by) another axiom. First Order Logic (FOL) Reasoning:
  • 12. Jarrar © 2011 12 Person StudentEmployee PhD Student Find contradictions (satisfiability) x Student(x)  Employee (x) =  …etc. x PhDStudent(x)  Student (x) x Employee(x)  Person (x) x Student(x)  Person (x) x PhDStudent(x)  Employee (x) First Order Logic (FOL) Reasoning: How to process the above axioms to know that an axiom can be derived from (=implied by) another axiom.
  • 13. Jarrar © 2011 13 First Order Logic (FOL) Reasoning on FOL is far too complex (i.e. not decidable)  Here comes description logics.
  • 14. Jarrar © 2011 14 Introduction to Description Logics
  • 15. Jarrar © 2011 15 Description Logics • Description logics are a family of logics concerned with knowledge representation. • A description logic is a decidable fragment of first-order logic, associated with a set of automatic reasoning procedures. • The basic constructs for a description logic are the notion of a concept and the notion of a relationship. • Complex concept and relationship expressions can be constructed from atomic concepts and relationships with suitable constructs between them. • Example: Mother ⊑ Female ⊓ HasChild HumanMother ⊑ Female ⊓ HasChild.Person
  • 16. Jarrar © 2011 16 Description Logics Most known description logics are : A more practical and expressive description logic. C, D  A | ⊤ | ⊥|¬A | C ⊓ D | R.C | R.⊤ AL Very expressive description logic, Capable of representing most database constructs.DLRidf Very popular description logic. The logic underlying OWL. SROIQ The simplest and less expressive description logic. C, D  A | C ⊓ D | R.C | R FL¯
  • 17. Jarrar © 2011 17 Description logic AL • Example constructs:
  • 18. Jarrar © 2011 18 More AL Family Members • Disjunction (U) • Full existential quantification () • Number restrictions (N) • Full negation (C) • Example:
  • 19. Jarrar © 2011 19 DL as fragments of Predicate Logic
  • 20. Jarrar © 2011 20 DL Knowledge Base • DL Knowledge Base (KB) normally separated into 2 parts: – TBox is a set of axioms describing structure of domain (i.e., a conceptual schema), e.g.: • HappyFather  Man ⊓ hasChild.Female ⊓ … • Elephant ⊑ Animal ⊓ Large ⊓ Grey • transitive(ancestor) – ABox is a set of axioms describing a concrete situation (data), e.g.: • John:HappyFather • <John,Mary>:hasChild
  • 21. Jarrar © 2011 21 Terminologies or TBoxes
  • 22. Jarrar © 2011 22 Inference Services
  • 23. Jarrar © 2011 23 Inference services based on Satisfiability
  • 24. Jarrar © 2011 24 Inference service: concept subsumption Is a Mother always a Woman? Yes, Mother Subsumes Woman Description logic reasoners offer the computation of a Subsumption (taxonomy) of all named concepts
  • 25. Jarrar © 2011 25 • They offer reasoning services for multiple TBoxes and ABoxes. • They run as background reasoning engines. • They understand DIG, which is a simple protocol (based on HTTP) along with an XML Schema. Description Logic Reasoners <impliesc> <catom name=“Student"/> <catom name=“Person"/> </impliesc> Student ⊑ Person• Example: • For example:
  • 26. Jarrar © 2011 26 The SHOIN Description Logic • The logic underpinning OWL, the standard (W3C recommendation) Ontology Web Language. • A compromise between expressive power and computational complexity. • Does not support: n-ary relations, identification, functional dependencies.
  • 27. Jarrar © 2011 27 Mapping ORM to SHOIN
  • 28. Jarrar © 2011 28 …. <owl:Class rdf:ID="Product" /> <owl:Class rdf:ID="Book"> <rdfs:subClassOf rdf:resource="#Product" /> </owl:Class> <owl:Class rdf:ID="Price" /> <owl:Class rdf:ID="Value" /> <owl:Class rdf:ID="Currency" /> <owl:Class rdf:ID="Title" /> <owl:Class rdf:ID="ISBN" /> <owl:Class rdf:ID="Author" /> <owl:ObjectProperty rdf:ID="Valuated-By"> <rdfs:domain rdf:resource="#Product" /> <rdfs:range rdf:resource="#Price" /> </owl:ObjectProperty> <owl:DataProperty rdf:ID=" Amounted-To .Value"> <rdfs:domain rdf:resource="#Price" /> <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/> </owl:ObjectProperty> <owl:DataProperty rdf:ID="Measured-In.Currency"> <rdfs:domain rdf:resource="#Price" /> <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/> … (Web) Information Systems Semantic Mediator Bookstore Ontology
  • 29. Jarrar © 2011 29 Mapping ORM to Description Logic Why do we need this mapping for? • Use ORM as a graphical notation for Ontology/description logic languages. (The DL benefit from ORM) • Reasoning on ORM schemes automatically. (The ORM benefit from DL)
  • 30. Jarrar © 2011 30 Examples of reasoning services: - Satisfiability SAT(C,T ) iff there is a model I of T with CI   To know whether a concept can be populated or not (e.g. because of some axioms contradicting each other) - Subsumption SUBS(C, D,T ) iff CI ⊆ DI for all model I of T To know whether a concept is subsuming another concept (e.g. to find unwanted or missing subsumptions) - Redundancies EQUIV(C, D,T ) iff CI = DI for all model I of T To know whether two concepts are equal (e.g. to find out redundancies) Reasoning Services
  • 31. Jarrar © 2011 31 Reasoning on ORM Schemes  Schema satisfiability: A schema is satisfiable if and only if there is at least one concept in the schema that can be populated.  Concept satisfiability: A schema is satisfiable if and only if all concepts in the schema can be populated.  Role satisfiability: A schema is satisfiable if and only if all roles in the schema can be populated.  Concept satisfiability implies schema satiability.  Role satisfiability implies concept satiability.  Weak satisfiability  Strong satisfiability Person Course Teaches Studies {Math1, Prog1} 3-5
  • 32. Jarrar © 2011 32 Mapping ORM to DLR and SHOIN n-ary relations: -- No Support -- SHOIN
  • 33. Jarrar © 2011 33 Mapping ORM to DLR and SHOIN Binary relations: SHOIN
  • 34. Jarrar © 2011 34 Mapping ORM to DLR and SHOIN Unary roles: SHOIN
  • 35. Jarrar © 2011 35 Mapping ORM to DLR and SHOIN Role Mandatory: SHOIN
  • 36. Jarrar © 2011 36 Mapping ORM to DLR and SHOIN Disjunctive Mandatory: SHOIN
  • 37. Jarrar © 2011 37 Mapping ORM to DLR and SHOIN Role Uniqueness: SHOIN
  • 38. Jarrar © 2011 38 Mapping ORM to DLR and SHOIN Predicate Mandatory: -- No Support -- SHOIN
  • 39. Jarrar © 2011 39 Mapping ORM to DLR and SHOIN External Mandatory: -- No Support -- SHOIN
  • 40. Jarrar © 2011 40 Mapping ORM to DLR and SHOIN Role Frequency: SHOIN
  • 41. Jarrar © 2011 41 Mapping ORM to DLR and SHOIN Multiple-Role Frequency: -- No Support -- SHOIN
  • 42. Jarrar © 2011 42 Mapping ORM to DLR and SHOIN Subtypes: SHOIN
  • 43. Jarrar © 2011 43 Mapping ORM to DLR and SHOIN Total Subtypes: SHOIN
  • 44. Jarrar © 2011 44 Mapping ORM to DLR and SHOIN Exclusive Subtypes: SHOIN
  • 45. Jarrar © 2011 45 Mapping ORM to DLR and SHOIN Value Constraint: STRING: Number: SHOIN SHOIN
  • 46. Jarrar © 2011 46 Mapping ORM to DLR and SHOIN Role Subset Constraint: SHOIN
  • 47. Jarrar © 2011 47 Mapping ORM to DLR and SHOIN Predicate Subset Constraint: SHOIN
  • 48. Jarrar © 2011 48 Mapping ORM to DLR and SHOIN Role-sequence Subset Constraint: -- No Support -- SHOIN
  • 49. Jarrar © 2011 49 Mapping ORM to DLR and SHOIN Role Equality Constraint: SHOIN
  • 50. Jarrar © 2011 50 Mapping ORM to DLR and SHOIN Predicate Equality Constraint: SHOIN
  • 51. Jarrar © 2011 51 Mapping ORM to DLR and SHOIN Role-sequence Equality Constraint: -- No Support -- SHOIN
  • 52. Jarrar © 2011 52 Mapping ORM to DLR and SHOIN Role exclusion Constraint: SHOIN
  • 53. Jarrar © 2011 53 Mapping ORM to DLR and SHOIN Predicate Exclusion Constraint: SHOIN
  • 54. Jarrar © 2011 54 Mapping ORM to DLR and SHOIN Role- sequence Exclusion Constraint: -- No Support -- SHOIN
  • 55. Jarrar © 2011 55 Mapping ORM to DLR and SHOIN Objectification: SHOIN -- No Support --
  • 56. Jarrar © 2011 56 DogmaModeler  DogmaModeler is an ontology engineering tool  It uses ORM as a graphical notation  It uses Racer as a background reasoning engine Other functionalities of DogmaModeler:  Verbalization of ORM into 11 human languages.  Modularization of auto composition of ORM schemes  ….
  • 57. Jarrar © 2011 57 Home Work • Map your ORM model (project 3) into description logic. • Reason about your ORM model using Racer. • MS Word file containing: 1. You ORM model 2. Map ORM into DL 3. Map ORM into DIG and load it to Racer 4. Screen shorts of Racer results, that (a)your model is satisfiable, (b) your model is unsatisfiable (make something wrong) The next Lecture assumes that you know XML, if not please read about it.
  • 58. Jarrar © 2011 58 Conclusions and Discussion
  • 59. Jarrar © 2011 59 n-ary Relations Binary Relations Predicate Uniqueness Role Equality Predicate Equality Seq-Role Equality Irreflexive Role MandatorySybtype NUMBER Value Symmetric Unary Relations Disjunctive Mandatory Exclusive STRING Value Asymmetric Role Frequency Multi Role Frequency Total Objectification Anti Symmetric Role Uniqueness Role subset Predicate Subset Seq-Role Subset Intransitive External Uniqueness Role Exclusion Predicate Exclusion Seq-Role Exclusion Acyclic ORM Constructs and constraints MappedtoDLRMappedtoSHONOWLCannotmap
  • 60. Jarrar © 2011 60 Predicate Uniqueness Seq-Role Equality Seq-Role Subset Seq-Role Exclusion Acyclic Multi Role Frequency n-ary Relations Objectification External Uniqueness Binary Relations Role Equality Predicate Equality Irreflexive Role Mandatory NUMBER Value Symmetric Unary Relations Disjunctive Mandatory Exclusive STRING Value Asymmetric Total Anti Symmetric Role Uniqueness Role subset Predicate Subset Intransitive Role Exclusion Predicate Exclusion Role Frequency Sybtype Lesson 1: what is mapped to what
  • 61. Jarrar © 2011 61 Predicate Uniqueness Seq-Role Equality Seq-Role Subset Seq-Role Exclusion Acyclic Multi Role Frequency n-ary Relations Objectification External Uniqueness Binary Relations Role Equality Predicate Equality Irreflexive Role Mandatory NUMBER Value Symmetric Unary Relations Disjunctive Mandatory Exclusive STRING Value Asymmetric Total Anti Symmetric Role Uniqueness Role subset Predicate Subset Intransitive Role Exclusion Predicate Exclusion Role Frequency Sybtype Lesson 2: Decidable fragments Decidable
  • 62. Jarrar © 2011 62 Description Logic Reasoners a short tutorial on DIG
  • 63. Jarrar © 2011 63 • They offer reasoning services for multiple TBoxes and ABoxes. • They run as background reasoning engines. • They understand DIG, which is a simple protocol (based on HTTP) along with an XML Schema. Description Logic Reasoners <impliesc> <catom name="Student"/> <catom name="Person"/> </impliesc> Student ⊑ Person• Example: • For example:
  • 64. Jarrar © 2011 64 DIG Interface (http://dig.sourceforge.net/ ) S. Bechhofer: The DIG Description Logic Interface: DIG/1.1 http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.104.3837&rep=rep1&type=pdf
  • 65. Jarrar © 2011 65 DIG Interface (http://dig.sourceforge.net/ ) S. Bechhofer: The DIG Description Logic Interface: DIG/1.1 http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.104.3837&rep=rep1&type=pdf
  • 66. Jarrar © 2011 66 DIG Protocol • DIG is only an XML schema for a description logic along with ask/tell functionality • You write a new Knowledge base (using the DIG XML syntax), and send it to Racer using the TELL functionality. • You can then write you Query/Question (using the DIG, XML syntax), and send it to Racer using the ASK functionality. • You may communicate with the Racer through HTTP or SOAP.
  • 67. Jarrar © 2011 67 Create e a new Knowledge Base <?xml version="1.0" encoding="UTF-8"?> <newKB xmlns="http://dl.kr.org/dig/2003/02/lang" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://dl.kr.org/dig/2003/02/lang http://dl-web.man.ac.uk/dig/2003/02/dig.xsd"/> <?xml version="1.0" encoding="UTF-8"?> <response xmlns="http://dl.kr.org/dig/2003/02/lang" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://dl.kr.org/dig/2003/02/lang http://dl-web.man.ac.uk/dig/2003/02/dig.xsd"> <kb uri="urn:uuid:abcdefgh-1234-1234-12345689ab"/> The Response Message The newKB Message This URI should then be used during TELL and ASK requests made against the knowledge base
  • 68. Jarrar © 2011 68 Tell Syntax <?xml version="1.0" encoding="ISO-8859-1"?> <tells xmlns="http://dl.kr.org/dig/2003/02/lang" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://dl.kr.org/dig/2003/02/lang http://dl-web.man.ac.uk/dig/2003/02/dig.xsd" uri="urn:uuid:abcdefgh-1234-1234-12345689ab"> <defconcept name="driver"/> <equalc> <catom name="driver"/> <and> <catom name="person"/> <some> <ratom name="drives"/> <catom name="vehicle"/> </some> </and> </equalc> <defconcept name="person"/> <defconcept name="vehicle"/> <defrole name="drives"/> </tells> A TELL request must contain in its body a tells element, which itself consists of a number of tell statements. Example: Driver ⊑ Person ⊓ Drives.Vehicle
  • 69. Jarrar © 2011 69 Tell Syntax Tell Language Primitive Concept Introduction <defconcept name="CN"/> <defrole name="CN"/> <deffeature name="CN"/> <defattribute name="CN"/> <defindividual name="CN"/> Concept Axioms <impliesc>C1 C2</impliesc> <equalc>C1 C2</equalc> <disjoint>C1... Cn</disjoint> Role Axioms <impliesr>R1 R2</impliesc> <equalr>R1 R2</equalr> <domain>R E</domain> <range>R E</range> <rangeint>R</rangeint> <rangestring>R</rangestring> <transitive>R</transitive> <functional>R</functional> Individual Axioms <instanceof>I C</instanceof> <related>I1 R I2</related> <value>I A V</value> Concept Language Primitive Concepts <top/> <bottom/> <catom name="CN"/> Boolean Operators <and>E1... En</and> <or>E1... En</or> <not>E</not> Property Restrictions <some>R E</some> <all>R E</all> <atmost num="n">R E</atmost> <atleast num="n">R E</atleast> <iset>I1... In</iset> Concrete Domain Expressions <defined>A</defined> <stringmin val="s">A</stringmin> <stringmax val="s">A</stringmax> <stringequals val="s">A</stringequals> <stringrange min="s" max="t">A</stringrange> <intmin val="i">A</intmin> <intmax val="i">A</intmax> <intequals val="i">A</intequals> <intrange min="i" max="j">A</intrange> Role Expressions <ratom name="CN"/> <feature name="CN"/> <inverse>R</inverse> <attribute name="CN"/> <chain>F1... FN A</chain> Individuals <individual name="CN"/>
  • 70. Jarrar © 2011 70 Ask Syntax • An ASK request must contain in its body an asks element. • Multiple queries in one request is possible. <?xml version="1.0"?> <asks xmlns="http://dl.kr.org/dig/2003/02/lang"> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://dl.kr.org/dig/2003/02/lang" http://dl-web.man.ac.uk/dig/2003/02/dig.xsd" uri="urn:uuid:abcdefgh-1234-1234-12345689ab"> <satisfiable id="q1"> <catom name="Vehicle"/> </satisfiable> <descendants id="q2"> <and> <catom name="person"/> <some> <ratom name="drives"/> <catom name="vehicle"/> </some> </and> </descendants> <types id="q3"> <individual name="JohnSmith"></individual> </types> </asks> KB |= Vehicle asks about satisfiability of the Vehicle concept asks for all those concepts subsumed by the description given, i.e. all the drivers a |  |= Peron(a) ⊓Drives.Vehicle asks for the known types of the given individual C |  |= C(JohnSmith)
  • 71. Jarrar © 2011 71 Ask Syntax Ask Language Primitive Concept Retrieval <allConceptNames/> <allRoleNames/> <allIndividuals/> Satisfiability <satisfiable>C</satisfiable> <subsumes>C1 C2</subsumes> <disjoint>C1 C2</disjoint> Concept Hierarchy <parents>C</parents> <children>C</children> <ancestors>C</ancestors> <descendants>C<descendants/> <equivalents>C</equivalents> Role Hierarchy <rparents>R</rparents> <rchildren>R</rchildren> <rancestors>R</rancestors> <rdescendants>R<rdescendants/> Individual Queries <instances>C</instances> <types>I</types> <instance>I C</instance> <roleFillers>I R</roleFillers> <relatedIndividuals>R</relatedIndividuals>