Internet: Mein Computer versteht mich
Was wäre, wenn der Computer den Inhalt einer Seite aus dem World Wide Web nicht nur anzeigen, sondern auch seine Bedeutung erfassen würde? Er könnte ungeahnte Dinge für seinen Benutzer tun – und das vielleicht schon bald, wenn das semantische Netz etabliert ist.
Die Stereoanlange plärrt "We can work it out" von den Beatles, als das Telefon klingelt. Sowie Peter den Hörer abnimmt, sendet das Telefon eine Nachricht an alle lokalen Geräte mit Lautstärkeregler, woraufhin die Beatles vorübergehend verstummen. Peters Schwester Lucy ist am Apparat, von der Arztpraxis aus: "Mama muss zu einem Spezialisten und dann alle zwei Wochen in die Physiotherapie. Ich lasse meinen Agenten die Termine organisieren." Peter erklärt sich bereit, einen Teil der Chauffeurdienste zu übernehmen.
Noch in der Praxis programmiert Lucy mit einem portablen Webbrowser ihren Webagenten. Dieser holt sich sogleich vom Agenten des Arztes die Daten des Rezepts, das der Arzt für Mama ausgestellt hat, und geht mehrere Listen mit Diensteanbietern (in diesem Falle Physiotherapeuten) durch. Daraus wählt er diejenigen aus, die für Mamas Krankenversicherung eine Zulassung haben, sich weniger als 30 Kilometer entfernt von ihrer Wohnung befinden und von vertrauenswürdigen Verbraucherorganisationen die Einstufung "ausgezeichnet" oder "sehr gut" erhalten haben. Schließlich gleicht er die freien Termine der ausgewählten Anbieter (die deren Agenten auf den entsprechenden Webseiten aufgelistet haben) mit Peters und Lucys dicht gedrängtem Terminplan ab. (Die rot gedruckten Wörter sind Begriffe, deren Bedeutung der Agent "kennt".)
Ein paar Minuten später präsentiert der Agent einen Plan. Peter ist nicht begeistert; er müsste im dichtesten Berufsverkehr zur Universitätsklinik am anderen Ende der Stadt fahren. Er weist seinen eigenen Agenten an, die Suche zu wiederholen und dabei die Kriterien Standort und Zeit wichtiger zu nehmen. Lucys Agent, der für Aufgaben dieser Art volles Vertrauen in Peters Agenten hat, unterstützt diesen, indem er Zugangsausweise für gewisse Websites und halb aufbereitete Daten an ihn weiterreicht.
Kaum eine Sekunde später wird ein neuer Plan vorgeschlagen, mit einer näher gelegenen Praxis und günstigeren Terminen, allerdings mit zwei Warnhinweisen. Erstens müsste Peter ein paar weniger wichtige Verabredungen verlegen. Zweitens hat die Praxis zwar eine Zulassung von der Versicherung, aber nicht für Physiotherapie. Aber der Agent weiß Beruhigendes: "Behandlungstyp und Abdeckung durch Versicherung auf anderem Wege zuverlässig sichergestellt. (Einzelheiten?)"
Lucy stimmt dem Plan auf der Stelle zu; Peter knurrt nur: "Erspar mir die Einzelheiten", und damit ist alles geregelt. (Natürlich kann Peter es nicht lassen, später am Abend seinen Agenten zu fragen, wie er diese Praxis gefunden hat, obwohl sie nicht in der richtigen Liste verzeichnet ist.)
Dies ist noch Zukunftsmusik. Heute könnten Peter und Lucy nicht einfach ein Stück Software (einen "Agenten") beauftragen, im World Wide Web (WWW) die wesentlichen Informationen zusammenzusuchen, sondern müssten selber nachsehen. Die Dateien des WWW, die so genannten Websites, sind bislang darauf ausgelegt, von Menschen gelesen, nicht aber von Computerprogrammen ausgewertet und interpretiert zu werden. Computer können Websites zwar durchmustern und Überschriften oder Links (Verweise auf andere Web-Dateien) als solche erkennen; aber mit der Bedeutung einzelner Teile ("Dies ist die Website der Gemeinschaftspraxis Dr. Hartman und Dr. Strauss", "dieser Link führt zu Dr. Hartmans Lebenslauf") können sie im Allgemeinen nichts anfangen.
Dem soll das Konzept abhelfen, das wir in diesem Artikel vorstellen. Wir nennen es "Semantic Web", das "semantische" oder auch "bedeutungstragende Netz". Das semantische Netz wird den Inhalt von Websites mit einer Struktur versehen, sodass Softwareagenten von Datei zu Datei wandern und komplizierte Aufträge erfüllen können. Ein solcher Agent wird nicht nur wissen, dass die Website der Praxis Schlüsselwörter wie "Behandlung", "Medizin" und "Physiotherapie" enthält (das schaffen Suchmaschinen schon heute), sondern auch, dass Dr. Hartman montags, mittwochs und freitags in der Praxis arbeitet, und außerdem, dass die Website Terminanfragen im Format jjjj-mm-tt entgegennimmt und daraufhin Termine anbietet. Dabei verfügt der Agent über nicht entfernt so viel künstliche Intelligenz wie HAL aus dem Film "2001" oder C-3PO aus "Krieg der Sterne". Auch die Bereitstellung der bedeutungsträchtigen Website erfordert keine besondere Genialität: Die Arzthelferin (die nie eine Anfängervorlesung Informatik besucht hat) nimmt ein Standard-Semantik-Softwarepaket, reichert es mit Daten an, die auf der Website der Physiotherapeuten-Berufsvereinigung bereitstehen, und trägt die Daten der individuellen Praxis in vorbereitete Felder ein; das ist alles.
Bedeutung ausdrücken
Das semantische Netz ist kein neues Netz, sondern eine Erweiterung des bestehenden, in der Informationen mit maschinenlesbarem Bedeutungsinhalt versehen sind. Die ersten Schritte zum Aufbau des semantischen Netzes wurden bereits getan. In naher Zukunft wird es Maschinen befähigen, Daten zu verarbeiten und zu "verstehen", die sie heute lediglich anzeigen.
Die wesentliche Eigenschaft des gegenwärtigen Webs ist seine Universalität. Ein Link kann alles mit allem verbinden. Die Technologie des Netzes muss daher alle gleich bedienen: professionell gemachte Websites und Anfängerarbeiten, kommerzielle und akademische Informationen, verschiedene Kulturen, Sprachen und so weiter. Informationen unterscheiden sich in mehreren Aspekten, zum Beispiel darin, ob der Empfänger in erster Linie ein Mensch oder ein Computer sein soll. Am einen Ende der Skala haben wir alles Mögliche vom Werbespot bis zum Liebesgedicht; am anderen Ende stehen Datenbanken, Programme und automatisch übermittelte Messdaten. Bislang transportiert das Web vor allem menschenlesbare Informationen, und automatisch verarbeitbare Daten wurden vernachlässigt. Das semantische Netz verspricht hier Abhilfe.
Wie das Internet selbst wird es so dezentralisiert wie möglich sein – und damit ebenso erregend und unvorhersagbar. Vorzüge, die heute noch niemand erahnen kann, werden sich herausstellen; aber die Dezentralisierung hat einen Preis. Im heutigen Web ist es die berüchtigte Fehlermeldung "Error 404: Not Found". Wenn jeder das Seinige zum großen Netz beitragen darf, ohne kontrolliert zu werden, muss man Defekte in Kauf nehmen.
Damit das semantische Netz funktioniert, müssen Computer Zugriff auf strukturierte Informationen haben und über Schlussregeln verfügen, mit denen sie diese Informationen automatisch verknüpfen können. Forscher auf dem Gebiet der Künstlichen Intelligenz befassen sich seit langem mit diesem Problemkreis – weit länger, als es das Web gibt. Das Forschungsfeld der "Wissensrepräsentation" (knowledge representation) ist gegenwärtig in einem ähnlichen Stadium wie vor den Zeiten des Webs das Prinzip Hypertext (eine Datei enthält Verweise auf andere Stellen innerhalb derselben Datei): offenbar eine gute Idee, die auch schon an ein paar eindrucksvollen Beispielen demonstriert worden ist, aber die Welt noch nicht verändert hat. Das Potenzial ist gewaltig; aber zu seiner Entfaltung muss die Idee in ein globales System eingebunden werden.
Heutige Systeme zur Wissensdarstellung ("Expertensysteme") sind zentralisiert und zwingen jeden Benutzer zur Verwendung ihrer Definitionen für Allerweltsbegriffe wie "Eltern" oder "Fahrzeug". Zentrale Kontrolle behindert jedoch Innovation, und je mehr ein solches System an Größe und Anwendungsbereich wächst, desto aufwändiger wird seine Verwaltung.
Darüber hinaus lassen solche Systeme nur Fragen aus einem sorgfältig und eng umgrenzten Bereich zu, damit die Antworten des Computers hinreichend zuverlässig ausfallen – wenn er überhaupt antwortet. Das Problem erinnert an den berüchtigten Satz von Gödel: Jedes System, das komplex genug ist, um von Nutzen zu sein, lässt auch Fragen zu, die es nicht beantworten kann – komplizierte Versionen des allgemein bekannten Paradoxes "Dieser Satz ist falsch". Zur Vermeidung solcher Probleme pflegen herkömmliche Expertensysteme ihre eigenen, höchst spezialisierten Regelwerke auf ihre Daten anzuwenden. Ein Genealogiesystem, das mit einer Datenbank von Stammbäumen arbeitet, wird etwa die Regel "Die Gattin eines Onkels ist eine Tante" enthalten. Aber die Formate, in denen diese Regeln niedergelegt werden, sind so uneinheitlich, dass sie im Allgemeinen nicht auf ein anderes System übertragbar sind – selbst wenn die Übertragung der Daten gelingt.
Universalität muss erhalten bleiben
Dagegen nehmen die Verfechter des semantischen Netzes Paradoxa und unbeantwortbare Fragen als Preis der Universalität in Kauf. Für unsere Schlussregeln stellen wir eine Fülle an Ausdrucksmöglichkeiten bereit, damit ein Web-Agent entsprechend vielfältige und weitgehende Schlüsse ziehen kann.
Diese Philosophie ist an die des gewöhnlichen Webs angelehnt. In seinem Frühstadium wiesen Skeptiker darauf hin, dass es unter keinen Umständen eine wohlgeordnete Bibliothek sein würde, da man ohne Zentralkatalog und Suchbaum niemals mit Sicherheit alles würde finden können. Sie hatten Recht. Die Ausdrucksmöglichkeiten des Webs machten jedoch ungeheure Mengen von Informationen verfügbar, und Suchmaschinen (vor zehn Jahren noch so gut wie undenkbar) kommen in ihrer Leistung dem erträumten Zentralkatalog bemerkenswert nahe.
Die Kunst besteht also darin, eine Sprache bereitzustellen, die sowohl Daten als auch Schlussregeln ausdrückt und in die man Daten und Schlussregeln jedes Expertensystems übersetzen und damit ins Netz transportieren kann.
Der erste Schritt zu diesem Ziel besteht darin, das Web mit Logik auszustatten – einem Werkzeug zur Anwendung von Regeln, das Schlüsse ziehen, Entscheidungen treffen und Fragen beantworten kann. Hinzu kommen etliche mathematische und technische Probleme. Die Logik muss hinreichend reichhaltig sein, um komplizierte Sachverhalte auszudrücken, aber nicht so reichhaltig, dass ein Agent sich – möglicherweise durch eine böswillig formulierte Frage – in einem Paradox verfängt. Glücklicherweise ist die große Mehrzahl der auszudrückenden Informationen von der Machart "Ein Käfer ist ein Insekt", was in existierenden Programmiersprachen – mit geringen Erweiterungen – leicht formulierbar ist.
Zwei wichtige Rahmenwerke für die Entwicklung des semantischen Netzes gibt es bereits: die erweiterbare Markup-Sprache XML und das Ressourcenbeschreibungssystem RDF (siehe Glossar). Mit XML kann jeder seine Website mit selbst definierten, unsichtbaren, aber maschinenlesbaren Etiketten (tags) anreichern. Programme können dadurch anspruchsvolle Aufgaben lösen: Wenn ein Tag namens <PLZ> die Postleitzahl innerhalb einer Adresse kennzeichnet, kann ein Programm auf wenige Kilometer genau ansagen, wie weit es bis zum Inhaber der Adresse ist. Das hilft allerdings nur dann, wenn der Programmierer weiß, wofür <PLZ> steht. XML strukturiert Websites, sagt aber nichts darüber aus, was die Struktur bedeutet (Spektrum der Wissenschaft 7/1999, S. 74).
Diese Bedeutung wird durch RDF ausgedrückt. Ein typischer RDF-Ausdruck besteht aus drei Gliedern, ähnlich wie Subjekt, Prädikat und Objekt eines einfachen Satzes. Jedes Glied kann seinerseits unter Verwendung von XML-Tags geschrieben werden. Ein solcher Satz drückt aus, dass ein Subjekt (eine Person, eine Website und so weiter) in einer bestimmten Relation ("ist Schwester von", "ist Autor von") zu einem Objekt steht (einer anderen Person, Website und so weiter). Es stellt sich heraus, dass mit dieser Struktur der größte Teil der vom Computer zu verarbeitenden Informationen zwanglos zu beschreiben ist. Subjekt und Objekt sind im einfachsten Falle Web-Adressen (uniform resource locators, URLs), das heißt, der Gegenstand einer Aussage wird durch die Stelle gekennzeichnet, wo er zu finden ist, und im allgemeinen Falle formalisierte Beschreibungen (uniform resource identifiers, URIs). Der häufigste Spezialfall eines URI ist ein URL.
Die Prädikate (Relationen) sind ebenfalls durch URIs gekennzeichnet, sodass jeder durch die Definition eines neuen URI irgendwo im Web ein neues Verb, das heißt eine neue Relation, definieren kann.
In der menschlichen Sprache sind, im Gegensatz zu Computersprachen, leichte Bedeutungsverschiebungen möglich und kommen ständig vor. Stellen Sie sich vor, ich beauftrage einen Spaßmacherservice, meinen Kunden zu ihrem Geburtstag durch einen Clown Luftballons zu überbringen. Der Service übernimmt die Adressen meiner Kunden von meiner Datei in seine, ohne sich bewusst zu machen, dass darunter zahlreiche Postfächer sind – da, wo man halt die Rechnung hinschickt. Die Clowns werden also statt meiner Kunden Postbeamte belustigen – auch nicht schlecht, aber nicht ganz im Sinne des Auftraggebers.
Die Lösung des Problems besteht darin, für verschiedene Bedeutungen desselben Wortes verschiedene URIs zu verwenden. So können Postanschriften von Wohnadressen unterschieden werden und beide wiederum von einer Speicheradresse.
Die RDF-Tripel (die dreigliedrigen Ausdrücke aus Subjekt, Prädikat und Objekt) knüpfen ein Netz von Informtionen über miteinander verwandte Begriffe. Da RDF diese Informationen mit URIs codiert, bleiben sie nicht bloße Wörter, sondern sind Begriffe mit konkreten, leicht zu findenden Definitionen. Stellen Sie sich etwa vor, wir hätten Zugriff auf eine Datei mit Informationen über Personen, darunter deren Adressen. Suchen wir nach Leuten, die in einem bestimmten Postleitzahlenbereich wohnen, müssen wir wissen, welches Feld der Datenbank den Namen und welches die Postleitzahl enthält. Diese Information liefert ein RDF-Tripel der Form "(das 5. Feld der Datenbank A) (ist ein Feld des Typs) (Postleitzahl)", wobei an Stelle jedes Klammerausdrucks ein URI steht.
Ontologien
Das allerdings reicht noch nicht aus. Wenn jeder Autor einer Datenbank seine Felder frei definieren darf – auch wenn er die Definitionen im Web veröffent-licht –, dann werden unweigerlich verschiedene Namen für denselben Begriff, etwa Postleitzahl, verwendet werden. Ein Programm, das Informationen aus beiden Datenbanken verknüpfen soll, muss wissen, dass beide Namen die gleiche Bedeutung haben. Idealerweise würde es solche identischen Bedeutungen in allen Datenbanken, mit denen es arbeitet, auf irgendeine Weise erkennen.
Die Lösung dieses Problems besteht in der dritten Komponente des seman-tischen Netzes: einer Bibliothek von speziellen Informationen namens Ontologien. In der Philosophie ist eine Ontologie eine Theorie vom Wesen der Existenz; die Ontologie als akademische Disziplin studiert Fragen der Art, welche Typen von Dingen überhaupt existieren. Die Vertreter der Forschungsrichtung Künstliche Intelligenz haben den Terminus für sich vereinnahmt und verwenden ihn für Dokumente oder Dateien, die Relationen zwischen Dingen formal definieren. Eine typische Web-Ontologie besteht aus einer Taxonomie (Klassifizierung) und einer Liste von Schlussregeln.
Die Taxonomie definiert Objektklassen und zwischen ihnen bestehende Relationen. So würde eine Taxonomie eine Adresse als eine spezielle Art von Ortsangabe definieren, dabei festlegen, dass eine Postleitzahl sich nur auf eine Ortsangabe beziehen kann, und so weiter. Formal gesprochen: Die Klasse der Adressen ist eine Teilklasse der Klasse der Ortsangaben und "erbt" damit alle Eigenschaften der übergeordneten Klasse: Eine Eigenschaft, die für Ortsangaben im Allgemeinen gilt, trifft auch auf Adressen im Besonderen zu, und ein Programm kann das mit Hilfe der Taxonomie erschließen.
Allgemein sind Klassen, Unterklassen und Relationen zwischen ihnen mächtige Mittel für das automatisierte logische Schließen. Wenn etwa Postleitzahlen vom Typ Stadt sind und Städte generell Websites besitzen, so kann man von der Website einer Postleitzahl sprechen und unsere Agentensoftware danach suchen lassen, obgleich es keine Datenbank gibt, die Postleitzahlen und die Websites der zugehörigen Städte miteinander verknüpft.
Schlussregeln verleihen Ontologien noch mehr Wirkung. Eine Ontologie kann etwa die Regel ausdrücken "Wenn eine Postleitzahl einen Ländercode enthält, und eine Adresse enthält diese Postleitzahl, dann ist diese Adresse im entsprechenden Land." Ein Programm könnte dann aus der Postleitzahl D-66123 ohne weitere Informationen deduzieren, dass sich das Max-Planck-Institut für Informatik in Deutschland befindet, und so das richtige Anschriftenformat auswählen. Der Computer "versteht" natürlich nichts von alldem im wörtlichen Sinne, kann aber mit den Begriffen auf eine für den Nutzer hilfreiche und einleuchtende Weise umgehen.
Ontologische Websites versprechen unter anderem, Lösungen für Terminologieprobleme bereitzustellen. Wenn die Bedeutung eines Kennworts oder XML-Codes in einer Website durch Verweis auf eine Ontologie definiert wird, kann (und wird) es vorkommen, dass ich auf eine Ontologie verweise, die "zip code" als Adressbestandteil erklärt, während Ihre Lieblings-Ontologie an dieser Stelle "Postleitzahl" aufführt. Aber es kann (und wird) dann irgendwo im Web wenigstens eine Ontologie geben, die erklärt, dass beides dasselbe ist.
Mein Problem, den Kunden die Luftballons nach Hause statt ins Postfach zu bringen, ist zumindest zur Hälfte gelöst, wenn beide Datenbanken mit präzisen Definitionen von Adresse arbeiten. Wenn ein Programm verschiedene URIs für Adressen verschiedener Art vorfindet, wird es beide jedenfalls nicht miteinander verwechseln. Stattdessen muss es jetzt erst herausfinden, dass sie etwas miteinander zu tun haben! Dafür gäbe es dann einen Service, der Postanschriften (Adressen der ersten Art) in Wohnanschriften (Adressen der zweiten Art) umsetzt, indem es Postfächer und andere unzulässige Bestandteile erkennt und durch brauchbare ersetzt. Die von Ontologien bereitgestellte Struktur und Semantik macht das Anbieten eines solchen Services einfach und seinen Gebrauch vollkommen durchschaubar.
Das semantische Netz findet alte Bekannte wieder
Ontologien können das Web in vielerlei Hinsicht nützlicher machen. Bereits in ihrer einfachsten Form erhöhen sie die Trefferrate von Recherchen, indem das Suchprogramm einen genau definierten Begriff statt möglicherweise zweideutiger Suchwörter verwendet. Verbesserte Programme werden mit Hilfe von Ontologien noch gezielter Informationen aus einer Website ziehen, indem sie Schlussregeln und Informationen aus externen Wissensspeichern einsetzen. Ein Beispiel einer solchen Webseite ist http://www.cs.umd.edu/~hendler. Mit einem der heute üblichen Webbrowser werden Sie eine normale Website mit dem Titel "Dr. James A. Hendler" vorfinden. Sie selbst werden leicht den Link zu einem kurzen Lebenslauf finden, der angibt, dass Hendler an der Brown-Universität promoviert hat. Ein Computerprogramm müsste dagegen ziemlich komplex sein, um aus dem englischen Wortlaut zu er-schließen, dass diese Seite einen Lebenslauf enthält.
Diese Website verweist jedoch auf eine Ontologie, die Informationen über Informatik-Fakultäten enthält, zum Beispiel allgemeine Weisheiten wie, dass Professoren an Universitäten arbeiten und in der Regel promoviert haben. Weitere Kennzeichen (markups) in der Website (die von typischen Webbrowsern nicht angezeigt werden) zeigen mit durch die Ontologie definierten Kennwörtern an, dass Hendler an einer Institution promovierte, die durch den URI http://www.brown.edu – die Webadresse der Brown-Universität – gekennzeichnet ist. Ebenso ist für Computer auffindbar verzeichnet, an welchen Forschungsprojekten Hendler arbeitet, welches seine E-mail-Adresse ist und so weiter. Anfragen wie etwa "Wo hat Hendler promoviert?", für die gegenwärtig noch ein Mensch alle von der Suchmaschine aufgeführten Websites durchsehen muss, würden dann automatisch beantwortet werden.
Die Markups erleichtern darüber hinaus die Bewältigung schwierigerer Aufgaben, etwa Daten aus vielen verschiedenen Websites zu einem konkreten Zweck zusammenzuführen. Nehmen Sie einmal an, Sie wollten eine gewisse Frau Cook finden, die Sie letztes Jahr auf der Industriemesse getroffen haben. Den Vornamen wissen Sie nicht mehr, wohl aber, dass sie für einen Ihrer Kunden arbeitet und dass ihr Sohn an der Avondale University studiert. Ein intelligentes Suchprogramm kann die Websites aller Personen namens "Cook" durchgehen (ohne sich von englischsprachigen Websites über Köche, Kochen, die Cook-Inseln und so weiter ablenken zu lassen), diejenigen finden, die für ein Unternehmen in Ihrer Kundenliste arbeiten, und dann Links zu deren Kindern folgen, um herauszufinden, welche an der richtigen Universität studieren. Die vielen Meldungen über den ehemaligen britischen Außenminister muss kein Mensch mehr durchgehen.
Das semantische Netz wird seine Möglichkeiten erst richtig entfalten, wenn viele Programme geschrieben werden, die Informationen aus dem gesamten Web sammeln, verarbeiten und mit anderen Programmen austauschen. Die Effektivität solcher Software-Agenten wird exponentiell mit der Zahl maschinenlesbarer Websites und automatischer Informationsdienste (einschließlich anderer Agenten) anwachsen. Das semantische Netz unterstützt diese Synergieeffekte, da in ihm ein Agent mit einem beliebigen anderen schon dann Daten austauschen kann, wenn er deren Bedeutung erfasst. Es ist nicht erforderlich, dass einer der Agenten explizit auf Zusammenarbeit mit dem anderen programmiert ist.
Beweisfähige Agenten
Ein wichtiger Teil der Agententätigkeit wird die Kommunikation von "Beweisen" sein, die in der Standardsprache des semantischen Netzes formuliert sind. Nehmen wir an, ein Online-Service findet Frau Cooks Adresse, und zu Ihrer großen Überraschung ist sie in Johannesburg (Südafrika). Das kommt Ihnen merkwürdig vor; also verlangt Ihr Computer vom Service einen Beweis für diese Behauptung, woraufhin dieser prompt in der Universalsprache des semantischen Netzes die Schlussfolgerungen aufführt, die ihn zu seiner Antwort veranlasst haben. Ein Logikprogramm auf Ihrem Computer bestätigt, dass diese Frau Cook tatsächlich diejenige ist, nach der Sie suchen, und es kann Ihnen die relevanten Websites zeigen, falls Sie noch immer Zweifel haben. Noch sind wir weit davon entfernt, dieses Potenzial auszuschöpfen; aber es gibt bereits Programme, die Beweise auf diese Art austauschen können, in der gegenwärtigen, vorläufigen Version der Universalsprache.
Ein besonders wichtiger "Beweis" ist die digitale Unterschrift, ein verschlüsselter Datenblock, der Computern und Agenten die Gewissheit verschafft, dass eine bestimmte Information aus einer zuverlässigen Quelle stammt. Schließlich möchten Sie sicher sein, dass eine Rechnung, die zu Ihrem Kontoführungsprogramm gesendet wurde, wirklich von dem Onlinehändler stammt, dem Sie etwas schuldig sind, und nicht vom technisch begabten Sohn Ihres Nachbarn. Agenten sollten nichts, was sie im Web hören, für bare Münze nehmen, bis sie sich von der Echtheit der Quellen überzeugt haben. (Wie schön wäre es, wenn bereits heute mehr Menschen diesem Rat folgten!)
Es gibt bereits Websites, die ohne irgendwelche Semantik auf Anforderung automatisch bestimmte Funktionen ausführen, wie Auskunfterteilung, Ticketbestellung und Ähnliches. Agenten und andere Programme haben aber keinerlei Anhaltspunkte, welcher Service welche Funktionen ausführt. Dienste und Agenten müssten ihre Angebote in einer Art Web-Branchentelefonbuch veröffentlichen. Dazu muss es eine gemeinsame Sprache geben, die Agenten den Zweck und die Funktionsweise eines Webdienstes erkennen lässt.
Einige primitive Service-Such-Programme sind heute schon verfügbar, wie etwa "Universal Plug and Play" von Microsoft, das verschiedene Gerätetypen kompatibel macht, und "Jini" von Sun Microsystems, das Dienste zusammenschalten soll. Diese Ansätze greifen jedoch das Problem auf formale – nicht-semantische – Weise an und hängen davon ab, dass für das, was da zusammengebracht werden soll, einheitliche, standardisierte Funktionsbeschreibungen vorliegen. Standardisierung jedoch funktioniert nur bis zu einem bestimmten Punkt, da wir unmöglich alle zukünftigen Bedürfnisse vorhersehen können.
Das semantische Netz ist hier flexibler. Konsumenten- und Anbieteragenten können sich durch Rückgriff auf Ontologien verständigen, da diese das Vokabular für den Informationsaustausch zur Verfügung stellen. Agenten können sich sogar neue Denkweisen zulegen, wenn sie auf neue Ontologien stoßen. Semantik macht auch die Inanspruchnahme von Diensten leichter, die für eine Anfrage nicht genau maßgeschneidert sind.
Ein typischer Suchprozess wird aus einer "Wertschöpfungskette" bestehen, in welcher ein Agent Rohinformationen an den nächsten weiterreicht; der schafft dann durch deren Verarbeitung einen Mehrwert, und so weiter, bis die Kette den Endnutzer erreicht. Wohlgemerkt: Das semantische Netz allein wird komplizierte Wertschöpfungsketten nicht automatisch auf Anforderung knüpfen können. Manche Agenten werden darüber hinaus Techniken der Künstlichen Intelligenz einsetzen. Immerhin wird das semantische Netz bessere Grundlagen und Rahmenbedingungen für diese Techniken bereitstellen.
Die Kombination all dieser Funktionen ermöglicht Leistungen von der Art, wie sie im einführenden Beispiel illustriert wurden. Peters und Lucys Agenten würden Aufgaben an andere Dienste, die sie in einem Anbieterverzeichnis finden, delegieren. Zum Beispiel würden sie einen vertrauenswürdigen Service damit beauftragen, aus einer Liste von Kliniken diejenigen herauszusuchen, die von der Versicherung für die geforderte Behandlung zugelassen sind. Die Klinikliste käme von einer anderen Suchmaschine und so weiter. Im Endeffekt wird eine riesige Menge von (in dieser Form nutzlosen) Daten aus dem gesamten Web so lange gefiltert, bis schließlich nur die wenigen Fakten übrig bleiben, auf die es für Peter und Lucy ankommt: eine Liste von Terminen, die mit ihrem Kalender vereinbar sind.
Im nächsten Schritt wird das semantische Netz die Schranken der virtuellen Welt durchbrechen und in die Realität eintreten. URIs können auf alles Mögliche verweisen, darunter auch physikalische Geräte. Daher kann die RDF-Sprache auch ein Handy oder ein Fernsehgerät beschreiben. Solche Geräte können dann wie Software-Agenten ihre Funktionalität – was sie tun und wie sie zu bedienen sind – anpreisen. Ein derartiges semantisches Konzept ist weit vielseitiger als hardwarenahe Konzepte wie "Universal Plug and Play" und eröffnet eine ganz neue Welt von Möglichkeiten.
So erfordert das, was man heute Heimautomatisierung nennt, eine sehr mühsame Konfiguration zur Abstimmung der einzelnen Geräte. Semantische Beschreibungen ihrer Funktion und ihres Zweckes werden eine solche Automatisierung weitaus einfacher machen. Ein einfaches Beispiel ist die Lautstärkeregelung beim Abnehmen des Telefons. Statt jedes Gerät einzeln zu programmieren, könnte man es so einrichten, dass jedes lokale Gerät mit Lautstärkeregler – Fernsehen, Radio, ja selbst der Walkman, den der Sohn gerade heute zufällig eingeschleppt und liegen gelassen hat – sich automatisch angesprochen fühlt.
Wissensevolution
Die ersten konkreten Schritte in diese Richtung sind bereits getan. Der Schwerpunkt liegt dabei auf der Entwicklung eines Standards für die Beschreibung von Geräteeigenschaften (wie etwa Bildschirmgrößen) und Nutzervorlieben. Er beruht auf RDF und heißt Composite Capability/Preference Profile (CC/PP). In der Sprache dieses Standards können Handys und andere Geräte, die eigentlich nicht an das Web angeschlossen sind, ihre Eigenschaften ausdrücken, sodass sie unmittelbar aus dem Web heraus ansprechbar sind – und sei es mit der Anweisung "Stell dich leise". Später, wenn wir die Sprache auf logisches Schließen und den Umgang mit Ontologien erweitert haben, können Geräte automatisch nach anderen Diensten suchen und diese in Anspruch nehmen, um ihre eigenen Fähigkeiten zu erweitern. Dann fragt Ihr Mikrowellenherd beim Hersteller eines Gefriergerichtes die optimale Zubereitungsweise ab!
Das semantische Netz ist jedoch mehr als nur ein Werkzeug zur Lösung all dieser Aufgaben. Richtig konstruiert, kann es die Evolution menschlichen Wissens insgesamt beschleunigen.
Alle menschlichen Projekte stehen in einem Spannungsfeld zwischen der Effektivität kleiner Gruppen und der vielen Information draußen in der großen Welt. Eine kleine Gruppe kann schnell und effektiv neue Ideen entwickeln, droht aber bei mangelhaftem Austausch den Kontakt zur Außenwelt zu verlieren. Der Austausch innerhalb großer Gruppen hingegen geht quälend langsam vonstatten und erfordert hohen Kommunikationsaufwand. Die Welt arbeitet auf einer Skala zwischen diesen Extremen, wobei man gewöhnlich klein anfängt – mit der Idee eines Einzelnen – und sich zu einem größeren Publikum hocharbeitet.
Dabei kommt es entscheidend darauf an, dass zwei Gruppen, die vielleicht ähnliche Konzepte entwickelt haben, zu einer gemeinsamen Sprache oder zumindest zu einer Umsetzung zwischen ihren Begriffen finden. Wie ein finnisch-englisches Wörterbuch oder eine Umrechnungstabelle für Maße und Gewichte gestatten solche Relationen Kommunikation und Zusammenarbeit, selbst wenn die beiden Gruppen eine gemeinsame sprachliche Basis (noch) nicht gefunden haben.
Das semantische Netz gestattet die Definition neuer Begriffe mit minimalem Aufwand: Man schreibe einen URI. Seine einheitliche logische Sprache wird die Einbeziehung dieser Begriffe ins weitere Web gestatten. Die semantische Struk-tur eröffnet menschliches Wissen und menschliche Arbeitsweisen der Analyse durch Software-Agenten, sodass eine neue Klasse von Werkzeugen entsteht, mit denen wir miteinander leben, arbeiten und lernen können.
Literaturhinweis
Weaving the Web: The Original Design and Ultimate destiny of the World Wide Web by Its Inventor. Von Tim Berners-Lee. Harper, San Francisco 1999.
Glossar
Agent: ein Programm, welches ohne ständige Überwachung und Kontrolle durch den Menschen arbeitet, um spezifische Aufgaben zu erledigen. Gewöhnlich sammeln, filtern und verarbeiten Agenten Informationen, die sie im Web finden, häufig mit Hilfe anderer Agenten.
HTML (HyperText Markup Language): In dieser Sprache werden Format, Links und andere Merkmale einer Website codiert. Dies geschieht mit einer Reihe von Kennwörtern (tags), deren Bedeutung vom WWW-Konsortium weltweit verbindlich festgelegt wurde.
XML (eXtensible Markup Language): eine Sprache mit der gleichen Grundstruktur wie HTML, in der jedoch der Nutzer seine eigenen Tags definieren darf. XML enthält keine Automatik, mit der die Bedeutung der neuen Tags von Nutzer zu Nutzer vermittelt werden könnte.
URL (uniform resource locator): der Code, in dem die Internet-Adresse einer Web-site ausgedrückt wird. Beispiel: http://www.wissenschaft-online.de/spektrum
URI (uniform resource identifier): Oberbegriff zu URL. Ein URI definiert oder beschreibt eine "Quelle" (resource) von Informationen (in der Regel eine Website), nicht notwendig (aber meistens) über ihre Adresse. Für Zwecke des semantischen Netzes wird der Begriff "resource" bis zur Unkenntlichkeit erweitert auf alle Gegenstände (Dinge, Personen, Orte, …), von denen im Rahmen von RDF (siehe unten) die Rede sein kann.
RDF (resource description framework): ein Code zur Definition von Informationen im Web, der die Bedeutung von Begriffen so darstellt, dass ein Computer sie un-mittelbar verarbeiten kann. RDF verwendet (zum Beispiel) die Syntax von XML und drückt Dinge, Konzepte, Eigenschaften und Relationen mit Hilfe ihrer URIs aus.
Ontologien: In einer Sprache (wie RDF) verfasste Aussagen, die Beziehungen zwischen Konzepten und logische Schlussregeln für sie festlegen. Computer werden die Bedeutung semantischer Daten im Web "verstehen", indem sie Links zu speziellen Ontologien folgen.
Servicesuche (service discovery): das Finden eines Agenten oder automatischen Webdienstes, welcher dem anstehenden Problem entspricht. Mit Semantik werden Agenten einander sagen können, welche Funktion sie gerade ausführen und welche Daten sie dazu benötigen.
Wie hieß die Frau bloß mit Vornamen?
Wenn die semantische Ausstattung von Websites erst allgemein üblich ist, werden komplizierte, automatisierte Suchakte möglich. Nehmen wir an, Sie haben nur bruchstückhafte Erinnerungen an eine Person: Ihr Nachname ist "Cook", sie arbeitet für eine Firma auf Ihrer Kundenliste, und sie hat einen Sohn, der an der Avondale University studiert. Keine Website für sich enthält die richtige Kombination dieser Informationen; dank der Semantik kann das Suchprogramm jedoch die Inhalte verschiedener Websites in Beziehung zueinander setzen, Relationen wie "Mike Cook ist Kind von Wendy Cook" verstehen und aus alldem die richtigen Schlüsse zu ziehen.
Was wird die killer application?
Wenn wir Vorträge über das semantische Netz halten, werden wir oft nach der "killer application" gefragt: Welche Anwendung wird eine so große Anzahl von Nutzern neugierig machen, dass sie den Durchbruch bringen wird? So wie das Transistorradio für den Transistor oder das Handy für den Mobilfunk?
Was also wird den Durchbruch für das semantische Netz bringen? "Das semantische Netz."
Nach dieser Antwort pflegt man uns für leicht verrückt zu halten, also antworten wir mit einer Gegenfrage: "Was verhalf dem World Wide Web zum Durchbruch?" Sprachlosigkeit; also antworten wir selbst: "Das Web verhalf dem Internet zum Durchbruch, und das semantische Netz wird von der gleichen Größenordnung sein."
Die Natur des semantischen Netzes ist so vielgestaltig, dass es die eine killer application nicht geben wird. Vielmehr wird das semantische Netz einmal Aufgaben lösen, von denen wir heute noch nicht einmal träumen.
Immerhin können wir uns ein paar – nicht gerade revolutionäre, aber hilfreiche – Anwendungen vorstellen. Online-Kataloge mit Semantik werden sowohl Käufern als auch Händlern Vorteile bieten. Elektronische Geschäfte werden von kleineren Unternehmen leichter, sicherer, und unabhängiger abgewickelt werden können.
Nehmen wir an, Sie buchen eine längere Reise. Fluglinien, Hotels, Fußballstadien und so weiter bestätigen Ihre Reservierungen. Ihre semantische Software lädt die Zeiten in Ihren Terminplaner und alle Rechnungen in Ihr Kontoprogramm, und zwar ohne großen Austausch von E-Mails und ohne dass Sie und die zahlreichen Unternehmen, deren Dienste Sie in Anspruch nehmen, ihre Software-Standards aneinander hätten anpassen müssen
Aus: Spektrum der Wissenschaft 8 / 2001, Seite 42
© Spektrum der Wissenschaft Verlagsgesellschaft mbH
Schreiben Sie uns!
Beitrag schreiben