Internet Semantyczny. Wstęp do OWL 2

Podobne dokumenty
Internet Semantyczny. Schematy RDF i wnioskowanie

RDF Schema (schematy RDF)

Reprezentacja wiedzy ontologie, logiki deskrypcyjne

Internet Semantyczny i Logika II

Internet Semantyczny. Logika opisowa

Internet Semantyczny. Podstawy SPARQL

SYSTEM DO GENEROWANIA ONTOLOGII NA PODSTAWIE DIAGRAMÓW UML SYSTEM TO ONTOLOGY GENERATION FROM UML DIAGRAMS

RACHUNEK ZBIORÓW 5 RELACJE

Semantic Web. dr inż. Aleksander Smywiński-Pohl. Elektroniczne Przetwarzanie Informacji Konsultacje: czw , pokój 3.211

Relacje. Zdania opisujące stosunki dwuczłonowe mają ogólny wzór budowy: xry, co czytamy: x pozostaje w relacji R do y.

Semantic Web. Grzegorz Olędzki. prezentacja w ramach seminarium Protokoły komunikacyjne. luty 2005

Języki modelowania ontologii: RDFs, OWL

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

Marcin Skulimowski - RDF

3 grudnia Sieć Semantyczna

Logika. Zadanie 4. Sprawdź, czy poniższe funkcje zdaniowe są tautologiami: i) (p q) = ( p q), ii) (p = q) ( p q). Rozwiązanie.

Języki modelowania ontologii: RDFs, OWL

Matematyka dyskretna. Andrzej Łachwa, UJ, B/14

Matematyka dyskretna. Andrzej Łachwa, UJ, 2017 Zadania 1

Przetwarzanie języka naturalnego (NLP)

Rysunek 1: Przykłady graficznej prezentacji klas.

Internet Semantyczny. Idea

Ontologia, wypożyczalnia wideo stworzona na podstawie relacyjnej bazy danych

Wstęp do Matematyki (2)

PODSTAWOWE POJĘCIA DOTYCZĄCE RELACJI

Systemy ekspertowe. System ekspertowy wspomagający wybór zestawu komputerowego w oparciu o ontologie i system wnioskujący RacerPro

Technologie semantyczne i sieci społecznościowe laboratorium

Praktyczny przewodnik tworzenia ontologii w języku OWL za pomocą Protege 4.2

Rozszerzenie funkcjonalności systemów wiki w oparciu o wtyczki i Prolog

Zbiory, relacje i funkcje

Paweł Kurzawa, Delfina Kongo

Standardy semantyczne

Ontologie, czyli o inteligentnych danych

Od metadanych do map wiedzy

IVa. Relacje - abstrakcyjne własności

Technologie Sieci Semantycznych

LOGIKA I TEORIA ZBIORÓW

Technologie zarządzania wiedzą

Rozważmy funkcję f : X Y. Dla dowolnego zbioru A X określamy. Dla dowolnego zbioru B Y określamy jego przeciwobraz:

Wykorzystanie standardów serii ISO oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

1 Projektowanie systemu informatycznego

Spis treści Informacje podstawowe Predykaty Przykłady Źródła RDF. Marek Prząda. PWSZ w Tarnowie. Tarnów, 6 lutego 2009

Matematyka dyskretna. 1. Relacje

Modelowanie konceptualne model EER

Bazy wiedzy Krzysztof Goczyła

Relacje. Relacje / strona 1 z 18

rdf:type ex:homepage ex:createdwith /amaya rdf:type ex:htmleditor

1 Działania na zbiorach

Świat rzeczywisty i jego model

Zbiory. Specjalnym zbiorem jest zbiór pusty nie zawierajacy żadnych elementów. Oznaczamy go symbolem.

Dodatkowe możliwości RDF. Seminarium magisterskie Paweł Chrząszczewski

BAZY DANYCH model związków encji. Opracował: dr inż. Piotr Suchomski

Instytut Technik Innowacyjnych Semantyczna integracja danych - metody, technologie, przykłady, wyzwania

Zajęcia nr. 3 notatki

Relacje. opracował Maciej Grzesiak. 17 października 2011

Ontologie Wiedza semantyczna Semantic Web Inżynieria ontologii. Zarządzanie wiedzą. Wykład Sieci semantyczne. Joanna Kołodziejczyk.

Modelowanie danych, projektowanie systemu informatycznego

Do czego potrzebne są nam ontologie? Charakterystyka funkcjonalna ontologii jako narzędzi reprezentacji wiedzy.

Strukturalizacja otoczenia agentów: ontologie, CYC, sieci semantyczne

Technologie zarządzania wiedzą. Szymon Zioło.

Koncepcja wirtualnego uniwersytetu z wykorzystaniem technologii semantycznej. Ilona Pawełoszek Tomasz Turek Politechnika Częstochowska

Modelowanie klas i obiektów. Jarosław Kuchta Projektowanie Aplikacji Internetowych

APLIKACJA WSPOMAGAJĄCA PRZEPROWADZENIE POWTÓREK W PROCESIE UCZENIA SIĘ STWORZONA NA PODSTAWIE MODELU SIECI SEMANTYCZNEJ

Laboratorium przedmiotu Paradygmaty Programowania

Relacje i relacje równoważności. Materiały pomocnicze do wykładu. przedmiot: Matematyka Dyskretna 1 wykładowca: dr Magdalena Kacprzak

DEFINICJA. Definicja 1 Niech A i B będą zbiorami. Relacja R pomiędzy A i B jest podzbiorem iloczynu kartezjańskiego tych zbiorów, R A B.

KURS MATEMATYKA DYSKRETNA

Funkcje wymierne. Funkcja homograficzna. Równania i nierówności wymierne.

domykanie relacji, relacja równoważności, rozkłady zbiorów

Jest to zasadniczo powtórka ze szkoły średniej, być może z niektórymi rzeczami nowymi.

Podstawy logiki i teorii mnogości Informatyka, I rok. Semestr letni 2013/14. Tomasz Połacik

zbiorów domkniętych i tak otrzymane zbiory domknięte ustawiamy w ciąg. Oznaczamy

Reprezentacja wiedzy: Ontologie w Semantic Web

Programowanie obiektowe

Analiza matematyczna 1

Dekompozycja w systemach wyszukiwania informacji

Teoria automatów i języków formalnych. Określenie relacji

Inteligentne wnioskowanie w sieci semantycznej web 3.0

Podstawy Programowania Obiektowego

Po zakończeniu rozważań na temat World Wide Web, poznaniu zasad organizacji witryn WWW, przeczytaniu kilkudziesięciu stron i poznaniu wielu nowych

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)

UML w Visual Studio. Michał Ciećwierz

Programowanie deklaratywne

Laboratorium z przedmiotu Programowanie obiektowe - zestaw 04

Wykład 2 Składnia języka C# (cz. 1)

Teoretyczne podstawy informatyki

Logika I. Wykład 3. Relacje i funkcje

METODY MATEMATYCZNE I STATYSTYCZNE W INŻYNIERII CHEMICZNEJ

Definicja obiektowego modelu danych: struktura i zachowanie

PODZIAŁ LOGICZNY. Zbiór Z. Zbiór A. Zbiór B

Podejście obiektowe - podstawowe pojęcia

Zastosowanie ontologii do organizacji informacji pozyskiwanych z Internetu

FUNKCJE LICZBOWE. Na zbiorze X określona jest funkcja f : X Y gdy dowolnemu punktowi x X przyporządkowany jest punkt f(x) Y.

RELACJE I ODWZOROWANIA

Zależność cech (wersja 1.01)

Bazy danych TERMINOLOGIA

Przykładowy dokument XML

Pakiety i interfejsy. Tomasz Borzyszkowski

Definicja macierzy Typy i właściwości macierzy Działania na macierzach Wyznacznik macierzy Macierz odwrotna Normy macierzy RACHUNEK MACIERZOWY

Piotr Kulicki Katolicki Uniwersytet Lubelski Jana Pawła II Instytut Filozofii Teoretycznej Katedra Podstaw Informatyki

Transkrypt:

Internet Semantyczny Wstęp do OWL 2

RDFS Podstawowymi elementami które określamy w RDFS są klasy (ang. class) zasobów i właściwości (ang. property) zasobów charakterystyczne dla interesującego nas fragmentu rzeczywistości. Schematy RDF pozwalają nam określić słownictwo, które może być wykorzystane w stwierdzeniach RDF. Schematy RDF posiadają jednak pewne ograniczenia

RDFS ograniczenia

