INF3580/4580 Semantic Technologies Spring 2017

Similar documents
INF3580 Semantic Technologies Spring 2012

Semantic Web Technologies: Web Ontology Language

INF3580/4580 Semantic Technologies Spring 2017

Description Logic. Eva Mráková,

OWL a glimpse. OWL a glimpse (2) requirements for ontology languages. requirements for ontology languages

Semantic Web Ontologies

Today: RDF syntax. + conjunctive queries for OWL. KR4SW Winter 2010 Pascal Hitzler 3

INF3580 Semantic Technologies Spring 2012

Main topics: Presenter: Introduction to OWL Protégé, an ontology editor OWL 2 Semantic reasoner Summary TDT OWL

Querying Data through Ontologies

Mandatory exercises. INF3580/4580 Semantic Technologies Spring 2017 Lecture 12: OWL: Loose Ends. Outline. Make it simple!

Deep integration of Python with Semantic Web technologies

Today s Plan. INF3580 Semantic Technologies Spring Model-theoretic semantics, a quick recap. Outline

Reasoning with the Web Ontology Language (OWL)

LECTURE 09 RDF: SCHEMA - AN INTRODUCTION

l A family of logic based KR formalisms l Distinguished by: l Decidable fragments of FOL l Closely related to Propositional Modal & Dynamic Logics

Knowledge Representation for the Semantic Web

Semantic Web Test

Table of Contents. iii

Semantic Technologies

Short notes about OWL 1

Contents. G52IWS: The Semantic Web. The Semantic Web. Semantic web elements. Semantic Web technologies. Semantic Web Services

Presented By Aditya R Joshi Neha Purohit

Ontological Modeling: Part 7

Logic and Reasoning in the Semantic Web (part I RDF/RDFS)

An Introduction to the Semantic Web. Jeff Heflin Lehigh University

OWL Tutorial. LD4P RareMat / ARTFrame Meeting Columbia University January 11-12, 2018

KDI OWL. Fausto Giunchiglia and Mattia Fumagallli. University of Trento

Semantic Web. Ontology and OWL. Morteza Amini. Sharif University of Technology Fall 95-96

OWL DL / Full Compatability

TMCL and OWL. Lars Marius Garshol. Bouvet, Oslo, Norway

OWL 2 The Next Generation. Ian Horrocks Information Systems Group Oxford University Computing Laboratory

OWL 2 Syntax and Semantics Sebastian Rudolph

FOUNDATIONS OF SEMANTIC WEB TECHNOLOGIES

Making BioPAX SPARQL

Semantic Web. MPRI : Web Data Management. Antoine Amarilli Friday, January 11th 1/29

OWL and tractability. Based on slides from Ian Horrocks and Franz Baader. Combining the strengths of UMIST and The Victoria University of Manchester

Simplified Approach for Representing Part-Whole Relations in OWL-DL Ontologies

12th ICCRTS. On the Automated Generation of an OWL Ontology based on the Joint C3 Information Exchange Data Model (JC3IEDM)

The OWL API: An Introduction

ARISTOTLE UNIVERSITY OF THESSALONIKI. Department of Computer Science. Technical Report

Adding formal semantics to the Web

Building Blocks of Linked Data

CC LA WEB DE DATOS PRIMAVERA Lecture 4: Web Ontology Language (I) Aidan Hogan

Bryan Smith May 2010

FOUNDATIONS OF SEMANTIC WEB TECHNOLOGIES

FOUNDATIONS OF SEMANTIC WEB TECHNOLOGIES

Extracting Ontologies from Standards: Experiences and Issues

Formalising the Semantic Web. (These slides have been written by Axel Polleres, WU Vienna)

Week 4. COMP62342 Sean Bechhofer, Uli Sattler

Web Ontology Language: OWL

OWL 2 Profiles. An Introduction to Lightweight Ontology Languages. Markus Krötzsch University of Oxford. Reasoning Web 2012

Knowledge Representation. Apache Jena Part II. Jan Pettersen Nytun, UiA

