Metadaten
Als Metadaten oder Metainformationen bezeichnet man allgemein Daten, die Informationen über andere Daten enthalten. Bei den beschriebenen Daten handelt es sich oft um größere Datensammlungen (Dokumente) wie Bücher, Datenbanken oder Dateien. Eine allgemeingültige Unterscheidung zwischen Metadaten und normalen Daten existiert allerdings nicht. So werden auch Angaben von Eigenschaften eines Objektes (beispielsweise Personennamen) als Metadaten bezeichnet. Während der Begriff "Metadaten" relativ neu ist, ist sein Prinzip unter anderem jahrhundertelange bibliothekarische Praxis.
Beispiele
Typische Metadaten zu einem Buch sind beispielsweise der Name des Autors, die Auflage, das Erscheinungsjahr, der Verlag und die ISBN. Zu den Metadaten einer Computerdatei sind unter Anderem der Dateiname, die Zugriffsrechte und das Datum der letzten Änderung zu zählen.
Fehlen einem Text hingegen die Metadaten, so spricht man von Plaintext.
Verwendung von Metadaten
In vielen Fällen findet keine bewusste Trennung zwischen Objekt- und Metaebene statt. Beispielsweise spricht man davon, in einem Katalog ein Buch zu suchen und nicht nur seine Metadaten. Bei der Verwendung von Metadaten wird oft erwartet, dass sie durch direkte Koppelung mit den Nutzdaten untrennbare Bestandteile eines abgeschlossenen, sich selbst beschreibenden Systems sind.
Metadaten werden oft dazu eingesetzt, um Informationsressourcen zu beschreiben und dadurch besser auffindbar zu machen und Beziehungen zwischen den Materialien herzustellen. Dies setzt in der Regel erst eine Erschließung mit einem gewissen Standardisierungsgrad (zum Beispiel durch Bibliothekarische Regelwerke) voraus.
Speicherung von Metadaten
Zur Speicherung und Übertragung von Metadaten gibt es eine Reihe von Datenformaten und Datenmodellen (Datenmodelle wie beispielsweise Dublin Core lassen sich auch in unterschiedlichen Formaten ausdrücken). Weiteres unter Metadatenformate.
Siehe auch: Text Encoding Initiative (TEI), Resource Description Framework (RDF)
Zur Speicherung von Metadaten gibt es verschiedene Möglichkeiten:
- Im Dokument selbst. So ist in einem Buch stets auch der Autor und das Erscheinungsjahr verzeichnet. In HTML-Dokumenten werden mit Hilfe von Meta-Tags Sprache, Autor, Unternehmen und Schlagwörter angegeben, die beispielsweise von Suchmaschinen ausgewertet werden.
- In zugeordneten Nachschlagewerken, zum Beispiel für ein Buch in einer Bibliothek im Bibliothekskatalog.
- Bei Computerdateien in den Dateiattributen. Die meisten Dateisysteme erlauben nur genau festgelegte Metadaten in Dateiattributen; andere (z. B. HPFS mittels erweiterter Attribute) erlauben die Assoziation beliebiger Daten mit einer Datei. Auch ist es üblich, die Meta-Information "Dateityp" im Dateinamen unterzubringen; typischerweise in der Extension.
Siehe auch: Attribut, Eigenschaft, semantisches Web, Datenverzeichnis, Repositorium,
Interoperable Metadaten
"Operabel" bedeutet in fachsprachlichen Fügungen zunächst "so beschaffen, dass damit gearbeitet, operiert werden kann". Die Vorsilbe "inter" stammt aus dem Lateinischen und bedeutet soviel wie "zwischen" (genauer: sie kennzeichnet in Bildungen mit Substantiven, Adjektiven oder Verben eine Wechselbeziehung zwischen zwei oder mehreren gleichartigen Dingen, die entweder besteht oder sich vollzieht. Auch: "zwischen", "unter", "inmitten". Vgl. DUDEN Wörterbuch). Interoperable Metadaten sind also Metadaten aus potenziell unterschiedlichen Quellen, zwischen denen ("inter") eine Beziehung in der Weise besteht, dass mit ihnen gemeinsam gearbeitet ("operiert") werden kann.
Standards für interoperable Metadaten haben die Aufgabe, Metadaten aus unterschiedlichen Quellen nutzbar zu machen. Sie umfassen dazu zunächst folgende Aspekte:
Die Semantik beschreibt die Bedeutung, die in der Regel von Normierungs-Gremien festgelegt wird (vgl. Dublin Core). Das Datenmodell legt fest, welche Struktur die Metadaten besitzen können. Als "Daten" lassen sich im Zusammenhang mit Metadaten Aussagen auffassen, die über ein zu beschreibendes Objekt (Dokument, Ressource, ...) getroffen werden. Als "Modell"-Komponente des Begriffs Datenmodell lässt sich eine Beschreibung dessen auffassen, wie die Aussagen strukturell beschaffen sind (der Begriff Datenmodell bedeutet damit im Kontext von Metadaten soviel wie "Grammatik" oder "Struktur von Aussagen"). Beispiele für Datenmodelle von Metadaten sind einfache Attribut/Wert-Kombinationen (z.B. HTML Meta-Tags) oder Sätze mit Subjekt, Prädikat und Objekt (z.B. Tripel in RDF). Die Syntax dient schließlich dazu, die entsprechend dem Datenmodell generierten Aussagen zu repräsentieren. Beispiel für ein Repräsentationsformat ist XML (eXtensible Markup Language).
Zwischen diesen drei Aspekten besteht nun folgende Beziehung: Die Semantik wird durch Konstrukte des Datenmodells repräsentiert. Das Datenmodell wird wiederum durch syntaktische Konstrukte repräsentiert. Die syntaktischen Konstrukte werden schließlich aus Zeichen eines vereinbarten Zeichensatzes (z.B. Unicode) zusammengesetzt. Diese drei Aspekte lassen sich als hierarchisch übereinander liegende Schichten auffassen, da jede Schicht jeweils auf der darunter befindlichen Schicht aufbaut. Die Schichten sind dabei voneinander unabhängig, d.h. die Verwendung eines bestimmten Standards in einer Schicht erfolgt unabhängig von den anderen Schichten (siehe dazu auch die Schichtenmodelle der Netzwerkkommunikation, z.B. das ISO/OSI-Schichtenmodell). So kann eine bestimmte Semantik durch Konstrukte verschiedener Datenmodelle repräsentiert werden (z.B. Attribut/Wert-Kombination, Tripel), die wiederum durch verschiedenen Syntaxen repräsentiert werden können (z.B. Graphen, XML-Formate). Orthogonal zu diesen Schichten liegt als vierter Aspekt die Identifizierung, die alle drei Schichten betrifft. Um Metadaten verschiedener Quellen sinnvoll verarbeiten zu können, muss (weltweit) eindeutig gekennzeichnet werden, um welche Semantik, welches Datenmodell und welche Syntax es sich handelt. Hierzu ist ein Identifikationsmechanismus erforderlich, wie ihn z.B. die URIs (Uniform Resource Identifier) bereitstellen.

