Der Erfolg von Technologien und Konzepten hängt von zahlreichen Faktoren ab. Die Genialität eines Entwurfs ist dabei häufig weniger entscheidend, als zum rechten Zeitpunkt die richtige Idee zu haben. Aber auch der Ursprung eines Konzepts kann sich gravierend auswirken. Die unter dem Begriff Syndication zusammengefassten Technologien tun im Grunde bisher nicht viel mehr, als kurze Informations-Extrakte eines Webangebots im Textformat für Clients zum Abruf bereitzuhalten. Ein solches Konzept verfolgte auch das von Microsoft entwickelte Channel Definition Format (CDF) und die darauf aufbauenden Channels, die mit dem Internet Explorer 4.0 eingeführt wurden. Diese sollten es großen kommerziellen Anbietern ermöglichen, dem PC-Anwender Informationen auf den Desktop zu liefern. Dies wurde allerdings damals von den Anwendern nicht angenommen. Heutzutage bieten die meisten Informationsanbieter, angefangen vom Nachrichtenmagazin über Boulevardzeitungen bis zu Fernsehsendern, in Form von RSS-Feeds einen solchen Service an. Somit wurde der Idee auch im kommerziellen Bereich ein später Erfolg beschert, wenn auch nicht auf Basis von Microsofts CDF.
Genau genommen wurde RSS ursprünglich von Netscape nicht zuletzt als Reaktion auf das Channel Description Format von Microsoft entwickelt, um Angebote vom eigenen Internetportal auf den Client-Desktop zu bringen. Als zweiter Urheber werden Dave Winer und seine Firma Userland angesehen, der bereits vorher eine Beschreibungssprache namens ScriptingNews entwickelt hatte. ScriptingNews floss später in die RSS-Spezifikation ein. Mit dem Ende der Firma Netscape als eigenständigem Technologieunternehmen wurde RSS dann von Dave Winer und anderen weitergeführt. Interessanterweise finden sich heute unter den Portalen der Marke Netscape keine RSS-Angebote mehr. Microsoft wiederum will RSS in vielen kommenden Softwareprodukten als eine der zentralen neuen Technologien unterstützen.
Funktionsweise
Syndication, in den verschiedenen dafür verwendeten Formaten und Standards, baut immer auf Textdateien im XML-Format auf. Listing 1 zeigt ein einfaches, generisches Beispiel einer RSS 0.91- Datei. Sie besteht aus der Beschreibung eines Informationskanals (Channel). Nach einigen Tags, die allgemeine Informationen zum Thema, Urheber oder die unvermeidliche Werbung für die verwendete Software enthalten, folgt eine Liste mit Meldungen (Items). Die Items beinhalten in der einfachsten Formatvariante nur einen Titel (Title), Webverweis (Link) und gegebenenfalls eine Beschreibung (Description). Die allgemeinen Tags des Channels können auch komplexere Formate wie ein Logo-Bild beinhalten.
Die XML-Datei muss laufend vom verwendeten Content-Management des Webservers aktualisiert werden. Ein Client, der dann den betreffenden RSS-Feed abonniert, ruft in regelmäßigen Abständen die XML-Datei ab und zeigt gegebenenfalls Änderungen, d.h. neue Nachrichten an. Diese Client-Pull-Technik hat die gleichen Nachteile, wie man sie vom entsprechenden Vorgehen im E-Mail-Bereich kennt, beispielsweise bei Verwendung von POP3. Der Client muss häufig umsonst die XML-Datei abrufen, und wenn diese tatsächlich geändert wird, bemerkt der Client es erst mit einiger Verzögerung. Die Einführung von Push-Techniken wird von verschiedenen Anbietern immer mal wieder versucht, zum Beispiel bei MSN. Dies beruht aber zwangsläufig auf individuellen Ansätzen.
Listing 1: RSS-Beispiel im Formatversion 0.91
<?xml version="1.0" encoding="ISO-8859-1" ?>
<rss version="0.91">
<channel>
<title>RSS Beispiel</title>
<link>http://www.experts-inside.de</link>
<description>RSS-Beispiel</description>
<managingEditor>inside@holgerkattner.de</managingEditor>
<image>
<title>RSS Beispiel</title>
<url>http://www.experts-inside.de/images/logo.jpg</url>
<link>http://www.experts-inside.de</link>
<description>RSS-Beispiel</description>
</image>
<item>
<title>RSS Meldung 82</title>
<link>http://www.experts-inside.de/shw.php?i=82</link>
<description>Beispieleintrag</description>
</item>
<item>
<title>RSS Meldung 81</title>
<link>http://www.experts-inside.de/shw.php?i=81</link>
<description>Beispieleintrag</description>
</item>
</channel>
</rss>
Häufig wird vom Anbieter der Client-Software eine Serverkomponente dazwischengeschaltet. Sie soll dem Anwender verschiedene Komfortfunktionen bereitstellen, wie beispielsweise die Verwaltung seiner Abonnements unabhängig vom Endgerät oder das einfachere Auffinden von interessanten Feeds.
Protokollvarianten
Leider hat sich im Bereich Syndication eine ganze Reihe paralleler Protokolle entwickelt. Die wechselhafte Geschichte gerade von RSS ist dadurch bedingt, dass das Konzept von verschiedenen Anbietern aufgegriffen und an ihre jeweiligen Bedürfnisse angepasst wurde. Dabei gelang es aber meist nicht, das Protokoll zu einem anerkannten Standard werden zu lassen. RSS ist deshalb keine Folge von aufeinander aufbauenden Versionen, sondern stellt eine Reihe teilweise paralleler Entwicklungen dar. Die verworrene Entwicklungsgeschichte zeigt sich auch daran, dass das Kürzel RSS je nach Version unterschiedlich interpretiert wird. Ursprünglich stand RSS für RDF Site Summary, dann Rich Site Summary und schließlich Really Simple Syndication.
Die wichtigsten Protokolle des Bereichs Syndikation sind:
-
RSS 0.91: Die erste von Netscape entwickelte Variante. Es gibt noch eine Vorgängerversion 0.90, die aber so gut wie nicht mehr eingesetzt wird. Sie unterscheidet sich im Wesentlichen durch Fehlen der Beschreibung für einzelne Items.
-
RSS 0.92-0.94: Das Unternehmen Userland hat schon früh einen RSS-Client entwickelt (Radio Userland) und anschließend eine ganze Reihe eigener Fortentwicklungen des RSS-Formats betrieben. Sie basieren auf der Netscape-Version 0.91. Im Grunde ist hier aber nur die Version 0.92 von Bedeutung, da 0.93 und 0.94 eher inoffizieller Natur waren.
-
RSS 1.0: Netscape hatte RSS teilweise auch in Zusammenarbeit mit der Standardorganisation W3C entwickelt. Dies geschah in Hinblick auf das RSS-übergeordnete Resource Definition Framework (RDF). RDF widmet sich allgemein den Möglichkeiten des Informationsaustausches mittels XML-Formaten. Diese Kooperation führte zu der Version RSS 1.0, die auf die Arbeit einer freien Expertenkommission der W3C zurückgeht. Charakteristisch für diese Version ist eine striktere Unterteilung in Kopfdaten mit den allgemeinen Informationen und den eigentlichen Listeneinträgen. Version 1.0 bietet neben zusätzlichen Elementen vor allem die Möglichkeit, eigene Tags zu definieren, wenn auf ein entsprechendes Definitionsdokument (Namespace) verwiesen wird. Im Kopf der XML-Datei können dabei mehrere Erweiterungen referenziert werden.
-
RSS 2.0: Parallel zu den Arbeiten der W3C hat Dave Winer seinerseits eine größere Überarbeitung des eigenen RSS-Formats vorgenommen. Das Produkt ist unter der Versionsnummer 2.0 bekannt und wurde als Version 2.0.1 von der Harvard Universität veröffentlicht (www.blogs.law.harvard.edu/tech/rss). RSS 2.0 basiert auf der Userland Version 0.92 und ist mit den Userland-Varianten 0.91 und 0.92 abwärtskompatibel. RSS 2.0 ist nicht kompatibel zu Version 1.0. Allerdings wurden einige Ideen wie etwa die Erweiterungsmöglichkeit übernommen.
-
RSS 3.0: Eine weitere Initiative zur Fortentwicklung von RSS, die auf RSS 2.0 aufbaut (www.rss3.org).
-
Extended RSS: Wie so oft, wenn Microsoft eine Technologie für sich entdeckt, nimmt sich das Unternehmen auch RSS vor und reichert es durch einige eigene Erweiterungen an. Wichtig sind zum jetzigen Zeitpunkt vor allem die so genannten Simple List Extensions, die es ermöglichen sollen, die in den RSS-Dateien enthaltenen Listen besser zu verarbeiten. (www.msdn.microsoft.com/windowsvista/building/rss/simplefeedextensions/).Auf diese Weise kann der Autor eines RSS-Feeds Gruppierung und Sortierung der RSS-Einträge vorgeben. Diese neuen Funktionen sind allerdings Erweiterungen zur Version 2.0 und somit in diesem Fall formatkonform. Auch andere größere Firmen haben sich Erweiterungen von RSS ausgedacht. Beispielsweise definiert Yahoo eine Media RSS genannte Erweiterung zur Bereitstellung von multimedialen Inhalten (www.search.yahoo.com/mrss).
-
Atom: Die Entwicklung des RSS-Formats war bis heute verschiedenen privaten Interessen unterworfen. Damit ist es bislang nicht möglich gewesen, einen allgemein anerkannten Standard zu erreichen. Als Reaktion darauf hat die für viele Internet-Standards zuständige Internet Engineering Taskforce (IETF) das Atom-Format geschaffen. Es wurde Mitte 2005 in der Version 1.0 veröffentlicht. Vielfach ist auch noch die Entwicklungsversion 0.3 anzutreffen, die 1.0 vorausging(www.atomenabled.org/).
Für die Anwender stellt sich bei der Vielzahl der Formatvarianten mal wieder die Frage, welche Version jeweils verwendet werden soll. Allerdings beantwortet sie sich meist von allein. Für denjenigen, der einen RSS-Feed bereitstellen will, wird die RSS- oder Atom-Version zumeist von der verwendeten Content Management-Software vorgegeben. Auch wenn die Entscheidung der Softwarebeschaffung noch nicht geklärt ist, wird die Frage der RSS-Versionsunterstützung in den seltensten Fällen hiefür relevant sein.
Auf der Clientseite unterstützt ein Großteil der Lesesoftware alle gängigen Formate. Durch vorhandene XML-Funktionsbibliotheken und Technologien wie XLST lassen sich XML-Formate sehr einfach verarbeiten. Hierdurch können Entwickler von Client-Software die verschiedenen Formate ohne allzu großen Aufwand implementieren.
Wenn ein Client RSS 2.0 unterstützt, bedeutet dies allerdings noch nicht, dass er auch sämtliche Erweiterungen versteht. Ähnlich wie bei HTML üblich werden auch hier unbekannte Tags einfach ignoriert. Die Erweiterungsmöglichkeit von Version 1.0 und 2.0 erlauben eine schrittweise Fortentwicklung des Formats, ohne dass ein neuer Standard definiert werden muss. Erweiterungen, die von allgemeinem Interesse sind, werden von alleine größere Verbreitung in den verschiedenen Clients finden.
Mittlerweile werden Syndication-Technologien zunehmend zur Verbreitung anderer Medien, jenseits einfachen Textes, eingesetzt. Beispielsweise erfreuen sich Fotoblogs heutzutage großer Beliebtheit. Die Integration von Bildern und anderen Medienarten muss dabei nicht zwangsläufig auf die Verwendung von RSS-Erweiterungen hinauslaufen. Die Verwendung des HTML-Formats unter Verwendung von verknüpften Bildern in der Item-Beschreibung ist mittlerweile üblich, auch wenn dies in der RSS-Spezifikation nicht ausdrücklich vorgesehen ist. Diese Funktion ist nur in Atom im Standard enthalten. In RSS besteht immer die Gefahr, dass die Client-Software nicht klar zwischen HTML- und XML-Tags unterscheiden kann.
Client-Unterstützung
Syndication-Technologien haben ursprünglich durch die Webtagebücher einzelner Internetnutzer Verbreitung gefunden. Client-Software entstand deshalb zuerst bei kleineren Softwarefirmen und einzelnen Entwicklern. Die größeren IT-Firmen greifen diesen Trend erst nach und nach auf. Mittlerweile verfügen beispielsweise die alternativen Browser Firefox, Netscape und Opera über Funktionen zum Abonnieren und Lesen von RSS-Informationen. Der Internet Explorer wird in der kommenden Version 7 nachziehen.
Als zentrale Kommunikations- und Informationsplattform bietet sich Outlook besonders zum Lesen von RSS an. Eine ganze Reihe von Softwareherstellern hat dies erkannt und entsprechende Add-Ins entwickelt. Sie speichern die RSSDaten entweder in einer eigenen Ordnerstruktur oder unter einem bestehenden Ordner ab. Einige beispielhafte Produkte aus diesem Bereich sind:
-
Newsgator for Outlook (www.newsgator.com):Ein weit verbreitetes RSS-Add-In, das mit einem Online-Dienst zusammenarbeitet, um so konsistente Feed-Verwaltung über verschiedene Clients zu gewährleisten. Dafür fallen monatliche Gebühren an.
-
Attensa (www.attensa.com): Ein relativ neu auf den Markt gekommenes Add-In, das die RSS-Verwaltung in ein eigenständiges Modul auslagert, was die Leistung verbessern soll. Beruht ebenfalls auf einem monatlichen Gebührenmodell.
-
RSS Popper (www.rsspopper.blogspot.com/2004/10/home.html): Kostenloser Outlook-Client mit Internet Explorer-Integration.
-
intraVnews (www.intravnews.com): Kommerzielles Add-In ohne monatliche Gebühren und mit kostenloser privater Nutzung bei Aktivierungszwang.
RSS auf dem Server
RSS-Feeds lassen sich durch die verschiedenen Outlook-Plug-Ins lesen. Was noch fehlt ist die Möglichkeit, Exchange-Daten per RSS abrufbar zu machen. Hierfür würden sich vor allem die öffentlichen Ordner als Kooperationsplattform anbieten. Leider gibt es bisher kaum entsprechende Angebote.
Ein australischer Entwickler namens Glen Scales hat sich dieses Problems angenommen (www.gsexdev.blogspot.com). Er stellt in seinem Blog ein Skript zur Verfügung, das die genannte Funktion liefert. Das Programm arbeitet als ereignisgesteuertes Skript auf Basis des optionalen Event-Scripting für öffentliche Ordner. Jedes Mal, wenn eine Nachricht gespeichert wird, wird eine XMLDatei im RSS-Format in einem Verzeichnis des Internet Information Server generiert, die von RSS-Clients abgerufen werden kann.
Leider ist dieses Skript ist etwas schwierig zu installieren. Zudem ist problematisch, dass neben dem IIS auch das Event-Scripting für öffentliche Ordner auf dem Server installiert sein muss. Diese Komponente kann ein Sicherheitsrisiko sein und auch die Verfügbarkeit des Servers beeinträchtigen. Weitere Informationen zu diesem Thema finden sich beispielsweise in dem Artikel „VBScript in öffentlichen Ordnern“ in Inside Windows NT/2000+Exchange 1/2005.
Im genannten Entwickler-Blog finden sich noch eine ganze Reihe anderer Anwendungen von RSS, zum Beispiel eine Abwandlung des oben beschriebenen Skripts zur Bereitstellung von Kalenderinformationen oder ein Feed-Generator für Message-Tracking-Protokolle oder ausgehende E-Mails.
Microsofts Pläne zu RSS
Blogs von Microsoft-Mitarbeitern gibt es bereits seit langem. Seit geraumer Zeit ist diese Art der Herausgabe inoffizieller Informationen wohl auch Teil der eigenen Marketing-Maschinerie geworden, die präzise steuert, über welche Themen geschrieben werden darf. In den Produkten von Microsoft wird RSS von Haus aus dagegen noch nicht unterstützt. Für die nächsten Softwareversionen wird das Unternehmen dies aber nachholen. Die Pläne sehen eine sehr umfassende Unterstützung von Syndication vor. Vieles, was sich in Listen darstellen lässt, soll dann auch über RSS abrufbar werden. Zu diesem Zweck wurde eine Zusammenarbeit mit Dave Winer gestartet, um die eigenen Vorstellungen möglichst allgemein zugänglich zu machen. Nebenher wurden beispielsweise mit den List Extensions eigene Erweiterungen geschaffen.
Die kommende Version 7 des Internet Explorer wird deshalb einerseits die Funktionen der Konkurrenzprodukte übernehmen, gleichzeitig wird er wohl eine umfangreiche Unterstützung von RSS-Erweiterungen zur Bereitstellung multimedialer Feeds bieten.
Da RSS-Informationen von verschiedenen Anwendungen genutzt werden können, hat Microsoft die Funktionen zur Verwaltung, Synchronisation und Speicherung von RSS-Abonnements auf Betriebssystemebene verlagert. Windows Vista wird über eine Komponente namens RSS Platform verfügen, die diese Aufgabe übernimmt. Diese Softwarekomponente wurde als Teil der neuen Internet Explorer-Version entwickelt und wird damit wahrscheinlich als Teil von IE7 auch für Windows XP verfügbar sein.
Auf der Serverseite wird Exchange 12 nach heutigem Stand wohl keine RSS-Funktionen mitbringen. Die öffentlichen Ordner, die sich als Workflow-Technologie hierfür anbieten würden, sollen eingemottet werden. Sie werden deshalb nicht mehr weiterentwickelt. An deren Stelle soll Sharepoint als primäre Plattform der Online-Zusammenarbeit treten. Dieses Produkt wird in seiner nächsten Version dann auch RSS-Unterstützung im Lieferumfang enthalten. Nutzer können sich dann über Änderungen an Sharepoint-Sites über RSS-Feeds auf dem Laufenden halten. Diese Funktion wird nach aktuellen Plänen wohl Bestandteil der Basisversion, also der Windows Sharepoint Services v3 sein.
Outlook wird mit der kommenden Office-Version 2007 ebenfalls von Haus aus über eine RSSLesefunktion verfügen. Da Microsoft bei Entwicklung der RSS Platform recht viel Aufwand betrieben hat, wird die darauf aufbauende Outlook-Funktion hinsichtlich Komfort und Umfang mit den heute verfügbaren kommerziellen Add-Ins vergleichbar sein.
Zusammenfassung
Syndication findet langsam seinen Weg aus den privaten Web-Tagebüchern in die betriebliche ITUmgebung. Nachdem die Browserkonkurrenz mittlerweile über RSS-Lesefunktionen verfügt, hat auch Microsoft die Technologie für sich entdeckt. RSS wird als zentrale neue Funktion direkt in das Windows Vista-Betriebssystem integriert sein.
Für Exchange-Anwender ist Syndication vor allem als Client-Anwendung interessant. Zum jetzigen Zeitpunkt ermöglichen verschiedene Add-Ins von Drittanbietern das Abonnieren und Lesen von RSS-Feeds im Internet. Die kommende Outlook-Version wird bereits über einen integrierten RSS-Leser verfügen.
Auf Seiten des Servers gibt es im Lieferumfang keine RSS-Unterstützung, wohl auch nicht in der nächsten Version. Das Bereitstellen von RSS-Feeds bleibt anderen Produkten wie beispielsweise den kommenden Windows Sharepoint Services v3 vorbehalten. Exchange-Daten lassen sich nur durch Zusatzprogramme per RSS anbieten.