Um einen guten sozialen Graphen abbilden zu können ist es wichtig, dass die Verlinkung über z.B. rel-me (oder FoaF oder OpenID-Delegation) bidirektional statt findet.

Beispiel:

  • <a rel="me" href="http://twitter.com/pfefferle" /> (notizBlog.org -> twitter.com)
  • <a rel="me" href="https://notiz.blog" /> (twitter.com -> notiz.blog)

Um auch Community-Profile ohne Backlink-Möglichkeiten (z.B. facebook) verifizieren zu können, kam Brad Fitzpatrick (der Mann hinter Googles Social Graph API) auf die geniale Idee, den fehlenden Link mit einer qr-codierten URL in seinem Profilbild zu ersetzen.

…jetzt müssen die QR-Codes nur noch in die SGAPI aufgenommen werden.

Wer schonmal versucht hat hCard Profile zu importieren wird sicherlich auf ein Problem stoßen: Welche hCard ist die richtige?

Vor ein paar Tagen habe ich ein Gespräch zwischen Dirk Olbertz und Tantek Çelik via Twitter verfolgt, bei dem es genau um dieses Problem ging…

Das Problem der representative hCard kann auf zwei verschiedene Weisen gelöst werden:

…in short 1. url==uid==source. 2. url has rel-me

url==uid==source

Die einfachste Möglichkeit ist, zu überprüfen ob eine der (unter der angegebenen Source-URL) gefundenen hCards als URL die die Source-URL enthält. Wenn man sicher gehen will, sollte man die URL zusätzlich noch als UID (RFC2426) auszeichnen.

Ein Beispiel für eine representative hCard für wäre:

<span class="vcard">
	<span class="fn">Carsten Pötter</span>
	<span class="url uid">http://notsorelevant.com</span>
</span>Code-Sprache: HTML, XML (xml)

rel-me

Die zweite Möglichkeit ist, nach hCards mit rel="me" URLs zu suchen.

Diese Variante lässt sich natürlich auch mit der Ersten verbinden:

<span class="vcard">
	<span class="fn">Carsten Pötter</span>
	<span class="url uid" rel="me">http://notsorelevant.com</span>
</span>Code-Sprache: HTML, XML (xml)

Wer also ganz sicher gehen möchte sollte das letzte Beispiel nutzen 🙂

Für Web-Seiten die gar keine Profile oder zumindest keine Profile auf der Startseite haben, könnte rel="me" auch als Delegation zu einer (anderen) Seite mit einer representative hCard genutzt werden.

Beispiel: <link rel="me" href="http://www.notsorelevant.com/ueber/" />

Da es für PHP (meines Wissens) noch keinen XFN-Parser gibt, habe ich mich beim hCard-Commenting WordPress Plugin für die erste Variante (url==uid==source) entschieden… Ich hoffe es funktioniert 🙂

Weitere Informationen zu representative hCards im Microformats-Wiki:

microsearch-logo.jpg

So, endlich komm ich neben den ganzen DataPortability und OpenID News auch mal wieder zu meinen sehr geschätzten Microformats 😉

Yahoo! Research Barcelona bastelt mit "Yahoo! Micro Search" an einer Social/Semantic Search Engine. Yahoo! Micro Search ist aber keine reine Microformats Suche wie z.B. die Technorati "Microformats Search" sondern unterstützt (wie die Social Graph API) auch RDFa, über <link rel="me" /> verlinkte RDF Dateien wie z.B. FoaF und demnächst soll auch noch GRDDL dazu kommen (bin mal gespannt wie das aussehen soll).

Der Aufbau der Suchergebnisse ist (zumindest im Hauptteil) eher klassisch wie bei Google oder Yahoo! aufgebaut.

yahoo-search-results.jpg

Im oberen Teil der Sidebar werden gefundene GEO-Daten direkt auf einer Yahoo Map dargestellt. Die unten abgebildeten Orte wurden z.B. in meinem Plazes Account gefunden.

yahoo-search-results-map.jpg

Darunter sollen wohl gefundene hCalendar-Events mit Hilfe der Smile Timeline angezeigt werden, das habe ich aber leider nicht ausprobieren können… meine war immer leer, ich hoffe das liegt nicht an mir 😉

Wo bei Google "nur" die Anzahl der Suchtreffer zu einem Suchbegriff angezeigt werden, listet die Micro Search genau auf wie viele davon Profile (z.B. vCards/hCards) oder Events (z.B. hCalendar) sind.

micro-search-details.jpg

Fazit: "Yahoo! Micro Search" dient wohl in erster Linie dazu Google einen Schritt voraus zu sein und ein Pendant zu der "Social Graph API" zu schaffen… und wenn schon, ich mag die Idee. Man sollte sich in Zukunft nur im klaren sein, dass arglos veröffentlichte Microformats demnächst auch alle gefunden (und meist auch dessen Autor zugeordnet) werden können…

Weiterführende Links: