Logo Adobe Certified Expert (ACE) und Adobe Certified Instructor (ACI) für Adobe Acrobat

11. August 2006

Microformats schwer im Trend

Microformats-LogoWirklich schwer zu beschreiben, was man unter Microformats versteht und wozu sie nutze sind. Ich möchte es an dieser Stelle eigentlich auch nicht machen, vor allem weil es woanders schon gemacht wurde – und so gut, wie ich es kaum hinkriegen würde. Kurz und schmerzlos: unter Microformats versteht man eine Erweiterung von HTML (oder besser von CSS), mit der man Adressen oder Kalenderdaten auf Webseiten auszeichnen kann, so dass diese maschinenlesbar und archivierbar werden.

Aber lassen wir doch lieber andere zu Wort kommen, die das besser erklären können:

Manfred Heinze, der Autor dieses Podcasts beschreibt die Zusammenhänge wirklich sehr anschaulich. Jedenfalls hat mich dieser Artikel angeregt, mich etwas umzuschauen und vor allem selbst etwas auzuprobieren. Vor allem ein Zitat aus dem Podcast hat es mir angetan:

So richtig spannend wird es, wenn sich diese Formate direkt in lokale Anwendungen des Nutzers übernehmen lassen. Wer schon einmal Termine aus PDFs abgetippt hat oder per Copy and Paste aus HTML-Seiten in den Kalender übertragen hat wird sich sicher darüber freuen: geeignete Programme vorausgesetzt kann man entsprechend aufbereitete Daten per Mausklick zum Beispiel in Outlook oder iCal übertragen.

Ein kleiner Test:

Ok, das will ich doch mit meinem Seminarkalender mal austesten. Zunächst muss ich meinen Seminarkalender etwas umbauen: der normale HTML-Output muss um zusätzliche Tags und vor allem Klassen erweitert werden. So muss ein kompletter Termin prinzipiell so aufgebaut werden:

<div class="vevent">
    <h3 class="summary">Text <a href="#" class="url">Linktext</a></h3>
    <p class="description">Beschreibung des Inhalts</p>
    <p><abbr class="dtstart" title="2006-10-18">Datum von </abbr> - 
    <abbr class="dtend" title="2006-10-22">Datum bis. </abbr>, 
    <span class="location">ORT</span>, 
    weitere Infos unter: <a href="#" rel="extern" class="url">Link</a></p>
</div>

Die HTML-Tags sind weitgehend frei, bis auf <abbr ...> für Anfangs- und Endtermin des Kalendereintrags. Die Klassenbezeichnungen vevent oder summary etc. sind aber vorgegeben und müssen genau übernommen werden. Das title-Attribut muss das Datum in ISO-Schreibweise enthalten – dieses Datum wird nämlich in iCal übernommen, nicht das sichtbare Datum auf der Webseite. Wichtig sind auch die Klassen in den Links: die Links werden nur in den Kalendereintrag übernommen, wenn sie die Klassenbezeichnung url bekommen.

Die Beschreibung der Syntax und genauere Anleitung sind im Microformats-Wiki zu finden. Der Aufbau meiner Kalendereinträge weicht davon ein bisschen ab, aber nur geringfügig.

Soweit ist das noch nichts besonderes, man sieht auf der Webseite selbst gar nichts. Aber das ist auch beabsichtigt, die Einträge sollen ja maschinenlesbar werden. Leider sind Microformats eine sehr junge Entwicklung, und es gibt derzeit noch sehr wenig Werkzeuge, die das Format lesen und für meine Besucher nutzbar machen könnten. Im Moment wird ein Firefox-Plugin entwickelt, das Microformats erkennen kann (allerdings erst für Windows erhältlich), ausserdem gibt es ein kleines Tool namens Endo, das in der Lage ist, hCalender wie den meinen zu lesen und direkt in iCal zu importieren. Andere Werkzeuge wie zum Beispiel JavaScript- oder PHP-Bibliotheken sind leider erst in der Entwicklung. Im Microformats-Wiki findet man Beispiele und aktuelle Links zu entsprechenden Tools.