OWL 2 Web Ontology Language Primer W3C Recommendation 27 October 2009

RDF AND SPARQL. Part III: Semantics of RDF(S) Dresden, August Sebastian Rudolph ICCL Summer School

Ontologies and OWL. Riccardo Rosati. Knowledge Representation and Semantic Technologies

H1 Spring B. Programmers need to learn the SOAP schema so as to offer and use Web services.

Description Logics and OWL

Unit 2 RDF Formal Semantics in Detail

RDF Schema. Philippe Genoud, UFR IM2AG, UGA Manuel Atencia Arcas, UFR SHS, UGA

Outline RDF. RDF Schema (RDFS) RDF Storing. Semantic Web and Metadata What is RDF and what is not? Why use RDF? RDF Elements

The ISO D approach

TopBraid Composer. Getting Started Guide. Version 5.2. September 21, TopBraid Composer, Copyright TopQuadrant, Inc.

Semantic Web In Depth: Resource Description Framework. Dr Nicholas Gibbins 32/4037

Languages and tools for building and using ontologies. Simon Jupp, James Malone

Genea: Schema-Aware Mapping of Ontologies into Relational Databases

FOUNDATIONS OF SEMANTIC WEB TECHNOLOGIES

Chapter 2 AN INTRODUCTION TO THE OWL WEB ONTOLOGY LANGUAGE 1. INTRODUCTION. Jeff Heflin Lehigh University

Web Ontology Language (OWL)

OWL 2 Web Ontology Language Primer

RDF Schema. Mario Arrigoni Neri

Web Ontology Language: OWL

Lecture 8 OWL: Web Ontology Language

Intelligent Agents. Pınar Yolum Utrecht University. Spring 2018 Pınar Yolum

Knowledge Representation for the Semantic Web

Linked data basic notions!

Efficient Querying of Web Services Using Ontologies

Knowledge Engineering with Semantic Web Technologies

Ontological Modeling: Part 14

RDF /RDF-S Providing Framework Support to OWL Ontologies

For return on 19 January 2018 (late submission: 2 February 2018)

LINKING BACKGROUND INFORMATION

Semantic reasoning for dynamic knowledge bases. Lionel Médini M2IA Knowledge Dynamics 2018

Logik für Informatiker Logic for computer scientists. Ontologies: Description Logics

! Assessed assignment 1 Due 17 Feb. 3 questions Level 10 students answer Q1 and one other

Ontology mutation testing

2 nd International Semantic Web Conference (ISWC2003)

Extracting knowledge from Ontology using Jena for Semantic Web

Mustafa Jarrar: Lecture Notes on RDF Schema Birzeit University, Version 3. RDFS RDF Schema. Mustafa Jarrar. Birzeit University

Racer - An Inference Engine for the Semantic Web

SEMANTIC WEB 05 RDF SCHEMA MODELLING SEMANTICS IMRAN IHSAN ASSISTANT PROFESSOR, AIR UNIVERSITY, ISLAMABAD

Semantic Web Services and OOP toward Unified Services

Ontological Modeling: Part 8

Ontological Modeling: Part 11

Semantic Web. RDF and RDF Schema. Morteza Amini. Sharif University of Technology Spring 90-91

The Semantic Web RDF, RDF Schema, and OWL (Part 2)

Today s Plan. 1 Repetition: RDF. 2 Jena: Basic Datastructures. 3 Jena: Inspecting Models. 4 Jena: I/O. 5 Example. 6 Jena: ModelFactory and ModelMaker

Linked data and its role in the semantic web. Dave Reynolds, Epimorphics

1. Introduction to SWRL

Lessons Learned from a Greenhorn Ontologist

Transcription:

INF3580/4580 Semantic Technologies Spring 2017 Lecture 10: OWL, the Web Ontology Language Leif Harald Karlsen 20th March 2017 Department of Informatics University of Oslo

Reminders Oblig. 5: First deadline tomorrow (21.03). Oblig. 6: Will be published 03.04. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 2 / 40

