Kategorien
Webdesign

OExchange: Offenes Protokoll zum Link-Sharing

Spätestens seit dem Erfolg sozialer Netze wie Facebook und XING ist das Twittern von Links populär geworden. Bisher haben die sozialen Netze und Bookmark-Dienste für sich alleine und dementsprechend unterschiedlich geregelt, über welche Schnittstelle Links auf ihren Seiten veröffentlicht werden. Mit OExchange gibt es nun ein offenes Protokoll, mit dem das Weitergeben von Links vereinheitlicht werden soll.

Spätestens seit dem Erfolg sozialer Netze wie Facebook und XING ist das Teilen von Links populär geworden. Bisher haben die sozialen Netze und Bookmark-Dienste für sich alleine und dementsprechend unterschiedlich geregelt, über welche Schnittstelle Links auf ihren Seiten geteilt werden. Mit OExchange gibt es nun ein offenes Protokoll, mit dem das Weitergeben von Links vereinheitlicht werden soll.

Was soll OExchange?

Bei Nachrichtenportalen und Blogs gehört es mittlerweile dazu, dass man am Ende eines Beitrags eine ganze Reihe von Links anbietet, über die man den aktuellen Beitrag in diversen sozialen Netzen und Bookmark-Diensten mit anderen gemeinsam nutzen beziehungsweise veröffentlichen kann (was das mit „teilen“ etwas unglücklich, nämlich falsch aus dem Englischen übersetzte „share“, besser trifft – Anmerkung der Redaktion).

Iconleiste mit Anbietern auf SPIEGEL ONLINE
Iconleiste mit Anbietern auf SPIEGEL ONLINE

Da es bisher kein verbindliches Protokoll gab, galt es, für jeden Anbieter die entsprechende Einbindung des „Teilen“-Links herauszufinden. Mit OExchange lassen sich Links nach einem einheitlichen Muster veröffentlichen. Lediglich der so genannte „Offer Endpoint“, also die URL, an die der betreffende Link angehängt wird, ändert sich:

http://www.example.com/teilen.php?url={Link}

Die URL bis zum Fragezeichen ist der Offer Endpoint, der bei jedem Anbieter anders ist. Alles, was danach kommt, wird durch das OExchange-Protokoll vorgegeben. Beim Sharing-Dienst AddToAny, über den man einen Link auf verschiedenen sozialen Netzen beziehungsweise Bookmark-Diensten publizieren kann, sieht der Link so aus:

http://www.addtoany.com/share_save?url={Link}

Was kann OExchange?

OExchange bietet verschiedene Parameter, über die man den Link spezifizieren kann. So lässt sich ein Titel sowie eine Beschreibung angeben. Auch lässt sich der Inhaltstyp des Links, wenn es sich etwa um ein Bild oder einen Flash-Film handelt, übergeben:

http://www.example.com/share.php?url={Link}&title={Titel}&
  description={Beschreibung}&ctype={Inhaltstyp}

Es gibt vier verschiedene Inhaltstypen, die übergeben werden können:

  • Links („ctype=link“),
  • Bilder („ctype=image“),
  • I-Frames („ctype=iframe“),
  • Flash-Filme („ctype=flash“).

Da der Typ Link Standard ist, muss er nicht gesondert angegeben werden. Je nach Inhaltstyp stehen weitere Parameter zur Verfügung wie Höhen- und Breitenangaben. Bei Bildern, I-Frames und Flash-Filmen gibt es je einen weiteren URL-Parameter, der zur jeweiligen Mediendatei führt:

http://www.example.com/share.php?url={Seitenink}&ctype=image&
  imageurl={Bildlink}&width={Breite}&height={Höhe}
http://www.example.com/share.php?url={Seitenink}&ctype=iframe&
  iframeurl={Framelink}&width={Breite}&height={Höhe}
http://www.example.com/share.php?url={Seitenink}&ctype=flash&
  swfurl={Flashlink}&width={Breite}&height={Höhe}

Bei I-Frames und Bildern kann zusätzlich noch ein Screenshot übergeben werden:

http://www.example.com/share.php?url={Seitenink}&ctype=flash&
  swfurl={Flashlink}&width={Breite}&height={Höhe}&
  screenshot={Screenshotlink}

Links lassen sich zudem mit Tags versehen, um sie mit bestimmten Begriffen in Verbindung zu bringen:

http://www.example.com/share.php?url={Link}&
  tags={Begriffe durch Komma getrennt}

OExchange „entdecken“

Ob eine Website einen Service zum so genannten Teilen von Links anbietet und wie der „Offer Endpoint“ lautet, lässt sich über eine XRD-Datei definieren. XRD steht für „Extensible Resource Descriptor“. Es handelt sich dabei um eine XML-Datei, in der unter anderem der „Offer Endpoint“ angegeben wird. Darüber hinaus lassen sich weitere Angaben festlegen:

<?xml version="1.0" encoding="UTF-8"?>