Ontology Web Language W celu bardziej precyzyjnego opisywania wybranych fragmentów rzeczywistości potrzebujemy rozszerzyć możliwości języka RDFS. Rozszerzeniem takim jest język OWL (ang. Ontology Web Language) służący do opisu ontologii. Definicja (Gruber) Ontologia to formalna specyfikacja konceptualizacji pewnego obszaru wiedzy czy opisu elementów rzeczywistości.

OWL Klasy klasy podklasy klasy równoważne klasy rozłączne Możliwości definiowania klas: suma przecięcie dopełnienie ograniczanie właściwości ograniczenia kardynalne właściwości wprost

OWL - właściwości (relacje) właściwości obiektowe właściwości danych podwłaściwości właściwości odwrotne właściwości: symetryczne asymetryczne zwrotne przeciwzwrotne przechodnie funkcjonalne odwrotnie funkcjonalne łańcuchy właściwości

Uwagi 1) Mówimy o elementach, reprezentantach, instancjach, obiektach klas. 2) 3) Fragmenty ontologii Inne fragmenty prefiksy rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns# rdfs: http://www.w3.org/2000/01/rdf-schema# owl: http://www.w3.org/2002/07/owl#

Klasy Definicja klasy: klasa rdf:type owl:class. gdzie owl:class jest klasą wszystkich klas. Klasy Publikacja, Ksiazka, PublikcjaInternet definiujemy następująco: :Publikacja rdf:type owl:class. :Ksiazka rdf:type owl:class. :PublikacjaInternet rdf:type owl:class.

Klasy Przynależność do klasy: element rdf:type klasa. Zasoby Marek i Iza należą do klasy osób (Person): :Marek rdf:type :Person. :Iza rdf:type :Person. Zasób może należeć do wielu klas jednocześnie: :Marek rdf:type :Man. :Iza rdf:type :Woman.

Hierarchie klas Klasa może być podklasą innej klasy: klasa1 rdfs:subclassof klasa2. Klasa kobiet jest podklasą klasy osób: Wnioskowanie: :Woman rdfs:subclassof :Person. A rdfs:subclassof B. r rdf:type A. r rdf:type B.

Hierarchie klas Wnioskowanie: :Mother rdfs:subclassof :Woman. :Iza rdf:type :Mother. :Iza rdf:type :Woman. :Woman rdfs:subclassof :Person. :Mother rdfs:subclassof :Woman. :Iza rdf:type :Mother. :Iza rdf:type :Woman. :Iza rdf:type :Person.

Klasy równoważne Zdarza się, że dwie klasy odnoszą się do tych samych zbiorów: klasa1 owl:equivalentclass klasa2. czyli do klasy klasa1 należą te same elementy co do klasy klasa2. Klasa osób jest równoważna klasie ludzi: :Person owl:equivalentclass :Human.

Klasy rozłączne W języku OWL możemy także wyrazić rozłączność klas: [] rdf:type owl:alldisjointclasses ; owl:members ( klasa1 klasa2 ). czyli klasa1 i klasa2 są rozłączne. Klasy kobiet i mężczyzn są rozłączne: [] rdf:type owl:alldisjointclasses ; owl:members ( :Woman :Man ).

Właściwości obiektowe Do tej pory zajmowaliśmy się klasami i zależnościami między nimi: rdfs:subclassof owl:equivalentclass owl:alldisjointclasses Zajmiemy się teraz elementami klas (zasobami) i zależnościami między nimi czyli tzw. właściwościami obiektowymi. właściwość rdf:type owl:objectproperty.

Właściwości obiektowe haswife jest tzw. właściwością obiektową określającą pewną relację między elementami klas. Ważna jest kolejność, zatem :Marek :haswife :Iza. Ale oczywiście nie możemy zapisać: Chociaż może być tak: :Iza :haswife :Marek. :Iza :iswifeof :Marek.

Właściwości obiektowe OWL pozwala zapisać, że między wybranymi elementami relacja nie zachodzi: [] rdf:type owl:negativepropertyassertion ; owl:sourceindividual element1 ; owl:assertionproperty właściwość ; owl:targetindividual element2. Iza nie jest żoną Marka: [] rdf:type owl:negativepropertyassertion ; owl:sourceindividual :Marek ; owl:assertionproperty :haswife ; owl:targetindividual :Iza.