Today s Plan 1 Reminder: RDFS 2 Description Logics 3 Introduction to OWL INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 3 / 40

Outline Reminder: RDFS 1 Reminder: RDFS 2 Description Logics 3 Introduction to OWL INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 4 / 40

Reminder: RDFS The RDFS vocabulary RDFS adds the concept of classes which are like types or sets of resources. A predefined vocabulary allows statements about classes. Defined resources: rdfs:resource: The class of resources, everything, rdfs:class: The class of classes, rdf:property: The class of properties (from rdf). Defined properties: rdf:type: relates resources to classes they are members of. rdfs:domain: The domain of a relation. rdfs:range: The range of a relation. rdfs:subclassof: Concept inclusion. rdfs:subpropertyof: Property inclusion. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 5 / 40

Reminder: RDFS Clear semantics RDFS has formal semantics. Entailment is a mathematically defined relationship between RDF(S) graphs. E.g., answers to SPARQL queries are well-defined, and the interpretation of blank nodes is clear. The semantics allows for rules to reason about classes and properties and membership. Using RDFS entailment rules we can infer: type propagation property inheritance, and domain and range reasoning. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 6 / 40

Reminder: RDFS Yet, it s inexpressive RDFS does not allow for complex definitions, other than multiple inheritance. We cannot express negation in RDFS. Hence, because of OWA, all RDFS graphs are satisfiable. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 7 / 40

Modelling patterns Reminder: RDFS Common modelling patterns cannot be expressed properly in RDFS: Every person has a mother. Penguins eat only fish. Horses eat only chocolate. Every nuclear family has two parents, at least two children and a dog. No smoker is a non-smoker (and vice versa). Everybody loves Mary. Adam is not Eve (and vice versa). Everything is black or white. There is no such thing as a free lunch. Brothers of fathers are uncles. My friend s friends are also my friends. If Homer is married to Marge, then Marge is married to Homer. If Homer is a parent of Bart, then Bart is a child of Homer. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 8 / 40

And it s complicated Reminder: RDFS In the standardised RDFS semantics (not our simplified version): No clear ontology/data boundary No restrictions on the use of the built-ins. Can have relations between classes and relations: :mycar rdf:type citroen:twocv. rdf:type rdfs:domain rdfs:resource. Remember: in RDF, properties are resources, so they can be subject or object of triples. Well, in RDFS, classes are resources, so they can also be subject or object of triples. The RDFS entailment rules are incomplete. Can t derive all statements that are semantically valid. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 9 / 40

Outline Description Logics 1 Reminder: RDFS 2 Description Logics 3 Introduction to OWL INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 10 / 40

Description Logics Make it simple! Keep classes, properties, individuals and relationships apart. Data level with individuals and relationships between them. Ontology level with properties and classes. Use a fixed vocabulary of built-ins for relations between classes and properties, and their members and nothing else. Interpret classes as sets of individuals, and properties as relations between individuals, i.e., sets of pairs which is what we do in our simplified semantics. A setting well-studied as Description Logics. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 11 / 40

Description Logics The ALC Description Logic Vocabulary Fix a set of atomic concepts {A 1, A 2,... }, roles {R 1, R 2,... } and individuals {a 1, a 2,... }. ALC concept descriptions C, D A i (atomic concept) (universal concept) (bottom concept) C (negation) C D (intersection) C D (union) R i.c (value restriction) R i.c (existential restriction) Axioms C D and C D for concept descriptions D and C. C(a) and R(a, b) for concept description C, atomic role R and individuals a, b. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 12 / 40

ALC Examples Description Logics TwoCV Car Any 2CV is a car. TwoCV (mycar) mycar is a 2CV. owns(martin, mycar) martin owns mycar. TwoCV driveaxle.frontaxle All drive axles of 2CVs are front axles. FrontDrivenCar Car driveaxle.frontaxle A front driven car is one where all drive axles are front axles. FrontAxle RearAxle (disjointness) Nothing is both a front axle and a rear axle. FourWheelDrive driveaxle.frontaxle driveaxle.rearaxle A 4WD has at least one front drive axle and one rear drive axle. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 13 / 40

