Web Ontology Language
Die Web Ontology Language (OWL) ist eine Spezifikation des W3C, um Ontologien anhand einer formalen Beschreibungssprache erstellen, publizieren und verteilen zu können. Es geht darum, Konzepte einer Domäne und deren Bezeihungen formal so zu beschreiben, dass auch Software (Agenten) die Bedeutung verarbeiten ("verstehen") können. OWL ist somit ein wesentlicher Bestandteil der Semantic Web Initiative von Tim Burners-Lee. OWL baiert auf RDF (sollte ebenfalls gelesen werden), geht über dessen Ausdrucksmächtigkeit weit hinaus. Zusätzlich zu RDF und RDF Schema werden weiter Sprachkonstrukte eingeführt, die es erlauben Ausdrücke ähnlich der Prädikaten-Logik zu formulieren.
Sprachebenen Liste, DL und Full
OWL kann auf drei Ebenen eingesetz werden. Dazu wurden die Sprachebenen OWL Lite, OWL DL und OWL Full defieniert. Für den Einsatz von OWL Lite/DL wurden Einschräkungen definiert, die die Entwicklung von Tools erleitern sollen, da die Ausdrucksmchtigkeit eingeschränkt wird.
Sprachkonstrukte
OWL-Dateien sind zunächst XML-Dateien. Die Spezifikation erweitert die Bedeutung von XML, XML Schema, RDF und RDF Schema um weitere Konstrukte um die Ausdrucksmächtigkeit zu steigern.
OWL unterscheidet Klassen, Properties und Instanzen. Klassen stehen für Konzepte. Sie können Properties besitzen. Instanzen sind Individuen einer oder meherer Klassen.
Klassen betreffend
- <owl:class>
- <owl:oneOf>
- <owl:unionOf>
- <owl:intersectionOf>
Properties betreffend
- <owl:Restriction>
- <owl:allValuesFrom>
- <owl:someValuesFrom>
Instanzen betreffend
Beispiel
Das Beispiel beschreibt die Konzepte <Person>, <Gender> und <Woman>. Ein Frau ist definiert, als ein <Person> mit Wert <female> im Property <gender>, das der Klasse <Gender> angehören muss. Die Instanz <STilgner> ist somit als <Person> beschrieben eine <Woman>. Mittels Inferenz kann diese Zugehörigkeit ermittelt werden.
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:j.0="http://localhost:8080/OWLBuergerInformation.owl#"> <owl:Class rdf:ID="Gender"/> <owl:Class rdf:ID="Woman"> <rdfs:subClassOf rdf:resource="#Person"/> <owl:equivalentClass> <owl:Restriction> <owl:onProperty rdf:resource="#gender"/> <owl:hasValue rdf:resource="#female" rdf:type="#Gender"/> </owl:Restriction> </owl:equivalentClass> </owl:Class> <owl:ObjectProperty rdf:ID="gender" rdf:type="http://www.w3.org/2002/07/owl#FunctionalProperty"> <rdfs:range rdf:resource="#Gender"/> <rdfs:domain rdf:resource="#Person"/> </owl:ObjectProperty> <owl:DatatypeProperty rdf:ID="name" rdf:type="http://www.w3.org/2002/07/owl#FunctionalProperty"> <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/> <rdfs:domain rdf:resource="#Person"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:ID="firstname" rdf:type="http://www.w3.org/2002/07/owl#FunctionalProperty"> <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/> <rdfs:domain rdf:resource="#Person"/> </owl:DatatypeProperty> <j.0:Person rdf:ID="STilgner" j.0:firstname="Susanne" j.0:name="Tilgner"> <j.0:gender rdf:resource="#female"/> </j.0:Person> </rdf:RDF>
Weblinks
Spezifikation
- http://www.w3c.org/TR/owl-features - W3C Einführung und Überblick zu OWL
Tools
- http://www.hpl.hp.com/semweb/ - HP Labs Semantic Web Research, Jena Framework
- http://phoebus.cs.man.ac.uk:9999/OWL/Validator - Ein OWL Validator (Klassifiziert in OWL Lite, OWL DL und OWL Full)