XML Topic Maps (XTM) Modellierung, Beratung, Entwicklung

Die XML Topic Maps (XTM) der Standardorganisation ISO sind einer der beiden ernst zu nehmenden und in de Praxis eingesetzten Techniken, um Ontologien in XML abzubilden. Sie stellen die zu erst entwickelte Technologie zur Ontologie-Modellierung und -Abbildung dar, die vom W3C durch die OWL (Ontology Web Language) umgesetzt wurde. XTM bietet syntaktische und methodische Umsetzungen für ontologische Datenmodellierung und damit das moderne Fundament für die Softwareentwicklung für Expertensysteme, Wissenssysteme, Corporate Knowledge-Systeme etc. an.

Struktur von XTM

ontologieAls Alternative zu den vorgestellten Techniken des W3C und als Beispiel für einen bereits fertig gestellten Standard zur – im Vergleich zu RDF – erweiterten Ontologie-Darstellung, soll der ISO-Standard für die XML Topic Maps (ISO/IEC 13250 Topic Maps) ebenfalls behandelt werden. Zwar wird er, wie gerade gesagt, eben nicht vom W3C gepflegt, sondern von der ISO-Organisation, doch soll er aus folgenden Gründen als Alternative ebenfalls betrachtet werden: Es handelt sich ebenfalls nicht um ein herstellerspezifisches Produkt oder eine spezielle Technologie, welche ausschließlich mit entsprechender Lizenzierung oder unter Verwendung spezieller Werkzeuge eingesetzt werden kann, sondern um einen öffentlichen Standard, der frei verwendet werden kann. Zusätzlich basiert er – eine Grundvoraussetzung für die Betrachtung – auf XML-Strukturen bzw. lässt sich in einem XML-Dokument mit Daten ebenso wie in einem eigenen Dokument unterbringen. Dies erlaubt eine Verarbeitung der zugehörigen Daten mit den bekannten Transformationstechniken wie z.B. XSLT. Und schließlich handelt es sich um eine sehr ausgefeilte Möglichkeit, um Datenbeziehungen und damit auch semantische Netze abzubilden, sodass es eine ernstzunehmende Alternative zu anderen Techniken darstellt. Dies gilt insbesondere für OWL, das als W3C-Standard noch gar nicht verabschiedet ist.

Für die Umsetzung in XML liegt zusätzlich eine Implementierung bzw. eine Regelabbildung der standardisierten Strukturen von XTM auch als DTD sowie in XML Schema vor. Wiederum sind also diese basalen Standards notwendig, um eine solche Technologie auch in einem konkreten Einsatz zu verwenden. Auch dies zeigt eine enge Beziehung zwischen diesem Standard und den Standards des W3C.

Grundprinzipien von XTM

Da die XTM innerhalb der XML-Hemisphäre entwickelt wurden und sich eng an die vorhandenen Standards des W3C wie z.B. DTD; XML Schema, XBase oder XLink anlehnen und selbst auch wieder XML-Strukturen ergeben, weisen sie ähnliche Zielsetzungen auf wie die gerade genannten Standards. Wichtig ist eine Interoperabilität zwischen den einzelnen Standards, um eine unabhängige und leicht zu verstehenden (menschen-lesbare) Abbildung von semantischen Informationen in Form von Themen und Themenbezügen bilden zu können. Dies erfordert eine minimale Verwendung von optionalen Elementen, eine klare Struktur, eine – wie schon erwähnt – hohe Lesbarkeit und eine überaus einfache Verwendung. Diese Verwendung soll selbstverständlich nicht die Verwendung erschweren, sondern vielmehr die Einsatzmöglichkeiten von XML Topic Maps befördern.

Der Standard setzt also nicht darauf, eigene Strukturen für Techniken zu entwickeln, die bereits durch das W3C entwickelt wurden, sondern verwendet gerade seine Techniken, um die Inhalte von semantischen Informationen abzubilden. Dies erleichtert das Verständnis und gleichzeitig die Ausbreitung von XTM, weil bereits eingeführte Standards weiter verwendet werden.

Syntaxübersicht von XML Topic Maps

ontologieDieser Abschnitt möchte die grundlegenden Elemente und damit die fundamentalen Sprachbereiche der XTM-Syntax vorstellen. Deutlich wird dabei, wie eine Ontologie als Topic Map aufgebaut wird und welche Modellierungsaspekte zu berücksichtigen sind.