Hierarchie właściwości Właściwość może być podwłaściwością innej właściwości: właściwość1 rdfs:subpropertyof właściwość2. Bycie matką jest podwłaściwością bycia rodzicem : Wnioskowanie: :ismotherof rdfs:subpropertyof :isparentof. P rdfs:subpropertyof R. x P y. x R y.

Hierarchie właściwości Wnioskowanie: :ismotherof rdfs:subpropertyof :isparentof. :Iza :ismothertof :Tomek; :Iza :isparentof :Tomek.

Hierarchie właściwości :hasdaughter rdfs:subpropertyof :haschild.

Dziedzina właściwości Język OWL pozwala określić dziedzinę (domain) właściwości. Definicja dziedziny: właściwość rdfs:domain klasa. Jakie jest znaczenie rdfs:domain? Wnioskowanie: P rdfs:domain R. x P y. x rdf:type R.

Dziedzina właściwości rdfs:domain - określa dziedzinę właściwości P tzn. klasę zasobów, które mogą się pojawić jako zasób z właściwością P. Jeżeli dziedzina nie jest określona może nią być dowolna klasa. Wnioskowanie: :tytul rdfs:domain :Publikacja. :x1 :tytul :x2. :x1 rdf:type :Publikacja.

Zakres właściwości Język OWL pozwala określić zakres (range) właściwości: Definicja dziedziny: właściwość rdfs:range klasa. Jakie jest znaczenie rdfs:range? Wnioskowanie: P rdfs:range R. x P y. y rdf:type R.

Zakres właściwości rdfs:range - określa zakres właściwości P tzn. klasę zasobów, które mogą się pojawić jako wartość właściwości P. Wnioskowanie: :autor rdfs:range :Osoba. :x1 :autor :x2. :x2 rdf:type :Osoba.

Dziedzina i zakres Wnioskowanie: :haswife rdfs:domain :Man ; rdfs:range :Woman. :Marek :haswife :Iza. :Marek rdf:type :Man. :Iza rdf:type :Woman.

Nic nie stoi jednak na przeszkodzie żeby elementy a1 i a3 były tym samym elementem. Chyba, że jawnie wykluczymy taką możliwość Klasy rozłączne [] rdf:type owl:alldisjointclasses ; owl:members ( :Woman :Man ). :a1 rdf:type :Man. :a2 rdf:type :Woman. Ponieważ klasy kobiet i mężczyzn są rozłączne zatem elementy a1 i a2 nie mogą być tym samym elementem. :a3 rdf:type :Man.

Elementy różne W języku OWL możemy zapisać, że dwa elementy są różne: element1 owl:differentfrom element2. czyli element1 jest różny od element2. Marek to nie Piotrek: :Marek owl:differentfrom :Piotrek.

Elementy równe W języku OWL możemy zapisać, że dwa elementy są równe (tożsame): element1 owl:sameas element2. czyli element1 jest tożsamy z element2. Tomasz to Tomek: :Tomasz owl:sameas :Tomek.

Właściwości danych Właściwości obiektowe opisują zależności (relacje) między elementami klas (zasobami). Właściwości danych opisują cechy (atrybuty) obiektów i ich wartościami mogą być różne typy danych. Iza jest żoną Marka: Definicja: właściwość rdf:type owl:datatypeproperty. :Marek :hasage 45. :hasage rdf:type owl:datatypeproperty; rdfs:domain :Person ; rdfs:range Marcin Skulimowski, xsd:nonnegativeinteger Wydział Fizyki i.

RDFS i OWL

Przecięcie klas W języku OWL możemy zdefiniować klasę jako przecięcie dwóch innych klas: Klasa owl:equivalentclass [ rdf:type owl:class ; owl:intersectionof ( Klasa1 Klasa2 ) ]. czyli Klasa to przecięcie klas Klasa1 i Klasa2.

Przecięcie klas Wnioskowanie: :Mother owl:equivalentclass [ rdf:type owl:class ; owl:intersectionof ( :Woman :Parent ) ]. :Iza rdf:type :Mother. :Iza rdf:type :Woman. :Iza rdf:type :Parent.

Suma klas W języku OWL możemy zdefiniować klasę jako sumę dwóch innych klas: Klasa owl:equivalentclass [ rdf:type owl:class ; owl:unionof ( Klasa1 Klasa2 ) ]. czyli Klasa to suma klas Klasa1 i Klasa2.

