menu
Logo zum aktuellen Thema
Informatik > webtechnologien > RSS

RSS

Allgemein

RSS ist auf XML basierendes Nachrichtenformat und entspricht XML 1.0. Weitere Informationen zu XML findet man hier auf den Seiten vom W3C. RSS ist ein Akronym für "Really Simple Syndication". Die sogenannte RSS-Feeds enthalten Teaser aus Artikeln um den Leser dazu zu bewegen die entsprechende Seite aufzurufen.

TYPO3

Der Vorteil von RSS-Feeds sind die einfache Verarbeitung für RSS-Reader (Firefox, Thunderbird, etc.) oder für die eigene Website. Feeds können auch schnell und einfach erstellt werden. Mit einem XML-Parser ist es auch kein Problem einen Feed entsprechend auszulesen. Viele CMS bieten an Artikel in RSS oder ähnliche Formate zu übersetzen. Es gibt auch viele Plugins für CMS´s umd Feeds einzubinden.Für TYPO3 gibt es eine große Ausßwahl: https://typo3.org/extensions/repository/?id=23&L=0&q=rss

Hier ein paar populäre Feeds:

Es gibt sonst auch ein umfangreiches Angebot verschiedener Feeds unter: http://www.rss-verzeichnis.net/

Aufbau

Ein RSS-Feed besteht aus einem channel-Elmeent und mehreren item-Elementen. Wobei item und channel jeweils noch einige Pflichtelemente besitzen und mehrere variable.


<?xml version="1.0"?>
<rss version="2.0">
<channel>
<title>W4F - Newsletter</title> <link>http://www.wissen4free.org/</link> <description>Newsfeed von Wissen4Free Nerdportal.</description> <item> <titlegt;RSS-Feeds;/titlegt; <link>http://www.wissen4free.org/informatik/webtechnologien/rss</linkgt; <description>Hier wird beschrieben, was RSS-Feeds sind, wie sie verwendet und erzeugt werden.;/description> </item> <item> ... </item> ... </channel>
<rss>

Ein weiters Beispiel: http://www.rssboard.org/files/sample-rss-2.xml

Pflichtelemente für das chennel-Element

Element Beschreibung
title Der Name des Kanals/Feeds.
link Das Element "link" enthält die URL zum Kanal.
description Hier wird eine kurze Beschreibung des Kanals eingetragen.

Optionale Elemente für das chennel-Element

Element Beschreibung Beispiel
language Angabe der Sprache. Hierbei werden Sprachcodes des W3C verwendet. Hier ein paar Beispiele:
  • "en": English
  • "en-US": the U.S. version of English.
  • "en-cockney": the Cockney version of English.
  • "i-navajo": the Navajo language spoken by some Native Americans.
  • "x-klingon": The primary tag "x" indicates an experimental language tag