<XRD xmlns="http://docs.oasis-open.org/ns/xri/xrd-1.0">

  <Subject>http://www.example.com/</Subject>

  <Property type="http://www.oexchange.org/spec/0.8/prop/vendor">
    Example GmbH
  </Property>
  <Property type="http://www.oexchange.org/spec/0.8/prop/title">
    Ein Linkl-Tausch-Dienst
  </Property>
  <Property type="http://www.oexchange.org/spec/0.8/prop/name">
    Linktauscher
  </Property>
  <Property type="http://www.oexchange.org/spec/0.8/prop/prompt">
    Teilen mit Linktausch
  </Property>

  <Link
    rel= "icon"
    href="http://www.example.com/favicon.ico"
    type="image/vnd.microsoft.icon" />

  <Link
    rel= "icon32"
    href="http://www.example.com/favicon32.png"
    type="image/png" />

  <Link
    rel= "http://www.oexchange.org/spec/0.8/rel/offer"
    href="http://www.example.com/teilen.php"
    type="text/html" />

</XRD>

Der Wert „Subject“ beschreibt den Hauptlink zu dem Dienst, die „Property“-Werte beschreiben den Anbieter des Dienstes („http://www.oexchange.org/spec/0.8/prop/vendor“), den Titel („http://www.oexchange.org/spec/0.8/prop/title“), den Namen des Dienstes („http://www.oexchange.org/spec/0.8/prop/name“) sowie den Text, der mit dem „Teilen“-Link versehen werden soll („http://www.oexchange.org/spec/0.8/prop/prompt“).

Darüber hinaus werden drei „Link“-Werte übergeben, die zum einen auf zwei Icons des Anbieters („icon“ und „icon32“) verweisen und zum anderen den Link zum so genannten „Offer Endpoint“ beinhalten („http://www.oexchange.org/spec/0.8/rel/offer“).

Diese XRD-Datei enthält also alles, was man wissen muss, um einen „Teilen“-Link des Dienstes auf der eigenen Website bereitstellen zu können. Der Anbieter AddToAny nutzt eine solche XRD-Datei, um seine Schnittstelle zum Teilen von Links auf diese Weise bekanntzugeben.

Damit auch alle wissen, wo die XRD-Datei bei einem Dienst zu finden ist, muss sie in der sogenannten „host-meta“-Datei des Dienstes angegeben werden. Die Idee einer „host-meta“-Datei ist die, dass allgemeine host-weite Meta-Angaben über ein zentrales Dokument zur Verfügung gestellt werden. Die „host meta“-Datei muss über folgende URL aufrufbar sein:

http://example.com/.well-known/host-meta

Die Daten der „host-meta“-Datei werden ebenfalls im XRD-Format angegeben. Für die Angabe der OExchange-XRD-Datei sollte die „host-meta“-Datei wie folgt aussehen:

<?xml version="1.0" encoding="UTF-8"?>

<XRD xmlns="http://docs.oasis-open.org/ns/xri/xrd-1.0"
  xmlns:hm="http://host-meta.net/xrd/1.0">

  <hm:Host>www.example.com</hm:Host>

  <Link
    rel="http://oexchange.org/spec/0.8/rel/resident-target"
    type="application/xrd+xml"
    href="http://www.example.com/oexchange.xrd" >
  </Link>

</XRD>

Über den „Link“-Wert wird die URL zu der XRD-Datei angegeben, in der sich die Angaben zum OExchange-Protokoll befinden. Auch AddToAny hat eine solche „host-meta“-Datei.

Fazit

Das OExchange-Protokoll vereinheitlicht die Schnittstelle zum Teilen von Links. Die Auflistung verschiedener Dienste wie Facebook, Delicious, Mister Wong et cetera lässt sich mit dem Protokoll bequem automatisieren. Der Nachteil bei dem Ganzen ist, dass noch nicht alle Dienste dieses Protokoll benutzen, insbesondere auch Facebook nicht. Dennoch hat OExchange mit Google und Microsoft schon zwei namhafte Unternehmen, die das Protokoll unterstützen.

(tm), (mm),

Von Denis Potschien

Denis Potschien ist seit 2005 freiberuflich als Kommunikationsdesigner tätig, seit Anfang 2010 im Kreativkonsulat in Iserlohn, einem Büro für Gestaltung und Kommunikation. Dort betreut er kleine und mittelständische Unternehmen ebenso wie kommunale Körperschaften und Organisationen aus Südwestfalen und dem Ruhrgebiet.

Als Webdesigner und -entwickler gehören HTML5 und CSS3 zu seinen Kernthemen, weshalb er dazu 2013 ein Buch geschrieben hat. „Pure HTML5 und CSS3“ richtet sich an alle, die Vorkenntnisse haben, sich aber bisher mit HTML5 und CSS3 nicht oder nur am Rande beschäftigt haben.

Eine Antwort auf „OExchange: Offenes Protokoll zum Link-Sharing“

*Sarkassmus an*

Sollte man sich nicht überlegen, ob es nicht bald mal Sinn macht die ganzen verschiedenen Communities zusammen zu legen?
Oder besser noch, bei einem angemeldet, bei allen angemeldet?

*Sarkassmus aus*

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.