Suma klas Wnioskowanie: :Parent owl:equivalentclass [ rdf:type owl:class ; owl:unionof ( :Mother :Father ) ]. :Iza rdf:type :Mother. :Iza rdf:type :Parent.

Dopełnienie klasy W języku OWL możemy zdefiniować klasę jako dopełnienie innej klasy. Do dopełnienia klasy A należą te elementy które nie należą do A. Klasa1 owl:equivalentclass [ rdf:type owl:class ; owl:complementof Klasa2 ]. czyli Klasa1 jest dopełnieniem Klasa2.

Dopełnienie klasy :NotParent owl:equivalentclass [ rdf:type owl:class ; owl:complementof :Parent ]. Do klasy NotParent należy każdy element który nie należy do klasy Parent. Klasa osób bezdzietnych :ChildlessPerson owl:equivalentclass [ rdf:type owl:class ; owl:intersectionof ( :Person [ owl:complementof :Parent ] ) ].

Ograniczenia właściwości W języku OWL klasy możemy definiować wykorzystując właściwości, a dokładnie ograniczając właściwości. Klasę Parent możemy zdefiniować jako klasę tych zasobów w przypadku których właściwość haschild przyjmuje dowolną wartość z klasy Person. Klasę HappyPerson możemy zdefiniować jako klasę tych zasobów w przypadku których właściwość haschild przyjmuje tylko wartości z klasy HappyPerson lub nie jest określona (???).

Ograniczenia właściwości Kwantyfikacja egzystencjalna definiuje klasę elementów, które są połączone pewną właściwością (relacją) z elementami należącymi do innej klasy. Klasa1 owl:equivalentclass [ rdf:type owl:restriction ; owl:onproperty właściwość; owl:somevaluesfrom Klasa2 ]. czyli każdy element Klasa1 posiada właściwość której wartością jest jakiś element Klasa2.

Ograniczenia właściwości Formalnie: :Parent owl:equivalentclass [ rdf:type owl:restriction ; owl:onproperty :haschild ; owl:somevaluesfrom :Person ]. Dla każdego elementu klasy rodzic istnieje dziecko będące elementem klasy osoba. A zatem z faktu, że Iza jest rodzicem wynika, że posiada jakieś (przynajmniej jedno) dziecko (wiedza niekompletna).

Ograniczenia właściwości :ParentOfGirl owl:equivalentclass [ rdf:type owl:restriction ; owl:onproperty :haschild ; owl:somevaluesfrom :Girl ].

Ograniczenia właściwości

Ograniczenia właściwości Kwantyfikacja uniwersalna definiuje klasę elementów, które jeżeli posiadają pewną właściwością to jej wartościami są elementy z pewnej klasy. Klasa1 owl:equivalentclass [ rdf:type owl:restriction ; owl:onproperty właściwość; owl:allvaluesfrom Klasa2 ]. czyli jeżeli element Klasa1 posiada właściwość to jej wartością jest na pewno element Klasa2 ale może nie posiadać tej właściwości!

Ograniczenia właściwości Formalnie: :HappyPerson owl:equivalentclass [ rdf:type owl:restriction ; owl:onproperty :haschild ; owl:allvaluesfrom :HappyPerson ]. Osoba szczęśliwa to osoba posiadająca szczęśliwe dzieci (lub nie posiadająca w ogóle dzieci). A zatem z faktu, że Iza jest szczęśliwą osobą wynika, że jeżeli Iza posiada dzieci (a nie musi) to są one osobami szczęśliwymi.

Ograniczenia właściwości Zdefiniujmy klasę osób szczęśliwych jako tych które na pewno posiadają dzieci i dzieci te są osobami szczęśliwymi. :HappyPerson owl:equivalentclass [ rdf:type owl:class ; owl:intersectionof ([ rdf:type owl:restriction ; owl:onproperty :haschild ; owl:somevaluesfrom :HappyPerson ] [ rdf:type owl:restriction ; owl:onproperty :haschild ; owl:allvaluesfrom :HappyPerson ])].

Ograniczenie do elementu Wartość ograniczanej właściwości może być ograniczona do konkretnego elementu a nie całej klasy: :TomChildren owl:equivalentclass [ rdf:type owl:restriction ; owl:onproperty :hasparent ; owl:hasvalue :Tom ]. Klasa dzieci Toma (TomChildren) zdefiniowana jest jako klasa elementów dla których właściwość hasparent ma wartość Tom.