Der ISO-Standard zu den Topic Maps besteht aus einer Spezifikation der notwendigen Strukturen, um eine Themenkarte abzubilden. Dabei wird ausdrücklich nur im Anhang die ausführliche Beschreibung einer Umsetzung in XML mit Hilfe einer DTD gegeben. Der in diesem Abschnitt als Darstellungsgrundlage verwendete Standard baut auf diesem Standard auf und fokussiert die Umsetzung in XML genauer. Daher besteht auch sprachlich ein Unterschied in Form von „Topic Maps“ als Titel für den ISO-Standard und in Form von „XML Topic Maps“ bzw. im Akronym XTM für die ausschließlich in XML aufbereiteten Themenkarten. Der ISO-Standard dagegen beschreibt die Grundlagen und Bedingungen von Themenkarten so allgemein, dass auch andere Syntaxformen gültige Themenkarten im ISO-Verständnis erzeugen können. Die Syntax von XTM besteht aus wenigen Elementen bzw. aus Konzepten, die direkt aus einem semantischen Netz übernommen wurden und in XML-Strukturen abgebildet wurden. Zu diesen Strukturen zählen die folgenden:

Topic

Unter einem Topic versteht man einen allgemeinen Oberbegriff im Sinne eines Themas, welches durch die nachfolgenden Konzepte in Form von Instanzen abgebildet wird. Ein XML-Instanzdokument, welches mehrere Themen behandelt, kann auch durch ein entsprechendes XTM-Dokument beschrieben werden, welches die verschiedenen Themen im Sinne eines Topics aufnimmt. Dabei stellt jedes Thema ein eigenes Topic dar [Vgl. TopicMaps.Org, XML Topic Maps, 2001 Abschnitt 2.2.1 unter www.topicmaps.org/xtm/1.0/.

  • Subject stellt etwas dar, das direkt beschrieben werden kann oder greifbar gemacht werden kann. Es entspricht in einem RDF-Graphen dem Subjekt einer Aussage und stellt dabei den linken Teil eines 3-Tupels eines semantischen Netzwerkes dar.
  • Reification entspricht einer Behandlung eines Themas, wobei ein Subjekt diesem Thema in irgendeiner Form (z.B. über eine Beziehungsart) zugewiesen wird. Dabei handelt es sich insoweit um eine Reifikation, als dass über das Subjekt eine Aussage gemacht wird.
  • Subject Identity erlaubt, ein Metakonzept zu formulieren, welches ein gemeinsames Oberthema für ein Thema / Topic zulässt. Dies erfordert eine Verschmelzung beider Themengebiete, stellt aber weiterhin ein getrennte Behandlung der Aussagen dar. Eine solche Subjektidentität lässt sich entweder durch die direkte Ansprache eines Subjekts erzeugen oder durch die Zwischenschaltung eines Subject Indicator, welcher als Metabezugspunkt für solche Konstrukte fungiert.
  • Subject Indicator wird verwendet, um zwei oder mehr Themen ein gemeinsames Subjekt zuzuweisen und dieses Vorgehen für den Leser der XTM und für den verarbeitenden Algorithmus sehr deutlich zu machen. Über einen Subject Indicator lassen sich mehrere Subjekte direkt ansprechen.
  • Topic Characteristic beschreiben die Eigenschaften – bzw. das Prädikat in RDF-Logik – eines Themas in Form einer Rollenzugehörigkeit, eines Namens und/oder eines Auftretens.
  • Scope gibt den Gültigkeitsbereich einer Topic Characteristic an und erlaubt damit die Angabe von Beschränkungen von Themen.

Syntaktisch wird ein Thema mit dem topic-Element ausgezeichnet, auf das dann mit Hilfe des topicRef-Elements und einem XLink verwiesen werden kann. Der Verweis erfolgt dann wiederum u.a. in der Angabe einer Assoziation (Beziehung oder Klassenstrukturangabe) oder in bei der Verschmelzung von Themen über mergeMap (Elternelemente) oder member (Kindelement) sowie der Zusammenfassung von Themen mit Hilfe einer Subjektidentität über subjectIdentity [Vgl. TopicMaps.Org, XML Topic Maps, 2001 Abschnitt 3.2.1 unter www.topicmaps.org/xtm/1.0/. Das topic-Element selbst erlaubt bei seiner Verwendung ebenso die Angabe, zu welcher Subjektidentität es gehört oder ob es eine Instanz von einem anderen Themengebiet darstellt. Es ist direktes Kindelement von topicMap, also dem Wurzelement einer Themenkarte [Vgl. TopicMaps.Org, XML Topic Maps, 2001 Abschnitt 3.6.1 unter www.topicmaps.org/xtm/1.0/.

Name

Ein Thema in Form eines Topics erhält einen Namen, über den es innerhalb seines Gültigkeitsbereichs, welcher über Scope definiert wird, referenziert werden kann. Dabei ist es möglich, einem Thema unterschiedliche viele Namen nach folgendem Muster zu geben [Vgl. TopicMaps.Org, XML Topic Maps, 2001 Abschnitt 2.2.2 unter www.topicmaps.org/xtm/1.0/:

  • Base Name stellt den Namen dar, welcher zunächst verwendet wird und über den ein Thema grundsätzlich angesprochen und auch verarbeitet werden kann.
  • Variant Name stellt eine Reihe von alternativen Namen für ein Thema zu Verfügung.
  • Parameters erlauben die Vorgabe, in welcher Situation, welcher alternative Name zu verwenden ist. Dies erfolgt über die Angabe von Themen, die für die Auswahl eines speziellen alternativen Namens bei der Verarbeitung entscheiden.

Occurrence

Über das Konzept des Auftretens lassen sich Informationen zu Subjekten, die einem Thema zugeordnet werden, angeben und auszeichnen. Diese Auszeichnung erfolgt entweder – ähnlich wie bei der RDF-Syntax – in Form von URIs oder auch in Form von Literalen bzw. Textinformationen aus dem beschriebenen Dokument [Vgl. TopicMaps.Org, XML Topic Maps, 2001 Abschnitt 2.2.3 unter www.topicmaps.org/xtm/1.0/.

Syntaktisch legt man die Auftrittseigenschaften mit dem Element occurence an, welches als Kindelemente alle die Elemente enthält, die das Vorkommen eines Themas beschreiben. Zu ihnen gehören instanceOf, um eine Instanzbeziehung anzugeben, scope, um die Gültigkeit anzugeben, resourceRef oder resourceData, um eine Ressource in Form einer Fundstelle über einen XLink anzugeben, welche das Thema behandelt [Vgl. TopicMaps.Org, XML Topic Maps, 2001 Abschnitt 3.9.1 unter www.topicmaps.org/xtm/1.0/.

Association

Über das Konzept der Assoziation lassen sich die notwendigen Datenbeziehungen angeben, um semantische Informationen auszudrücken. Diese besitzen die notwendigen INSTANZ-VON und TEIL-VON-Eigenschaften. Für die Angabe einer Assoziation verwendet man die nachfolgenden Konzepte [Vgl. TopicMaps.Org, XML Topic Maps, 2001 Abschnitt 2.2.4 unter www.topicmaps.org/xtm/1.0/:

  • Member repräsentiert eine Menge von Themen, welche an einer Assoziation teilnehmen, d.h. zwischen denen eine bestimmte Beziehung besteht.
  • Role dient zur Angabe einer Rolle, welche die Beziehung für die angegebenen Themen beschreibt. Dies ist die semantische Information, in welcher natürlichsprachlichen Beziehung die Daten zueinander stehen.
  • Class-Instance beschreibt eine Assoziation, welche sich durch die INSTANZ-VON-Beziehung auszeichnet. Dazu existieren spezielle vorgegebenen Subjekte wie Instanz, Klasse und Klasseninstanz.
  • Superclass-Subclass beschreibt eine Assoziation für Hierarchiebeziehungen in Form von Oberklasse und Unterklasse oder auch einer TEIL-VON-Beziehung. Dazu existieren hier ebenfalls spezielle vorgegebene Subjekte wie Oberklasse, Unterklasse und Oberklasse-Unterklasse.

Syntaktisch legt man eine Assoziation über das Element association an. Es enthält als Inhaltsmodell die Kindelemente instanceOf als Angabe, zu welcher Klasse die Assoziation gehört, member für die Auflistung der an der Assoziation beteiligten Themen und schließlich scope zur Definition einer möglichen Gültigkeitsbeschränkung der Teilnahme an einer Assoziation. Das scope-Element verweist auf zugehörige Ressourcen oder Themen über topicRef und resourceRef-Elemente, die jeweils XLinks enthalten [Vgl. TopicMaps.Org, XML Topic Maps, 2001 Abschnitt 3.8.1 unter www.topicmaps.org/xtm/1.0/.

Topic Map

Eine Themenkarte repräsentiert schließlich die Gesamtheit von modellierten Informationen zu einem Dokument mit unterschiedlichen Themengebieten. Eine solche Karte lässt sich entweder als eigenes Dokument verwenden oder in eine bestehende XML-Struktur integrieren. Dies entspricht der Verwendung der RDF-Technologie. Dabei sind folgende Konzepte im Einsatz [Vgl. TopicMaps.Org, XML Topic Maps, 2001 Abschnitt 2.2.5 unter www.topicmaps.org/xtm/1.0/:

  • Topic Map Node entspricht den XML-Knoten in einer Themenkarte für die Konstrukte Thema, Assoziation und Gültigkeitsbereich.
  • Consistent Topic Map ist eine Themenkarte, welche ein Thema pro Subjekt verwendet und daher keine Subjektidentitäten oder Mehrfachverweise auf Subjekte zum Einsatz kommen bzw. keine Verschmelzung von Themen notwendig ist oder durchgeführt wird.
  • Topic Map Document repräsentiert ein einzelnes Dokument mit einer oder mehreren Themenkarten, d.h. mit ausgelagerten Modellierungsinhalten, welche dementsprechend beliebig viele XML-Instanzdokumente beschreiben können.
  • XTM document stellt ein Themenkartendokument – wie gerade beschrieben dar -, wobei allerdings nicht nur die allgemeinen Konzepte der Topic Maps eingesetzt werden, sondern speziell auch die XML-Syntax für die Abbildung von Themenkarten zum Einsatz kommen..

Bewertung von XTM

ontologieDie XTM bieten viele Möglichkeiten, Ontologien in XML-Strukturen zu modellieren, aufzubauen und auch auf Gültigkeit zu prüfen, bevor die Verarbeitung dieser Daten einsetzt. Dieser Artikel soll kurz die vorhandene Syntax bewerten und mit anderen Techniken wie RDF Schema oder OWL vegleichen.

Wie bereits an der Syntaxdarstellung und wie auch in mehreren Kommentaren gesagt wurde, besitzt XTM die Fähigkeit, INSTANZ VON und TEIL VON abzubilden. Neben diesen Mindestanforderungen, die bei der Bildung von Beziehung vorhanden sein sollten, besteht zudem die Möglichkeit, eigene Beziehungen zu verwalten bzw. sie auch mit einem speziellen Namen auszuzeichnen. Diese Charakterisierung und Auszeichnung fällt umso mehr ins Gewicht, als dass über diese Eigenschaft XTM entsprechende Abfragen mit z.B. XPath innerhalb von XSLT- bzw. anderen Verarbeitungsprozessen möglich sind. Über eine solche Beziehungsangabe lassen sich sämtliche Verweise in einem Dokument auflösen, die der gleichen Beziehung entsprechen bzw. unter zusätzlicher Verwendung der Standardbeziehungen auch entsprechend hierarchisiert wiedergeben.

Inhaltlich müssen die vorhanden XML-Instanzdokumente weiterhin mit einer Schemasprache wie z.B. XML Schema ausgezeichnet werden, weil die Modellierung der Datenbeziehungen auf einem gültigen Instanzdokument ausgeführt wird und auch nur für dieses Dokument verarbeitet werden kann.

Im direkten Vergleich zu RDF lässt sich feststellen, dass durch die Verwendung von XLink und XBase als Standards für die Angabe von Verweisen wesentlich mehr Komfort in der Gestaltung von solchen Verweisen möglich ist als bei einfachen Webadressen. Dies ist insoweit auch nicht weiter verwunderlich, als dass RDF in erster Linie zur standardisierten und einfachen Auszeichnung von Dokumenten entwickelt wurde, um Metainformationen über Autor, Datum und Inhalt zu erfassen. Der Einsatz für die semantische Modellierung und die Abbildung von Ontologien ist ausschließlich über RDF Schema möglich, weil hier die notwendigen Datenbeziehungen abgebildet werden können. Da aber XTM die erweiterten Links verwendet, sind alle ihre Vorteile wie z.B. Rückbezüge und weitere Informationen zu jedem Link möglich. Dies alles ist bei einem einfachen Hyperlink, der in Form eines Attributswerts auftritt, nicht gegeben, da hier nur die URI als Literal zur Verfügung steht. Bei XLink hingegen besteht der gesamte Link aus mehren einzelnen Elementen, sodass viel mehr Daten erfasst und ausgewertet werden können. Nur ein Teil dieser Daten besteht aus dem URI-Literal, sodass die Informationsfülle und damit auch die Modellierungseigenschaften dieses Konzept viel eher geeignet ist, übe Verweise und Links Beziehungen zwischen Daten abzubilden.

XTM bietet im Vergleich zu RDF Schema wesentlich umfangreichere Möglichkeiten, Ontologien abzubilden. Allerdings ist es kein W3C-Standard und wurde nur als Alternative in die Betrachtung aufgenommen, da die OWL-Syntax noch nicht als Standard vorhanden ist. Es ist mit Sicherheit keine technische Hürde, keinen W3C-Standard zu verwenden. Viele Industriestandards im XML-Bereich werden nicht direkt vom W3C gepflegt und genießen doch eine herausragende Bedeutung. Da jedoch das W3C selbst daran interessiert ist, für seine Aktivitäten rund um das semantische Internet einen eigenen Ontologie-Standard zu entwickeln, ist die Frage, ob eine Verwendung von XTM sich nicht letztendlich als Fehler herausstellt. Ob die – ebenfalls noch zu verabschiedenden – Abfragetechniken des W3C überhaupt geeignet sind, um XTM-Strukturen zu verarbeiten, ist ebenfalls für eine zukunftstaugliche Anwendungsentwicklung zu hinterfragen.