Zusammenführung der Microformate und Dublin Core Ideen
Dublin Core ist einer der ältesten
Metadaten
Standards des
WWW. Es ist klassischerweise
direkt verbunden mit dem meta
Element. Doch
wie bereits bei
Dublin Core: Expressing Dublin Core in HTML/XHTML
meta and link elements
beschrieben, sind diese Attributwerte auch auf das
link
Element anwendbar.
Die Mikroformate hingegen beschreiben wesentlich
Attribute und deren
Werte, wie sie in der body
Sektion eines
html-Dokuments auftauchen. Dabei kann man recht gut Beides miteinander
kombinieren.
Dieses Dokument ist ein Metadaten Profil im Sinne der HTML Spezifikationen, Sektion 7.4.4.3 Meta data profiles, genauer spezifiziert unter XMDP.
Klarstellung
Wie bei Dublin Core beschrieben, ist die Notation der Attributwerte wie folgt:
DC.attributwert
Also DC
in Großbuchstaben, gefolgt von den Attributwerten in
Kleinbuchstaben. Bei Verwendung
ist genau diese Schreibweise anzuwenden. Dadurch ergibt sich bei Bedarf eine
etwas aufwändigere Notation in CSS Stylesheets:
p[class="DC.description.abstract"] { ... }
Hauptziel dieser Spezifikation ist allerdings nicht das Styling per CSS, sondern die logische und semantische Auszeichnung entsprechenden Inhaltes.
Attributwerte
- DC.title
-
Titel des Dokuments.
Die Verwendung im
head
Bereich ist redundant und daher überflüssig. Die folgenden Angaben haben die gleiche Bedeutung:title
Titel der Seite/title
meta name="DC.title" content="Titel der Seite"
Da das html Element
title
per Spezifikation sowieso notwendig ist, ist dieser Notation der Vorzug zu geben. Der Inhalt destitle
Elements kann genausogut alsdc:title
nach z.B. RDF extrahiert werden.Interessant ist die Verwendung im
body
. In der Regel befindet sich in einem Dokument eine Überschrift, die im Unterschied zu den weiteren Überschriften dieses Dokuments als Titel dieses Dokuments definiert ist. Dies kann, muß aber nicht, der gleiche Inhalt sein wie der destitle
Elements. Mögliche Orte für diesen Titel können zum Beispiel die erste Überschrift erster Ordnung (h1
) oder auch eine andere Überschrift auch niedrigerer Ordnung sein. So ist zum Beispiel denkbar, daß die erste Überschrift erster Ordnung als eine Art Banner den Firmen- oder Sitenamen enthält, und die darauf folgende erste Überschrift zweiter Ordnung den eigentlichen Seitentitel:body
h1
Firma Müller und Co./h1
h2
Unsere Produkte/h2
.../body
Um den Titel eindeutig zu kennzeichnen, kann der Dublin Core Attributwert hinzugefügt werden. Dabei ist das id Attribut vorzuziehen, da eine Seite nur einen Titel besitzen sollte:
body
h1
Firma Müller und Co./h1
h2 id="DC.title"
Unsere Produkte/h2
.../body
- DC.creator
-
Bezeichnet die Person oder Gruppe, die hauptsächlich für den Inhalt verantwortlich ist. Im Fall von Textdokumenten hat dies die gleiche Bedeutung wie der Attributwert author. Andere Arten von Erstellern können Künstler, Photographen oder Illustratoren sein.
head
meta name="DC.creator" content="Siegfried Gipp"
link rel="DC.creator" href="http://www.rorkvell.de/impressum"
.../head
Die erste Zeile zeigt den klassischen Fall der Nutzung im
meta
Element. Hier ist nicht spezifiziert, welchen Datentyp das Attribut "content" enthält. Es kann sich um einen einfachen Text (string) handeln, der um eine URL oder irgendwas Anderes. Am sinnvollsten ist hier die Verwendung des vollen Namens als einfacher Text.
Die zweite Zeile zeigt die Verwendung imlink
Element. Hier ist spezifiziert, daß das href Attribut ausschließlich eine URL enthalten kann. Der Wert unter href ist also die URL einer Webseite, wo Informationen über den Ersteller gefunden werden können. Diese Notation ist immer dann vorzuziehen, wenn eine solche URL angegeben werden kann. Natürlich lassen sich auch, so wie oben, beide Notationen miteinander kombinieren.Die Verwendung im
body
ist ebenfalls interessant. Wie bei den XFN Mikroformaten lässt sich auch dieser Wert für ganz ähnliche Zwecke verwenden. Zunächst ein Beispiel nach XFN:Diese Seite wurde von
a href="http://www.rorkvell.de/impressum" rel="me"
mir/a
erstellt.Die Verwendung von
me
impliziert in einer recht ungenauen Art, daß es sich bei der Person, um die es hier geht, um Denjenigen handelt, der diese Seite erstellt hat. Etwas präziser, aber syntaktisch ansonsten identisch, geht dies mit Dublin Core:Diese Seite wurde von
a href="http://www.rorkvell.de/impressum" rel="DC.creator"
mir/a
erstellt.Auch die Verwendung in einem Adressdatensatz auf z.B. einer Impressumsseite bietet sich an. Hier kann man gut mit dem hCard Mikroformat kombinieren:
address class="vcard"
a rel="fn" href="http://www.rorkvell.de/impressum"
Siegfried Gipp/a
/address
Dies besagt lediglich, daß es sich hier um einen (sehr reduzierten) Adressdatensatz nach hCard handelt. Es wird aber keine Aussage gemacht darüber, um wessen Adresse es sich handelt. Dies lässt sich ändern:
address class="vcard DC.creator"
a rel="fn" href="http://www.rorkvell.de/impressum"
Siegfried Gipp/a
/address
Da es i.d.R. wohl nur einen einzigen Ersteller gibt (im Gegensatz zu z.B. DC.contributor, ist auch folgende Konstruktion denkbar:
address class="vcard" id="DC.creator"
a rel="fn" href="http://www.rorkvell.de/impressum"
Siegfried Gipp/a
/address
In beiden Fällen habe ich übrigens, entgegen den Beispielen bei hCard, auf die Verwendung des Wertes "url" verzichtet. Die Verwendung des Elementes
a
sowie des Attributes href implizieren bereits per Spezifikation eine url. - DC.subject
-
Thema der Seite. Typischerweise Schlüsselworte oder Schlüsselphrasen, die das Thema der Seite beschreiben.
Die Verwendung in der
head
Sektion ist redundant. In der Regel sollte man hier nur eine der beiden Varianten verwenden:meta name="keywords" content="xml, metadata, xhtml, Dublin Core, Microformat"
meta name="DC.subject" content="xml, metadata, xhtml, Dublin Core, Microformat"
Interessant ist hingegen die Verwendung im
body
Bereich. Hier können an jeder Stelle des Inhalts besondere Schlüsselworte oder Schlüsselsätze gekennzeichnet werden. Üblicherweise kann dafür dasspan
Element herangezogen werden, aber auch jede Art von Überschrift:Hier geht es um
span class="DC.subject"
Metadaten/span
, speziell die Verwendung derspan class="DC.subject"
Dublin Core/span
Attributwerte und deren Verwendung inspan class="DC.subject"
xhtml/span
. - DC.description
-
Eine textuelle Beschreibung des Inhalts, einschließlich z.B. einer Zusammenfassung, eines Teasers, oder auch Inhaltsbeschreibungen bei Bildern, Filmen und Dergleichen.
Die Verwendung im
head
ist redundant, da es dazu auchdescription
gibt. Imhead
Bereich sollte nur eine der beiden Varianten verwendet werden:meta name="description" content="Beschreibung des Inhalts"
meta name="DC.description" content="Beschreibung des Inhalts"
- DC.description.abstract
-
Gut geeignet als Klassenname oder ID für einen einleitenden Paragraphen, der als Zusammenfassung, Einführung oder Teaser dient:
h2 id="DC.title"
Klasse XHTML/h2
p id="DC.description.abstract"
Hier geht es um XHTML und Klassennamen. .../p
- DC.publisher
-
Herausgeber eines Webdokuments wie z.B. ein Verlag, Universität oder Firma, aber auch Privatpersonen. Kann syntaktisch auf die gleiche Art verwendet werden wie DC.creator:
head
meta name="DC.publisher" content="Siegfried Gipp"
link rel="DC.publisher" href="http://www.rorkvell.de/impressum"
.../head
Auch verwendbar im
body
, z.B. in Adressdatensätzen:address class="vcard DC.publisher"
a rel="fn" href="http://www.rorkvell.de/impressum"
Siegfried Gipp/a
/address
Die Verwendung ist auch hier genau wie bei hCard in der Kombination mit XFN, nur daß hier statt mit XFN mit Dublin Core kombiniert wird. Die Aussage dieser Konstruktion ist etwas präziser. Da es wahrscheinlich auch nur einen Herausgeber gibt, ist, ähnlich wie bei DC.creator, auch folgende Konstruktion denkbar:
address class="vcard" id="DC.publisher"
a rel="fn" href="http://www.rorkvell.de/impressum"
Siegfried Gipp/a
/address
- DC.contributor
-
Verweist auf Jemanden, der signifikant zum Inhalt beigetragen hat, wie z.B. Übersetzer, Illustrator, Editor, ...
Auch hier ist die Verwendung syntaktisch identisch mit DC.creator und DC.publisher:
head
meta name="DC.contributor" content="Siegfried Gipp"
link rel="DC.contributor" href="http://www.rorkvell.de/impressum"
.../head
Ebenfalls möglich ist die Verwendung im
body
, z.B. in Adressdatensätzen in z.B. einer Impressumsseite:address class="vcard DC.contributor"
a rel="fn" href="http://www.rorkvell.de/impressum"
Siegfried Gipp/a
/address
Insbesondere können durch die Verwendung der verschiedenen Attributwerte mehrere Adressdatensätze in einer Impressumsseite präzise der Rolle des Eigentümers dieser Adresse zugeordnet werden.
- DC.date
-
Datum der Erstellung oder Änderung oder Gültigkeitszeitpunkt. Dies überschneidet sich weitgehend mit den hCalendar Spezifikationen, bezieht sich jedoch explizit auf Daten und Ereignisse dieses Dokument betreffend. Das übliche hCalendar Markup kann daher einfach durch diese Klassennamen ergänzt (nicht ersetzt) werden.
- DC.date.created
- Datum der Erstellung der Seite.
- DC.date.valid
- Zeitpunkt, bis zu dem dieses Dokument gültig bleibt.
- DC.date.available
- Zeitraum (Intervall), in dem das Dokument verfügbar ist oder wird.
- DC.date.issued
- Zeitpunkt der formellen Herausgabe des Dokuments.
- DC.date.modified
- Zeitpunkt der letzten Änderung.
Im Fall der Verwendung in der
head
Sektion wird das Datum in der Form JJJJ-MM-DD geschrieben. Dies entspricht der maschinenlesbaren Schreibweise, die bei hCalendar als title Attribut desabbr
Elements spezifiziert ist. - DC.type
-
Art oder Rolle des Dokuments (z.B. Homepage, Gedicht, Arbeitspapier, Verzeichnis, ...). Der Typ sollte aus dem Dublin Core Vokabular genommen werden. Nicht zu verwechseln mit dem HTML Attribut type, welches den mime-Typ aufnimmt.
Die Verwendung im
body
ist nicht trivial, da DC.type nicht einfach als Klassenname oder ID verwendet werden kann. Dieser Klassenname oder diese ID kann verwendet werden, wenn der Inhalt des jeweiligen Containers eines der Schlüsselworte aus dem Dublin Core Vokabular ist. Im Fall nicht-englischer oder nicht identischer Begriffe kann der Begriff in einspan
Element eingebettet werden, dessen title Attribut den Dublin Core Begriff enthält. - DC.format
-
Bezeichnet den mime-Typ des Inhalts. Ist i.d.R. in html-Dokumenten redundant. Für das aktuelle Dokument wird diese Angabe im http Header gemacht sowie eventuell zusätzlich im
meta
Element. Bei Linkzielen wird diese Angabe durch das type Attribut vorgenommen, ebenso beiimg
undobject
. Umgekehrt können diese html-Attribute resp. deren Werte bei der Umformung nach xml in Elemente der Formdc:format
übertragen werden. - DC.identifier
-
Diese Angabe macht im Wesentlichen im
head
Sinn als Wert des Attributes rel deslink
Elements und bezeichnet, ähnlich wie dasbase
Element die eindeutige URL dieses Dokuments:link rel="DC.identifier" href="http://www.rorkvell.de/tech/dc.xhtml.de" type="application/xhtml+xml" title="Zusammenführung der Microformate und Dublin Core Ideen" lang="de" hreflang="de"
Dies bezeichnet z.B. eindeutig das vorliegende Dokument in der deutschen xhtml Version.
- DC.source
-
Verweist auf eine Webseite, die als Quelle für das aktuelle Dokument dient. Das aktuelle Dokument kann z.B. eine Übersetzung des Quelldokumentes sein oder ein Dokument, dessen Inhalt zu dem Inhalt des aktuellen Dokuments angeregt hat.
- DC.language
-
Dieses Attribut ist sowohl im
head
als auch imbody
redundant und daher zu vermeiden. In html wird das Gleiche erreicht durch daslang
Attribut, soweit es Texte im aktuellen Dokument betrifft, oder durch dashreflang
Attribut, soweit es sich um die Sprache von Zieldokumenten bei Verweisen handelt. In xml-Dokumenten kann dieser Wert durch xml:lang ausgedrückt werden. - DC.relation
-
Dieses Attribut ist ebenfalls besser direkt in html aufgehoben, und zwar durch die Verwendung der rel und rev Attribute. Umgekehrt jedoch können bei der Umformung von xhtml-Dokumenten nach xml diese Attribute in entsprechende Elemente der Art
dc:relation
übertragen werden. - DC.coverage
-
Bezeichnet eine örtliche oder zeitliche Gültigkeit des Dokuments. Bei örtlichen Einschränkungen handelt es sich um ein Dokument, das nur für die genannte Region relevant ist. Zeitliche Einschränkungen sind z.B. sinnvoll bei Dokumenten über geschichtliche Ereignisse.
Dieser Wert macht i.d.R nur Sinn im
meta
Element, das aktuelle Dokument betreffend. - DC.rights
- Die Bedeutung ist identisch zu dem inzwischen weiter verbreiteten rel="license" und kann alternativ verwendet werden.