Tim Tepaße: Namensräume in RSS 2.0 (und ein paar Sätze über Atom)

Beitrag lesen

Hallo Herr,

Wie meinst Du das genau mit den Namensräumen? Kannst Du mir vielleicht ein
Beispiel eben oder mir sagen, wo ich mir das ansehen und durchlesen soll?

In Kürze: In XML kann man verschiedene XML-Formate zusammenfassen bzw.
einbinden. Damit man diese dann nicht verwechselt, gibt es Namensräume.
Siehe auch http://selfhtml.teamone.de/xml/regeln/namensraeume.htm

In RSS sieht das nun so aus, daß man seit RSS 2.0 seinen Feed um neue,
nicht in der RSS-Spezifikation stehende Elemente erweitern kann, wenn
man diese über Namensräume einbindet. Das ist nicht gerade Rocket Science,
RSS 1.0 (Ein ganz anderes Format, trotz des Namens) macht das auch. Sieht
dann ungefähr so aus:

dc:date2004-02...</dc:date>

"date" ist hier ein Element aus dem Dublin Core Namensraum, einem mehr oder
weniger Standard für Metadaten von Dokumenten. Der Namensraum wird dann
durch das "dc:" bezeichnet.

Was ich eigentlich meinte: Man soll natürlich nicht nun auf Namensräume
verzichten. Ein Newsreader sollte damit umgehen können bzw. die Elemente
aus anderen Namensräumen, die er nicht kennt ignorieren. Nun gab es Mitte
2003 den Trend, Namensräume in RSS 2.0 Feeds so zu benutzen, daß bestimmte
Elemente aus dem RSS 2.0 Standard durch ein Element aus dem DC-Namensraum
ersetzt wurden. Konkret zum Beispiel <pubDate> durch dc:date. Aus was
für Gründen aus immer. Die Voreinstellungen von Movable Type machen das
zu Beispiel. Beachte: Das ist durchaus legitim, <pubDate> ist ein optionales
Element eines Feeds nach RSS 2.0. Nur: Man kann nicht verlangen, daß ein
Feedreader jedes noch so absurde Element unterstützt. (Wobei Dublin Core
vieles, aber nicht obskur ist, ja)

Weswegen ich dann die Schlußfolgerung ziehe, daß man, wenn in der RSS 2.0
Spezifikation schon ein passendes Element existiert, man dieses nutzen
sollte und nicht etwas aus einem Namensraum. Man sollte also die
Verhältnismäßigkeit beachten, damit Feedreader auch noch etwas mit dem
Feed anfangen können. Das meinte ich mit meinem arg verkürzten Posting.

Nebenbei: Was passiert nun, wenn ein Feedreader auf zwei konkurrierende
Elemente stößt? Die Spezifikation sagt darüber nichts aus, auch sonst
ist die RSS 2.0 Spezifikation eine sehr schwache Spezifikation, die zu
Mißverständnissen einlädt. Und um den oben skizzierten Streit entwickelte
sich dann eine größere Kontroverse, angefangen damit, daß Dave Winer, der
Autor und frühere »Besitzer« von RSS 2.0, solche Feeds generell mit dem
technischen Fachwort »funky« belegte. DW ist sowieso ein etwas schwieriger
Mensch. Diese Kontroverse führte dann dazu, daß viele andere anfingen, ein
neues Format für Newsfeeds zu entwickeln. Inzwischen heißt es Atom und
befindet sich auf dem guten Weg zu einem RFC, das heißt einem Standard
des Internetzes. Man sollte sich zumindest mal darüber informieren, wenn
man solche Formate auch in Zukunft benutzen will, viele größere Player
unterstützen dieses Format.

(Und über deren zweite Entwicklung, der jetzt wieder stark kontroversen
Atom API erzählt Onkel Tim ein anderes Mal. Vieles ist auch nur ein
langweiliger Schwanzvergleich unter Entwickler.)

Tim