Description Logics ALC Semantics Interpretation An interpretation I fixes a set I, the domain, A I I for each atomic concept A, R I I I for each role R, and a I I for each individual a. Interpretation of concept descriptions I = I I = ( C) I = I \ C I (C D) I = C I D I (C D) I = C I D I ( R.C) I = {a I for all b, if a, b R I then b C I } ( R.C) I = {a I there is a b where a, b R I and b C I } Interpretation of Axioms I = C D if C I D I and I = C D if C I = D I I = C(a) if a I C I and I = R(a, b) if a I, b I R I. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 14 / 40

Negation Description Logics The interpretation I satisfies the axiom C D: I C D C I = ( D) I C I = ( I \ D I ) A C is not a D. I C I D I Example: EvenNo OddNo, assuming the domain is N. An even number is not an odd number. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 15 / 40

Description Logics I C I D I Disjointness The interpretation I satisfies the axiom C D : I C D (C D) I I C I D I Nothing is both a C and a D. Equivalent to C D (and D C). Example: FrontAxle RearAxle. A FrontAxle is not a RearAxle, and vice versa. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 16 / 40

Existential restrictions Description Logics The interpretation I satisfies the axiom C R.D: I C R.D C I ( R.D) I C I {a I there is a b where a, b R I and b D I } A C is R-related to (at least) a D. I ( R.D) I C I R I D I Example: Toyota driveaxle.frontaxle. A Toyota has a front axle as drive axle. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 17 / 40

Universal restrictions Description Logics The interpretation I satisfies the axiom C R.D: I C R.D C I ( R.D) I C I {a I for all b, if a, b R I then b D I } A C has R-relationships to D s only. I ( R.D) I C I R I D I Example: Lotus driveaxle.rearaxle. A Lotus has only rear axles as drive axles. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 18 / 40

Description Logics Example interpretation Assume K is the knowledge base with the axioms: Donkey Animal Stubborn Horse Animal eats.chocolate Mule hasparent.horse hasparent.donkey hasparent.mule Horse(mary) Donkey(sven) hasparent(hannah, mary) hasparent(hannah, sven) eats(mary, carl) INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 19 / 40

Description Logics Universal Restrictions and rdfs:range If role R has the range C, then anything one can reach by R is in C, or for any a and b, if a, b R I, then b C I, or any a is in the interpretation of R.C, or the axiom R.C holds. Everything has R-relationships to C s only. Ranges can be expressed with universal restrictions. Example: a drive axle is either a front or a rear axle, so the range of driveaxle is FrontAxle RearAxle. Axiom: driveaxle.(frontaxle RearAxle). INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 20 / 40

Description Logics Existential Restrictions and rdfs:domain If role R has the domain C, then anything from which one can go by R is in C, or for any a, if there is a b with a, b R I, then a C I, or any a in the interpretation of R. is in the interpretation of C, or the axiom R. C holds. Everything which is R-related (to a thing) is a C. Domains can be expressed with existential restrictions. Example: a drive axle is something cars have, so the domain of driveaxle is Car. Axiom: driveaxle. Car. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 21 / 40

Description Logics What is the score? We still express C(a), R(x, y), C D like we did in RDFS, but now we can express complex C s and D s. A concept can be defined by use of other concepts and roles. Examples: Person hasmother. (or Person hasparent.woman) Penguin eats.fish NonSmoker Smoker (or NonSmoker Smoker ) BlackThing WhiteThing FreeLunch INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 22 / 40

Modelling patterns Description Logics So, what can we say with ALC? Every person has a mother. Penguins eat only fish. Horses eat only chocolate. Every nuclear family has two parents, at least two children and a dog. No smoker is a non-smoker (and vice versa). Everybody loves Mary. Adam is not Eve (and vice versa). Everything is black or white. There is no such thing as a free lunch. Brothers of fathers are uncles. My friend s friends are also my friends. If Homer is married to Marge, then Marge is married to Homer. If Homer is a parent of Bart, then Bart is a child of Homer. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 23 / 40