Ograniczenia kardynalne Dotychczas poznane ograniczenia właściwości nie są precyzyjne. Chcielibyśmy np. zapisać, że Marek należy do klasy osób posiadających przynajmniej trójkę dzieci, które same są rodzicami albo Marek należy do klasy osób posiadających co najwyżej trójkę dzieci, które same są rodzicami. albo Marek należy do klasy osób posiadających dokładnie trójkę dzieci, które same są rodzicami.

Ograniczenia kardynalne Marek należy do klasy osób posiadających przynajmniej trójkę dzieci, które same są rodzicami. :Marek rdf:type [ rdf:type owl:restriction ; owl:minqualifiedcardinality "3"^^xsd:nonNegativeInteger ; owl:onproperty :haschild ; owl:onclass :Parent ].

Ograniczenia kardynalne John należy do klasy osób posiadających co najwyżej trójkę dzieci, które same są rodzicami. :John rdf:type [ rdf:type owl:restriction ; owl:maxqualifiedcardinality "3"^^xsd:nonNegativeInteger ; owl:onproperty :haschild ; owl:onclass :Parent ].

Ograniczenia kardynalne John należy do klasy osób posiadających dokładnie trójkę dzieci, które same są rodzicami. :John rdf:type [ rdf:type owl:restriction ; owl:qualifiedcardinality "3"^^xsd:nonNegativeInteger ; owl:onproperty :haschild ; owl:onclass :Parent ].

Ograniczenia kardynalne John należy do klasy osób posiadających przynajmniej trójkę dzieci. :John rdf:type [ rdf:type owl:restriction ; owl:minqualifiedcardinality "3"^^xsd:nonNegativeInteger ; owl:onproperty :haschild ; owl:onclass :Parent ].

Ograniczenia kardynalne John należy do klasy osób posiadających co najwyżej trójkę dzieci. :John rdf:type [ rdf:type owl:restriction ; owl:maxqualifiedcardinality "3"^^xsd:nonNegativeInteger ; owl:onproperty :haschild ; owl:onclass :Parent ].

Ograniczenia kardynalne John należy do klasy osób posiadających dokładnie trójkę dzieci. :John rdf:type [ rdf:type owl:restriction ; owl:qualifiedcardinality "3"^^xsd:nonNegativeInteger ; owl:onproperty :haschild ; owl:onclass :Parent ].

Elementy klasy wprost W języku OWL klasy możemy definiować wykorzystując podając wprost ich elementy. Klasa owl:equivalentclass [ rdf:type owl:class ; owl:oneof ( Elem1 Elem2 Elem3 ) ]. czyli do Klasy należą elementy: Elem1, Elem2, Elem3.

Elementy klasy wprost Klasa złożona z polskich miast w których odbędą się mecze Euro : :MiastaEuro owl:equivalentclass [ rdf:type owl:class ; owl:oneof ( :Poznan :Wroclaw :Gdansk :Warszawa ) ].

Właściwości odwrotne W języku OWL właściwość możemy zdefiniować jako odwrotność innej właściwości: właściwość1 owl:inverseof właściwość2. czyli właściwość 1 jest odwrotnością właściwości 2. Właściwość posiadanie rodzica jest odwrotnością właściwości posiadanie dziecka : :hasparent owl:inverseof :haschild.

Właściwości odwrotne Wnioskowanie R owl:inverseof P. x P y. y R x. :hasparent owl:inverseof :haschild. :Iza :haschild :Tom. :Tom :hasparent :Iza.

Właściwości odwrotne :hasdaughter owl:inverseof :isdaughterof.

Właściwości symetryczne W języku OWL możemy zdefiniować właściwość symetryczną: właściwość rdf:type owl:symmetricproperty. Właściwość bycie kuzynem jest symetryczna: :iscousin rdf:type owl:symmetricproperty.

Właściwości symetryczne Wnioskowanie P rdf:type owl:symmetricproperty. x P y. y P x. :iscousin rdf:type owl:symmetricproperty. :Iza :iscousin :Ewa. :Ewa :iscousin :Iza.

Właściwości symetryczne :borderswith rdf:type owl:symmetricproperty.

Właściwości asymetryczne W języku OWL możemy zdefiniować właściwość antysymetryczną: właściwość rdf:type owl:asymmetricproperty. czyli właściwość jest asymetryczna. Właściwość bycie rodzicem jest asymetryczna: :isparent rdf:type owl:asymmetricproperty.

