DAML+OIL
# DAML+OIL

DAML+OIL ist eine vom World Wide Web Consortium (W3C) standardisierte, XML-basierte Beschreibungssprache für Ontologien, das heißt eine maschinenlesbare Sprache für die Wissensrepräsentation in der Informatik. Die Sprache baut auf den W3C-Empfehlungen Resource Description Framework (RDF) sowie Resource Description Framework Schema (RDFS) auf. Die namensgebenden Vorgänger sind die anfangs nur DAML, später DAML-ONT genannte Ontologiesprache des DARPA Agent Markup Language-Programms (DAML) erweitert um Komponenten des im selben Zeitraum entwickelten Ontology Inference Layer (OIL). Die Sprache enthält viele Konstrukte aus framebasierten Sprachen.

Nach 2001 wurde DAML+OIL nicht mehr weiterentwickelt. Das W3C startete das Projekt Web Ontology Language (OWL), welches als direkter Nachfolger gilt.

## Beispiel

DAML+OIL nutzt zahlreiche Elemente der Sprachen RDF, RDFS sowie XML Schema (XSD), etwa die dort definierten Datentypen, und bindet diese in Form von XML-Namensräumen ein. Das folgende, stark gekürzte Beispiel zeigt eine Klasse „Mensch“, eine davon abgeleitete Klasse „Mann“, die Definition eines Attributs „Alter“ sowie eine anhand dieser Definitionen beschriebene Instanz.

## Ontology Inference Layer

Ontology Inference Layer (OIL, seltener auch Ontology Interchange Language) ist eine seit 1999 entwickelte, ebenfalls XML- und RDF-basierte Ontologie-Beschreibungssprache und einer der namensgebenden Vorgänger von DAML+OIL. OIL wurde von Dieter Fensel, Frank van Harmelen (Freie Universität Amsterdam) und Ian Horrocks (University of Manchester) im Rahmen eines Forschungsprogramms entwickelt. Als Referenzimplementierung für den Einsatz der Sprache dient der Ontologie-Editor OILed.

Zusätzlich zur XML-Beschreibung definiert OIL eine vereinfachte Pseudosyntax, bei der Schlüsselwörter fett geschrieben und Gruppierungen durch Einrückungen dargestellt werden. Das folgende, stark gekürzte Beispiel definiert mehrere Tierarten als voneinander abgeleitete Klassen. Giraffen fressen in diesem Beispiel Pflanzen, wobei alles als Pflanze angesehen wird, was kein Tier ist. Löwen fressen Pflanzenfresser und damit auch Giraffen. Diese sind zwar nicht ausdrücklich als Pflanzenfresser deklariert, aber als solche erkennbar, da ihre Definitionen übereinstimmen.

ontology-definitions

    slot-def frisst
       inverse wird-gefressen-von
    class-def Tier
    class-def Pflanze
       subclass-of NOT Tier
    class-def Pflanzenfresser
       subclass-of Tier
       slot-constraint frisst
          value-type Pflanze
    class-def Giraffe
       subclass-of Tier
       slot-constraint frisst
          value-type Pflanze
    class-def Loewe
       subclass-of Tier
       slot-constraint frisst
          value-type Pflanzenfresser