Genauere Infos gibt es hier.
...<language>de-DE<language>...
copyright Angaben über das Urheberrecht. ...<copyright>Copyright 2017, Torsten Witt<copyright>...
managingEditor Angabe des verantwortlichen Redakteurs.
webMaster Angabe des verantwortlichen Webmasters. ...<managingEditor>Torsten@domain.de (Torsten Witt)<managingEditor>...
pubDate Datum der Veröffentlichung des Inhalts auf dem Kanal. ...<pubDate>Sat, 12 Jan 2017 18:00:00 GMT<pubDate>...
lastBuildDate Datum der letzten Änderung des Kanals. ...<lastBuildDate>Sat, 12 Jan 2017 18:00:00 GMT<lastBuildDate>...
category Gibt eine Kategorie an. Das Element kann mehrfach verwendet werden.
optionales Attribut: domain.
Das Element wird ebenfalls für Element item verwendet mit den gleichen Regeln wie für channel.
...<category>Umwelt<category>...
...<category domain="https://www.domain.com">Technik<category>...
generator Angabe des Programms, mit dem der Feed erstellt wurde. ...<generator>WordPress<generator>...
docs URL mit Verweis auf das verwendeten Format. ...<generator>http://www.rssboard.org/rss-specification<generator>...
cloud Hiermit können sich Prozesse mit einem cloudbasierten Dienst verbinden um über Neugikeiten des Kanals zu informieren. Dieser Dienst stellt eine rssCloud-Schnittstelle zur Verfügung. Dies kann mittels HTTP-POST, XML-RPC oder SOAP 1.1 realisiert werden. Mehr dazu unter: http://www.rssboard.org/rsscloud-interface. Das Element ist geschlossen und verfügt über folgende Pflichtattribute: domain, port, path, protocol. <cloud domain="rpc.sys.com" port="80" path="/RPC2" registerProcedure="pingMe" protocol="soap"/>
ttl Die sogenannte time to live gibt in Minuten an, wie lange ein Kanal gecached werden kann, bevor man ihn aktualisiert. <60>
image Hier wird ein Bild angegeben, dass für den Kanal steht. Es werden die Formate GIF, JPEG und PNG.
Es enthält folgende Pflichtelemente, keine Attribute: url, title, link
url: Die URL des Bildes.
title: Der Titel des Bildes. Er hat die gleiche Funktion wie ein alt-Attribute bei HTML.
link: Enthält den Link zur Webseite. Die Seite sollte aufgerufen werden, wenn man bei einem gerenderten Feed auf das Bild klickt. Es gibt folgende optionale Elemente: width, height, description.
width: Beschreibt die Breite. Der Maximalwert ist 144 Pixel und der Standardwert 88.
height: Gibt die Höhe in Pixel an. Maximalwert ist 400 und Standardwert 31.
description: Beiinhaltet Text der innerhalb des title-Elements angezeigt wird.
<image>
<url>https://www.domain.com/images/logo.png</url> <title>News Feed.</title> <link>https://www.domain.com</link> <width>144</width> <height>400</height> <description>Top breaking news.</description> </image>
rating Angabe der PICS-Bewertung.
textInput Definiert ein Eingabefeld. Es besteht aus folgende Pflichtelementen:
title: Beschriftung der Absendebuttons.
description: Beschreibung des Eingabefeldes
name: Name des Textobjektes im Eingabefeld.
link: URL zum vearbeitenden Skript.
<textInput>
<title>News Feed.</title> <description>Top breaking news.</description> <name></name> <link>https://www.domain.com</link> </textInput>
skipHours
skipDays

Pflichtelemente für das item-Element

Das item-Element kann innherhalb vom channel mehrfach vorkommen.

Element Beschreibung
title Der Name des Eintrages.
link Das Element "link" enthält die URL zum Artikel.
description Hier wird eine Beschreibung eingetragen, die möglichst kurz dem Leser vermittelt worum es in dem mittels link angegebenen angegebenen Artikel geht.

Optionale Elemente für das item-Element

Element Beschreibung Beispiel
author Hier wir die E-Mailadresse des Autors eingetragen bzw. dessen Namen. <author>autorname@domain.com (Vorname Nachname)</author>
category Hier wird der Name der Kategorie angegeben. Es kann zusätzlich das Attribut domain verwendet werden, um einen Link zur Kategorie auf der Website anzuzeigen bzw. zu einem speziellen Feeds zu der Kategorie. Das category-Element kann mehrfach verwendet werden. <category>no trump</category>
<category domain="http://www.somenews.com/politics">politics</category>
comments Das comments-Element beinhaltet eine URL für Kommentare zu dem Artikel. <comments>https://somenews.com/article/1231234#comments</comments>
enclosure Mit enclosure beschreibt ein Anhang in Form von Audio oder Video. Dazu sind folgende Attribute notwendig:
url: URL zu der Datei.
length: Größe in Bytes.
type: Gibt den MIME-Type.
<enclosure url="https://somenews.com/files/interview-34234234232.mp3" length="654623346" type="audio/mpeg" />
guid Enthält einen String bzw. eine einzigartige und dauerhafte URL zum Artikel. <guid>https://guid.somenews.com/e3253453453lk345lk3453</guid>
pubDate Datum der Veröffentlichung. <pubDate>Sun, 19 May 2017 15:21:36 GMT</pubDate>
source Source enhält als Wert den Namen des Kanals abhängig vom Inhalt des title-Elements von channel. Das Pflichtattribut url enhält die URL zur XML-Variante der Quelle. <source url="http://www.somenews.com/links2.xml">Some News</source>

Validierung

Bei selbst erstellten Feeds ist es hilfreich, die validieren zu können. Hierfür gibt es auch einen Onlinedienst: http://www.rssboard.org/rss-validator/.

Quellen

  • letzte Änderung: 2017-02-08 17:42:12
  • Autor: Torsten Witt
Facebook