Alle vier Aspekte - Semantik, Datenmodell, Syntax und Identifizierung - sind erforderlich, um Standards für interoperable Metadaten zu schaffen. Sie können daher gemeinsam in ein Rahmenwerk (engl. Framework) eingeordnet werden. Wörtlich übersetzt heißt Framework entweder "Gerippe", "Gerüst", "Rahmen" oder "Bezugssystem". Ein Rahmenwerk bietet also eine Art Grundgerüst oder Gerippe, das bereits die wichtigsten Elemente bzw. Komponenten eines Systems und deren Beziehungen beschreibt, jedoch ohne genaue Vorgaben hinsichtlich deren Ausgestaltung zu machen. Es fungiert somit als eine Art "Bezugsrahmen" oder "Bezugssystem", das die sinnvolle Eingliederung neuer Komponenten ermöglicht. Da ein Rahmenwerk Elemente und deren Beziehungen zeigt, kann dies leicht durch die grafische Anordnung von Elementen visualisiert werden. Abb. 1 zeigt ein Rahmenwerk für Metadaten, auf einer Meta-Ebene. Im Gegensatz zu konkreten Ausprägungen von Rahmenwerken, d.h. also der Ausprägungs- oder Instanzenebene, beschreibt ein Rahmenwerk auf der Meta-Ebene ein verallgemeinertes Rahmenwerk - erkennbar an den generischen Bezeichnungen der Bestandteile.
Als Beispiel für ein konkretes Rahmenwerk für Metadaten sei RDF (Resource Description Framework) des W3C (World Wide Web Consortium) genannt. RDF enthält alle der oben genannten vier Aspekte mit spezifischen Ausprägungen, wie in Abb. 2 dargestellt.

