Upload
eldrich-schmotzer
View
104
Download
0
Embed Size (px)
Citation preview
GE
OIN
FO
RM
AT
IK
DAMLDAMLDARPA Agent Markup LanguageDARPA Agent Markup Language
Veranstaltung: Seminar „Softwareagenten“
Veranstalter: Institut für Informatik
Dozent: Prof. Dr. W. Lippe
Betreuer: Dr. Dietmar Lammers
Referent: Dirk Redbrake
2
InhaltInhalt
Was ist DAML ? DARPA Das DAML-Programm Ziele von DAML Agenteneinsatz Beispiel für eine Ontologie Anwendungen Zusammenfassung
3
Was ist DAML ?Was ist DAML ?
DAML: DARPA Agent Markup Language Erweiterung von RDF und XML Nutzung besonders durch Agenten Forschungsprojekt der DARPA Heutiger DAML-Standard vereinigt DAML und OIL OIL: Ontology Interface Layer ist das europäische
Gegenstück zum US-amerikanischen DAML Verbesserte Beschreibbarkeit von Ontologien „DAML Vision“: WWW -> Semantic Web Entwicklung von Programmen zur DAML-Nutzung
4
DARPADARPA
DARPA: Defense Advanced Research Projects Agency
Zentrale Forschungsstelle des US-amerikanischen Department of Defense (DoD)
Gegründet 1958 im Kalten Krieg Standort Arlington, Virginia Finanzierung durch Steuergelderfond Teilnehmer: Wissenschaftler und Ingenieure, die
nicht in Diensten der Regierung stehen
5
DARPA-ProjekteDARPA-Projekte
Projekte besonders für das Militär interessant „Sicherstellung eines überevolutionären
technischen Vorsprungs der USA“ (DARPA) „extrem risikobehaftet mit gewaltigem Pay-Off“
(DARPA) Beispiel: Entwicklung des Internets Normale Laufzeit: 3 - 5 Jahre meist ohne
Verlängerung Normales Jahresbudget: 2,5 - 10 Mio. US-$ Durchschnittliche Vertragspartner:
10 Firmen / Institutionen 2 Universitäten
6
DAML-ProgrammDAML-Programm
Offizieller Start im August 2000 in Boston Vermeintliche Laufzeit bis etwa 2004 16 Teams zur DAML-Tool-Entwicklung 21 Projekte (10 Firmen und 7 Universitäten) „unclassified“: Berichte und Ergebnisse frei Budget: 13,1 Mio. US-$ (2001) 15,9 Mio. US-$
(2002) Zuständigkeit seit 1.11.2001 beim IXO IXO: Information Exploitation Office entwickelt
Sensor- / Informationssystemen, z.B. intelligente Zielsysteme
7
Ziele (I)Ziele (I)
Interoperable, agenten-basierte Integration verschiedener militärischer Quellen und Systeme in Echtzeit
InteLink und C2Link („command and control“) 2002: Vergrößerung des DAML-Statement-Archivs
für Laufzeittests von derzeit 850000 auf 1,5 Mio. Tool-Entwicklung zur DAML-Einbettung in Web-
Seiten und Informationsquellen und Agentenerzeugung
8
Ziele (II)Ziele (II)
Agenten erkennen komplexe semantische Strukturen
Agenteneinsatz im Internet und bei Sensoren Kommunikation über DAML Ontologien-Entwicklung im Bottom-up-Design Nutzbarkeit für verschiedene Information
Communities Durch DAML Anhang von Informationen an
Objekte (z.B. Funktionsbeschreibungen)
9
AgenteneinsatzAgenteneinsatz
Identifikation von Informationsquellen Kommunikation zwischen Agenten Dynamisch, selbständig und interoperabel DAML als Kommunikationssprache Information fusion (Web, DB, Sensoren etc) URIs müssen noch vorgegeben werden Entwicklung eines Agentennetzwerkes
10
Beispiel für OntologieBeispiel für Ontologie
Aktueller DAML+OIL-Standard vom März 2001 Syntaktisch normale Markup Language 35 Sprachelemente Stand 27.11.2001: 169 Ontologien, 49 Properties Verwendung vieler RDF-Befehle Ontologie besteht aus beliebig vielen Headern,
Klassen, Properties, Restriktionen und Instanzen Instanzen verwenden nur RDF
11
Beispiel DAML-HeaderBeispiel DAML-Header
<Ontology rdf:about=""> <versionInfo>$Id: reference.html,v 1.10
2001/04/11 Exp $</versionInfo>
<rdfs:comment>TestOntology</rdfs:comment> <imports rdf:
resource="http://www.daml.org/daml"/></Ontology> Ontology: Rahmen für Ontologie versionInfo: textliche Aussage über DAML-
Version imports: transitives Importieren von Ontologien
Wenn A B und B C, dann A B und C A und B äquivalent, wenn A B und B A
12
DAML-KlassenDAML-Klassen
Einteilung des Universums in zwei Domänen Object domain: Einzelobjekte in DAML oder RDF
beschreibbar Datatype domain: XML-Datentypen mit DAML-
Befehl datatype verwendbar Überwiegend Objekte der object domain erstellt DAML-Klasse stets Unterklasse von RDF Beispiele:
Class: Definition einer DAML-Klasse equivalentTo: Verweis auf semantisch äquivalente
Klasse (+ weitere derartige Befehle)
13
DAML-Property-BeispieleDAML-Property-Beispiele
Überwiegend RDF-Sprachschatz samePropertyAs: Verweis auf äquivalente
Property equivalentTo: wie bei DAML-Klassen TransitiveProperty: wenn (x,y) und (y,z)
Instanzen der Property, dann auch (x,z) UniqueProperty: zwei Instanzen einer Property
haben niemals den gleichen Wert
14
DAML-Property-Restrictions + BeispieleDAML-Property-Restrictions + Beispiele
Property Restrictions: Ein- bzw. Beschränkungen von Properties (DAML-Befehl: restriction)
Definition in anonymen Subklassen durch Verwendung von rdf:subClassOf
onProperty: betroffene Properties / URIs toClass: Klasse mit zulässigen Property-Werten maxCardinality n: Property darf höchstens n
Mal instanziert werden
15
DAML-BeispielDAML-Beispiel
<daml:Class URI_name> <daml:equivalentTo rdf:resource=
"http://www.daml.org/daml#Person"/> <rdfs:subClassOf> <daml:Restriction>
<daml:onProperty rdf:resource="#name"/>
<daml:toClass rdf:resource=
"http://www.w3.org/XMLSchema#string"/><daml:maxCardinality>1</daml:maxCardinality>
</daml:Restriction> </rdfs:subClassOf></daml:Class>
16
DAML-AnwendungenDAML-Anwendungen
Tool-Entwicklung ist Teil des DAML-Projektes Tools benutzen DAML oder kommunizieren mit
Agenten, die DAML benutzen Derzeit Dutzende von Tools (häufig JAVA) Inhaltlich ähneln sich viele Anwendungen Tools überwiegend noch nicht fertig Häufig zusätzliche Software erforderlich Einige Präsentationen als Tutorials Tools werden auf DAML-Homepage gesammelt
17
Suchmaschine auf DAML-HomepageSuchmaschine auf DAML-Homepage
Einflussbereich auf registrierte Server begrenzt Suche nach definierten Properties und Klassen Suchen von Ontologien mit Kriterien wie URI, Re-
gistrierungsdatum, Schlüsselwort, Property, Klasse Alle verwendeten DAML-Statements sind registriert Wegen fehlerhafter Statements ist Qualität der Links
extrem unterschiedlich Links stets .DAML-Dateien Suche deutlich komfortabler als bei herkömmlichen
Suchmaschinen
18
Wall Street Journal (DARPA-Fiktion)Wall Street Journal (DARPA-Fiktion)
DAML-Verwendung in der Online-Ausgabe Ontologie „Firma“: Name und wirtschaftliche
Eckdaten als Properties Ontologie „Artikel“: Titel, Datum, Herausgeber,
Text als Properties Agent könnte Benutzer jedes mal eine E-Mail
schicken, wenn ein Artikel über eine gewünschte Firma erscheint
Gleichzeitiges Auslesen aktueller Eckdaten Erweiterung auf Branchen wie „Banken“, etc.
19
DAML Crawler (I)DAML Crawler (I)
Architektur des DAML Crawlers (Quelle: DAML-Homepage)
20
DAML Crawler (II)DAML Crawler (II)
JAVA-Programm zum Suchen von DAML-Statements
Registrierung der URIs vorher notwendig Tägliche automatische Suche nach Statements
wahrscheinlich durch Agenten DAML Crawler selbst liest nur Resultate aus Ziel „Echtzeit“ verfehlt Nachfolgende Tabelle ist ein gekürztes Beispiel-
resultat (TOTAL-Werte beziehen sich jedoch auf alle Server)
21
DAML Crawler (III)DAML Crawler (III)
Auszug aus Ergebnisliste (Quelle: DAML-Homepage)
22
PalmDAML (I)PalmDAML (I)
Anwendung für Palm Desktops Tragbarer Organizer (Adressen, E-Mail, Termine) Kabelloser Internetanschluss
23
PalmDAML (II)PalmDAML (II)
Agenten legen DAML-Datenbank an JAVA-Anwendung daml2pdb liest Daten aus und
konvertiert sie in eine Palm Data Base (PDB) Herunterladen der PDB aus dem Internet
Architektur Palm DAML (Quelle: DAML-Homepage)
24
PalmDAML (III)PalmDAML (III)
PalmOS-Programm HotSync konvertiert PDB, um sie nutzbar zu machen
PDB-Größe noch auf 64 KB begrenzt
Aufruf PalmDAML (Quelle: DAML-Homepage)
25
PalmDAML (IV)PalmDAML (IV)
Nach Start von Palm-DAML Anzeige der Datensätze
Beispiel ist eine PDB über den europäischen Adel
Öffnen einer PDB (Quelle: DAML-Homepage)
26
PalmDAML (V)PalmDAML (V)
Übersicht über Knoten
Darstellung abgekürzt: nur Verzeichnis # Resource
Knotenauszug (Quelle: DAML-Homepage)
27
PalmDAML (VI)PalmDAML (VI)
Darstellung Einzelknoten
1) volle URI 2) Statements mit
Subjekt/Objekt-Beziehung
3) Informationen zu anwählbarem Statement-Knoten
Einzelknoten (Quelle: DAML-Homepage)
28
PamlDAML (VII)PamlDAML (VII)
Suchfunktion Ergebnis: alle
Knoten, in denen Suchbegriff vorkommt
Suchfunktion (Quelle: DAML-Homepage)
29
PalmDAML (VIII)PalmDAML (VIII)
Suchergebnis: hier ein Knoten
Knoten lassen sich auswählen
Suchergebnis (Quelle: DAML-Homepage)
30
PalmDAML (IX)PalmDAML (IX)
Ansicht eines Knotens
Gleiche Ansicht wie zuvor
Einzelknoten (Quelle: DAML-Homepage)
31
PalmDAML (X)PalmDAML (X)
PalmDAML mit kommerziellem Potential
Serienmäßiger Vertrieb auf Palm Desktops
Problem: noch geringe Datenbank-Größe von 64 KB
In Planung: Filterung von DAML-Statements
In Planung: Erzeugen von DAML-Statements
32
DAML Viewer (I)DAML Viewer (I)
Weiteres Tool zur Abfrage von DAML-Statements Als Applet oder Applikation erhältlich URIs oder Dateien müssen angegeben werden
URI-Eingabe (Quelle: DAML-Homepage)
33
DAML Viewer (II)DAML Viewer (II)
Liste aller gefundenen Resourcen Einzelne Knoten anwählbar
Knotenauszug (Quelle: DAML-Homepage)
34
DAML Viewer (III)DAML Viewer (III)
Option „Properties“ liefert Anzahl von DAML-Statements und Resourcen
Option „View Source“ zeigt Knoten-Quellcode an Klick auf Knoten öffnet Fenster mit verwendeten
Properties (Subjekt/Objekt, etc.)
Einzelknoten (Quelle: DAML-Homepage)
35
HyperDAML (I)HyperDAML (I)
Einfaches Tool zur Konvertierung einer DAML-Datei in ein Hypertext-Dokument
Beispiel:<rdfs:subClassOf>
<daml:Restriction>
<daml:onProperty rdf:resource="#surname"/>
<daml:toClass rdf:resource= "http://www.w3.org/XMLSchema#string"/>
<daml:maxCardinality>1</daml:maxCardinality>
</daml:Restriction>
</rdfs:subClassOf>
36
HyperDAML (II)HyperDAML (II)
Resultat mit erhöhter Lesbarkeit Resourcen direkt anwählbar Ausgangsbeispiel nach Konvertierung:
37
ZusammenfassungZusammenfassung
Vereinigung von DAML, OIL, RDF, XML DAML könnte alle Standards in sich vereinigen Einflussreicher Schirmherr (DARPA) könnte
Popularität steigern Schritt vom WWW zum Semantic Web Internet wie eine Datenbank abrufbar Internet als Vorbereitung für spätere militärische
Anwendungen (z.B. Raketenabwehrsystem) Probleme: Echtzeit und vorherige URI-Eingabe Enormes Potential und schon jetzt eindrucksvoll
GE
OIN
FO
RM
AT
IK E N D EE N D E