Little Boxes Description Logics Historically, description logic axioms and assertions are put in boxes. The TBox is for terminological knowledge, is independent of any actual instance data, and for ALC, it is a set of axioms and axioms. Example TBox axioms: TwoCV driveaxle.frontaxle FrontDrivenCar Car driveaxle.frontaxle. The ABox is for assertional knowledge, contains facts about concrete instances a, b, c, a set of concept membership assertions C(a), and role assertions R(b, c). Example ABox axioms: driveaxle(mycar, axle) (FrontAxle RearAxle)(axle). INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 24 / 40

Description Logics TBox Reasoning Remainder: Entailment A entails B, written A = B, if I = B for all interpretations where I = A. Many reasoning tasks use only the TBox: Concept unsatisfiability: Given C, does T = C? Concept subsumption: Given C and D, does T = C D? Concept equivalence: Given C and D, does T = C D? Concept disjointness: Given C and D, does T = C D? INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 25 / 40

Description Logics ABox Reasoning ABox consistency: Is there a model of (T, A), i.e., is there an interpretation I such that I = (T, A)? Concept membership: Given C and a, does (T, A) = C(a)? Retrieval: Given C, find all a such that (T, A) = C(a). Conjunctive Query Answering (SPARQL). INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 26 / 40

Description Logics More Expressive Description Logics There are description logics including axioms about roles, e.g., hierarchy, transitivity cardinality data types, e.g., numbers, strings individuals etc. We ll see more in later lectures. The balance of expressivity and complexity is important. Too much expressivity makes reasoning tasks first more expensive, then undecidable. Much research on how expressivity affects complexity/decidability. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 27 / 40

Outline Introduction to OWL 1 Reminder: RDFS 2 Description Logics 3 Introduction to OWL INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 28 / 40

Introduction to OWL Quick facts OWL: Acronym for The Web Ontology Language. Became a W3C recommendation in 2004. The undisputed standard ontology language. Superseded by OWL 2; a backwards compatible extension that adds new capabilities. Built on Description Logics. Combines DL expressiveness with RDF technology (e.g., URIs, namespaces). Extends RDFS with boolean operations, universal/existential restrictions and more. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 29 / 40

Introduction to OWL OWL Syntaxes Reminder: RDF is an abstract construction, several concrete syntaxes: RDF/XML, Turtle,... Same for OWL: Defined as set of things that can be said about classes, properties, instances. DL symbols (,,, ) hard to find on keyboard. OWL/RDF: Uses RDF to express OWL ontologies. Then use any of the RDF serializations. OWL/XML: a non-rdf XML format. Functional OWL syntax: simple, used in definition. Manchester OWL syntax: close to DL, but text, used in some tools. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 30 / 40

Introduction to OWL OWL vocabulary in OWL/RDF New: owl:ontology, owl:class, owl:thing, properties (next slide), restrictions (owl:allvaluesfrom, owl:unionof,...), annotations (owl:versioninfo,...). From RDF: rdf:type, rdf:property From RDFS: rdfs:class, rdfs:subclassof, rdfs:subpropertyof, rdfs:domain, rdfs:range, rdfs:label, rdfs:comment,... (XSD datatypes: xsd:string,...) INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 31 / 40

Properties in OWL Introduction to OWL Three kinds of mutually disjoint properties in OWL: 1 owl:datatypeproperty link individuals to data values, e.g., xsd:string. Examples: :hasage, :hassurname. 2 owl:objectproperty link individuals to individuals. Example: :hasfather, :driveaxle. 3 owl:annotationproperty has no logical implication, ignored by reasoners. anything can be annotated. Examples: rdfs:label, dc:creator. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 32 / 40