Die Komponenten im Detail:
- Semantik: Domänenspezifische Semantiken können über Namensräume importiert werden, womit die Semantik eines RDF-Vokabulars beliebig erweitert werden kann
- Datenmodell: RDF besitzt ein festgelegtes Datenmodell, das Aussagen über Ressourcen in Form von Tripeln mit Subjekt, Prädikat und Objekt gestattet
- Syntax: Zur Repräsentation solcher Aussagen kann eine beliebige Syntax verwendet werden, z.B. RDF/XML, Graphen, oder die N-Triple-Notation; RDF/XML ist jedoch die normative Syntax
- Identifikation: Als universeller Identifikations-Mechanismus werden URIs verbindlich vorgeschrieben
Der Idee eines Rahmenwerkes folgend definiert RDF selbst keine domänenspezifische Semantik, sondern spezifiziert lediglich einen Mechanismus, wie über Namensräume mit Hilfe einer URI weitere Semantiken eingebunden werden können. Verbindlich legt RDF hingegen ein gemeinsames Datenmodell in Form von Tripeln fest sowie die universelle Verwendung von URIs als Identifikationsmechanismus. Diese werden sowohl eingesetzt, um die einzelnen Komponenten eines Tripels (Subjekt, Prädikat, Objekt) zu kennzeichnen, als auch deren Werte und Datentypen. Die konkrete Syntax zur Repräsentation der Tripel kann jedoch, wiederum dem Gedanken eines Rahmenwerkes folgend, frei gewählt werden, wobei RDF/XML als Standard vorgesehen ist. Mit RDF Schema enthält RDF außerdem noch eine Schema-Sprache, um eigene Metadaten-Vokabulare zu definieren.
RDF Schema verhält sich zu RDF ähnlich wie XML Schema zu XML. Ein RDF Schema ist gleichzeitig ein gültiges RDF-Dokument, ebenso ist ein XML Schema gleichzeitig ein gültiges XML-Dokument. In beiden Fällen handelt es sich also um spezialisierte Teilmengen einer Auszeichnungssprache. Während XML Schema jedoch syntaktische Einschränkungen beschreibt, z.B. Elementnamen, Häufigkeit des Auftretens etc., beschreibt RDF Schema semantische Einschränkungen, also z.B. dass ein Attribut "hasPublished" nur auf Instanzen der Klasse "Mensch" oder "juristischePerson" angewendet werden darf, nicht jedoch auf Instanzen der Klasse "Tier" - in der Schemasprache formuliert, hat das Attribut "hasPublished" die Domäne "Mensch" oder "juristischePerson".
Wie XML dem Grundsatz der Einfachheit und Erweiterbarkeit folgend die Welt der Daten gründlich veränderte, in dem es durch eine einheitliche Syntax, ein genormtes Typsystem und seine Textbasiertheit die Definition problemlos zwischen verschiedenen Systemen und Programmen austauschbarer Datenformate ermöglichte, versucht RDF die Welt der Metadaten durch ein einheitliches Datenmodell zu verändern. Durch den Charakter eines Rahmenwerkes knüpft RDF dabei ebenfalls an bewährte Grundsätze wie Einfachheit und Erweiterbarkeit an.
Metadaten in der Softwareentwicklung
In der Softwareentwicklung bezeichnet man Bestandteile eines Programmquelltextes als Metadaten, die nicht vom eigentlichen Übersetzungswerkzeug, meist einem Compiler, sondern Zusatzwerkzeugen ausgewertet werden. Diese Metadaten werden meist zur Dokumentation oder mit Hilfe von Annotationen zur Codegenerierung eingesetzt.
Beispiele für Metadaten in der Softwareentwicklung sind die Annotations in Java oder die von XDoclet oder JavaDoc ausgewerteten Dokumentationskommentare.
Eine von der klassischen Programmierung abweichende Form ist die Verwendung von Metadaten in Universal-Software. Hierbei sind die meisten benötigten Anwendungsfunktionen vorkompiliert vorhanden und werden über eine Metadaten-Engine aufgerufen und parametrisiert. Die gewünschte Zielanwendung muss vorher mittels spezifischer Metadaten deklarativ beschrieben werden.
Literatur
- Schmidt, Ingrid: Modellierung von Metadaten. In: Lobin, Henning / Lemnitzer, Lothar: Texttechnologie. Perspektiven und Anwendungen. Tübingen:Stauffenburg 2004, S. 143-164