Właściwości asymetryczne Wnioskowanie P rdf:type owl:asymmetricproperty. x P y. y P x. :Iza :haschild :Tom. :Tom :haschild :Iza.

Właściwości rozłączne W języku OWL możemy zdefiniować właściwości rozłączne: właściwość1 owl:propertydisjointwith właściwość2. Właściwość bycie bratem jest rozłączna z właściwością bycie siostrą : :isbrother owl:propertydisjointwith :issister.

Właściwości rozłączne Wnioskowanie P owl:propertydisjointwith R. x P y. x R y. :Tom :isbrother :Paul. :Tom :issister :Paul.

Właściwości zwrotne W języku OWL możemy zdefiniować właściwości zwrotne: właściwość rdf:type owl:reflexiveproperty. Właściwość zwrotna wiąże element z samym sobą. Właściwość posiadania krewnego jest zwrotna: :hasrelative rdf:type owl:reflexiveproperty.

Właściwości przeciwzwrotne W języku OWL możemy zdefiniować właściwości przeciwzwrotne: właściwość rdf:type owl:irreflexiveproperty. Właściwość przeciwzwrotna nie może wiązać elementu z samym sobą. Właściwość bycia rodzicem jest przeciwzwrotna: :isparentof rdf:type owl:irreflexiveproperty.

Właściwości funkcjonalne W języku OWL możemy zdefiniować właściwości funkcjonalne: właściwość rdf:type owl:functionalproperty. Właściwość funkcjonalna dla danego elementu może przyjąć tylko jedną wartość. Właściwość posiadanie męża jest funkcjonalna: :hashusband rdf:type owl:functionalproperty.

Właściwości funkcjonalne Wnioskowanie P rdf:type owl:functionalproperty. x P y. x P z. y owl:sameas z. :hashusband rdf:type owl:functionalproperty. :Iza :hashusband :Piotrek. :Iza :hashusband :Jacek. :Piotrek owl:sameas :Jacek.

Właściwości funkcjonalne :hasbirthmother rdf:type owl:functionalproperty.

Właściwości odwrotnie funkcjonalne W języku OWL możemy zdefiniować właściwości odwrotnie funkcjonalne: właściwość rdf:type owl:inversefunctionalproperty. Właściwość odwrotnie funkcjonalna dla dwóch różnych obiektów nie może posiadać tej samej wartości. Właściwość posiadanie męża jest odwrotnie funkcjonalna: :hashusband rdf:type owl:inversefunctionalproperty.

Właściwości odwrotnie funkcjonalne Wnioskowanie P rdf:type owl:inversefunctionalproperty. x P z. y P z. x owl:sameas y. :hashusband rdf:type owl:inversefunctionalproperty. :Iza :hashusband :Jacek. :Jola :hashusband :Jacek. :Iza owl:sameas :Jola.

Właściwości odwrotnie funkcjonalne :hasemail rdf:type owl:inversefunctionalproperty.

Właściwości przechodnie W języku OWL możemy zdefiniować właściwości przechodnie: właściwość rdf:type owl:transitiveproperty. Właściwość posiadania przodka jest przechodnia: :hasancestor rdf:type owl:transitiveproperty.

Właściwości przechodnie Wnioskowanie P rdf:type owl:transitiveproperty. x P y. y P z. X P z. :hasancestor rdf:type owl:transitiveproperty. :Iza :hasancestor :Maria. :Maria :hasancestor :Jan. :Iza owl:hasancestor :Jan.

Właściwości przechodnie :hasancestor rdf:type owl:transitiveproperty.

Łańcuchy właściwości W języku OWL możemy zdefiniować właściwości łącząc inne właściwości: właściwość owl:propertychainaxiom ( właściwość1 właściwość2 ). Właściwość posiadania dziadka jest zdefiniowana jako łańcuch właściwości: :hasgrandparent owl:propertychainaxiom ( :hasparent :hasparent ).

Łańcuchy właściwości Wnioskowanie P owl:propertychainaxiom ( P1 P2 ). x P1 y. y P2 z. x P z. :hasgrandparent owl:propertychainaxiom ( :hasparent :hasparent ). :Marek :hasparent :Piotr. :Piotr :hasparent :Jan. :Marek owl:hasgrandparent :Jan.