Introduction to OWL Example: Universal Restrictions in OWL/RDF TwoCV driveaxle.frontaxle :TwoCV rdfs:subclassof owl:allvaluesfrom rdf:type owl:onproperty :FrontAxle owl:restriction :driveaxle In Turtle syntax: :TwoCV rdfs:subclassof [ rdf:type owl:restriction ; owl:onproperty :driveaxle ; owl:allvaluesfrom :FrontAxle ]. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 33 / 40

Introduction to OWL Example: Universal Restrictions in Other Formats TwoCV driveaxle.frontaxle In OWL/XML syntax: <SubClassOf> <Class URI=":TwoCV"/> <ObjectAllValuesFrom> <ObjectProperty URI=":driveAxle"/> <Class URI=":FrontAxle"/> </ObjectAllValuesFrom> </SubClassOf> In OWL Functional syntax: SubClassOf(TwoCV ObjectAllValuesFrom(driveAxle FrontAxle)) INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 34 / 40

Manchester OWL Syntax Introduction to OWL Used in Protégé for concept descriptions. Also has a syntax for axioms, less used. Correspondence to DL constructs: DL Manchester C D C and D C D C or D C not C R.C R only C R.C R some C Examples: DL Manchester FrontAxle RearAxle FrontAxle or RearAxle driveaxle.frontaxle driveaxle only FrontAxle driveaxle.rearaxle driveaxle some RearAxle INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 35 / 40

Demo: Using Protégé Introduction to OWL - Create a Car class. - Create an Axle class. - Create FrontAxle and RearAxle as subclasses. - Make the axle classes disjoint. - Add a driveaxle object property. - Add domain Car and range Axle. - Add 2CV, subclass of Car. - Add superclass driveaxle only FrontAxle. - Add Lotus, subclass of Car. - Add superclass driveaxle only RearAxle. - Add LandRover, subclass of Car. - Add superclass driveaxle some FrontAxle. - Add superclass driveaxle some RearAxle. - Add 4WD as subclass of Thing. - Make equivalent to driveaxle some RearAxle and driveaxle some FrontAxle. - Classify. - Show inferred class hierarchy: Car 4WD LandRover. - Tell story of 2CV Sahara, which is a 2CV with two motors, one front, one back. - Add Sahara as subclass of 2CV. - Add 4WD as superclass of Sahara. - Classify. - Show that Sahara is equivalent to bottom. - Explain why. In particular, disjointness of front and rear axles. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 36 / 40

Introduction to OWL The Relationship to Description Logics Protégé presents ontologies almost like an OO modelling tool. Everything can be mapped to DL axioms! We have seen how domain and range become ex./univ. restrictions. C and D disjoint: C D. Many ways of saying the same thing in OWL, more in Protégé. Reasoning (e.g., Classification) maps everything to DL first. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 37 / 40

Introduction to OWL OWL in Jena Can use usual Jena API to build OWL/RDF ontologies. Cumbersome and error prone! Jena class OntModel provides convenience methods to create OWL/RDF ontologies, e.g., OntModel model = ModelFactory.createOntologyModel(); Property driveaxle = model.createproperty(cars+"driveaxle"); OntClass car = model.createclass(cars+"car"); OntClass frontaxle = model.createclass(cars+"frontaxle"); Resource r = model.createallvaluesfromrestriction( null, driveaxle, frontaxle); car.addsuperclass(r); Can be combined with inferencing mechanisms from lecture 7. See class OntModelSpec. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 38 / 40

Introduction to OWL The OWL API OWL in Jena means OWL expressed as RDF. Still somewhat cumbersome, tied to OWL/RDF peculiarities. For pure ontology programming, consider OWL API: http://owlapi.sourceforge.net/ Works on the level of concept descriptions and axioms. Can parse and write all mentioned OWL formats, and then some. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 39 / 40

Introduction to OWL Next lecture More about OWL and OWL 2: Individuals: = and, and for class and property definition. Properties: cardinality, transitive, inverse, symmetric, functional properties, and property chains. Datatypes. Work through some modelling problems. INF3580/4580 :: Spring 2017 Lecture 10 :: 20th March 40 / 40