1.1 Was sind Mikroformate?

HTML ist bekanntlich die Basis-Auszeichnungssprache für Webseiten. Wer schon mit HTML gearbeitet hat, weiß, dass man damit Texte strukturiert auszeichnen kann. HTML kennt verschiedene Überschriftenebenen, Textabsätze, Aufzählungslisten, nummerierte Listen, Glossarlisten, Tabellen. Weiterhin diverse Inline-Auszeichnungen, etwa für hervorgehoben Text, Zitate oder Abkürzungen. Außerdem Auszeichnungen für Verweise, für Grafikreferenzen, Multimediareferenzen, Formulare, ihre Dialogelemente und verweis-sensitive Grafiken. Und last but not least eine Reihe von Auszeichnungen für Metadaten, logische Beziehungen zu anderen Inhalten, sowie zum Einbinden von Scripts und Stylesheets.

Dennoch klagen viele, die mit HTML arbeiten, immer wieder darüber, dass es für viele Fälle keine ordentlichen Auszeichnungen gibt. Eine News etwa, die aus Schlagzeile, Anlesertext, Langtext und Autorenangabe besteht, lässt sich in HTML nur durch Elemente abbilden, die in keiner Weise darauf hindeuten, dass es sich um eine News handelt. Wer mit HTML ein Meeting-Protokoll auszeichnen will, hat keine adäquaten Elemente, um anwesende Teilnehmer, Tagesordnungspunkte, vorgebrachte Argumente, Ergebnisse und Beschlüsse auszuzeichnen. Und für Kontaktdaten gibt es zwar ein Element namens <address>…</address>, doch keine Substruktur für Daten wie Anschrift, Telefon, E-Mail usw.

Genau an dieser Stelle setzen Mikroformate an. Wer jetzt allerdings irgendetwas Besonderes und Geheimnisvolles erwartet, wird enttäuscht sein. Denn die meisten Webentwickler basteln sich fortwährend ihre eigenen Mikroformate. Wenn Sie beispielsweise ein modernes Webseitenlayout mit sauber getrenntem HTML und CSS entwerfen und die HTML-Struktur notieren, dann werden Sie vermutlich HTML-Konstrukte wie <div id="header">…</div>, <img id="logo" src="…">, <h3 class="newstitle">…</h3> verwenden. Sie verwenden also allgemeine Elemente wie div und/oder Universalattribute wie id= oder class=. Die Werte, die Sie diesen Attributen zuweisen, sind Namen, die Sie für sinnvoll (bedeutungsvoll) halten.

An dieser Stelle liegt der Knackpunkt. Die von Ihnen vergebenen Namen sind für Sie und auch für andere Menschen sinnvoll weil verständlich. Doch der verarbeitenden Software ist es egal, ob Sie <h3 class="newstitle">…</h3> verwenden oder <h3 class="blabla">…</h3>. Der HTML-Parser eines Browsers ist zufrieden, weil er ein syntaktisch korrekt notiertes h3-Element mit einem erlaubten Attribut class= erkennt. Der Wert des class-Attributs mag im Hinblick auf CSS interessant sein. Doch den HTML-Parser interessiert das nicht weiter. Er weiß also nichts davon, dass Sie mit der Überschrift den Titel einer News auszeichnen. Eine Software kann ohne weitreichende künstliche Intelligenz einfach nicht wissen, was Sie mit selbstvergebenen Namen „meinen“.

Was aber, wenn man sich weltweit einigen würde, News-Schlagzeilen in HTML immer und überall mit <h3 class="newstitle">…</h3> auszuzeichnen? Es würde ein Standard entstehen. Und genau diese Art von Standards bezeichnet man als Mikroformate.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License