Mein Seminarkalender als iCal-Abonnement

Und dort bin ich auch fündig geworden: derzeit bietet technorati einen Dienst an, mit dem man seine hCalender automatisch in eine .ics-Datei umwandeln lassen kann, die wiederum in alle Kalenderprogramme importiert werden kann, die das iCal-Format lesen können (zum Beispiel iCal von Mac OS X).

  • erste Methode: Ein Klick auf diesen Link ruft eine Seite bei technorati auf und übergibt als Link meinen Seminarkalender. Dieser wird interpretiert und in einen iCal-Kalender umgewandelt und automatisch heruntergeladen. Wenn Sie auf die Datei doppelt klicken, so öffnet sich iCal (oder ein entsprechendes Kalnderprogramm, das dieses Format versteht), und Sie werden gefragt, ob Sie den Kalender importieren wollen.
  • zweite Methode: die ist noch eleganter, funktioniert aber wirklich nur unter Mac OS X mit iCal: Wenn Sie auf diesen Link klicken, so öffnet sich iCal, übernimmt den Link und fragt Sie, ob Sie den Kalender abonnieren wollen. Klicken Sie auf OK, dann wird der Kalender in iCal geladen. Dabei können Sie festlegen, ob und wie oft er automatisch aktualisiert werden soll.

Achtung: beide Wege dauern ein klein bisschen, da technorati meine Seite erst parsen muss und danach die Datei zum Download anbietet. Bei meinen Tests so ca. 10 bis 15 Sekunden.

Wie weiter?

Das ist im Moment natürlich noch eine Spielerei, allerdings eine mit sehr viel Potential. Ich werde demnächst diese Links fest in meinem Seminarbereich einbauen, allerdings wäre es mir lieber, wenn die Umwandlung in iCal nicht über technorati laufen muss. Leider sind die entsprechenden Tools oder Bibliotheken noch nicht fertig. Allerdings sind sie vielfach in der Entwicklung: Safari, Flock, Firefox, Camino und noch andere Browser werden über kurz oder lang diese Formate unterstützen. Dann wird es die Möglichkeit geben, einfach beim Besuch einer Webseite Adressen per Klick ins Adressbuch zu übernehmen oder Kalender zu abonnieren; und alles, was die Webdesigner dazu implementieren müssen, sind ein paar Tags und Klassen

... Ich finde diese Entwicklung extrem spannend und werde da auf jeden Fall dran bleiben.

Zum Ausklang ein paar Links:

Von Peter am 11.08 um 22:23 Uhr. Kategorie: Mac-OS-X | HTML-CSS | Netzwelt

Trackbacks

  1. Trackback-URL: http://www.lisardo.de/trackback/523/BC2aGlcm/

Kommentare

  1. Kommentar von Michael am 12. 08 um 17:59 Uhr:

    Wenn die eingebetteten Daten nicht sehr kompex sind, müsste man sie doch eigentlich recht einfach mit XSLT Scripts herausholen können, oder?

  2. Kommentar von Peter am 13. 08 um 17:04 Uhr:

    Hallo Michael,
    Ja, damit hast du wohl recht. Bei http://suda.co.uk/projects/X2V/ gibt es auch ein derartiges Skript, allerdings klappt dieses Skript bei mir nicht, es funktioniert nicht mit utf-8-kodierten Inhalten. Mit XSLT habe ich mich noch nicht auseinandergesetzt, somit überschreitet das (noch) meine Fähigkeiten. Aber das könnte ja ein guter Anlass sein, mich damit zu beschäftigen :-)

  3. Kommentarseite 1 von 1.
Dieser Eintrag kann nicht mehr kommentiert werden.

Aktuelle Seminartermine:

Seminarkalender abonnieren

Icon einer Kalenderdatei
Seminarkalender als .ics-Datei: Für Kalenderanwendungen herunterladen (alle Systeme)
Icon einer Kalenderdatei
Seminarkalender für iCal: Kalender abonnieren (nur Mac OS X)