Herr Rossi: Frage zu RSS-Feed Generierung

Tag zusammen! =)

Ich fange gerade an, mich mit dem RSS-News-Feed-System zu beschäftigen, da ich beim kompletten Relaunch meines weblogs im kommenden Sommer sowas anbieten möchte.

Da ich die Seiten mit php und mysql selbst schreibe und keine blogsoftware verwende, habe ich deshalb auch kein automatisches RSS-System dabei.

Ich würde jetzt gerne wissen, wie und ob man sowas mit php verwirklichen kann. Was mir nämlich unklar ist : Sobald ich es mit php mache, hat die Seite ja die entsprechende php-Endung. Ist das kein Problem oder MUSS die Seite eine xml-Endung haben?

Php wäre ja super, weil ich da einfach die letzten 10 Überschriften der Artikeln aus der Datenbank auslesen könnte und diese dann als items für die RSS-Seite verwenden könnte. Die Frage ist nur, ob das geht.

Beim Googeln habe ich nicht wirklich was gefunden, was mir weitergeholfen hat. Weiß von Euch wer Seiten, wo ich mich da weiterbilden kann? In welche Richtung muß ich da gehen, um mein Ziel zu verwirklichen?

Ich habe heute Vormittag zum ersten mal eine Seite gefunden, wo so ein RSS-Feed NICHT mit xml endet : Auf http://www.zdnet.de/service/feeds.htm findet man folgende 2 Feeds :

http://www.zdnet.de/feeds/news/xml/rss_h5.xml.htm und
http://www.zdnet.de/feeds/news/xml/rss_h20.xml.htm

Und hier sind es html Endungen. Das würde ja wieder dafür sprechen, daß eine php Endung auch OK ist. WIe gesagt, beim Thema RSS bin ich völliger Anfänger und über jeden Hinweis und jede Hilfe dankbar.

Grüße und Danke im Voraus!

Rossi =)

  1. Hallo Herr,

    Sobald ich es mit php mache, hat die Seite ja die entsprechende php-Endung.
    Ist das kein Problem oder MUSS die Seite eine xml-Endung haben?

    Nein, muß sie nicht. Das ist wie mit HTML, HTML-Seiteb brauchen auch nicht
    auf .htm oder .html zu enden, das ist nur eine Konvention, die sich daraus
    ergeben hat, daß die meisten Webserver den URI-Baum einer Domain auf das
    Dateisystem übersetzen.

    Genauso ist das mir RSS, das kann unter http://example.org/rss oder
    unter http://example.org/rss.xml oder auch unter so offenkundlich
    idiotischem wie http://example.org/index.php?lastitems=10&mode=rss
    liegen. Es gibt meines Wissens keinen offiziellen registrierten MIME-Typen
    für RSS (So wie es text/html für HTML wäre), allerdings wird überall
    application/rss+xml genutzt. Wobei das eigentlich falsch wäre.

    Php wäre ja super, weil ich da einfach die letzten 10 Überschriften der
    Artikeln aus der Datenbank auslesen könnte und diese dann als items für die
    RSS-Seite verwenden könnte. Die Frage ist nur, ob das geht.

    Jepp. Beachte aber, daß ein RSS-Item auch aus mehr bestehen kann, so
    zum Beispiel eine Angabe des Datums und eine Description. Gerade bei
    Weblogs geht der Trend dahin, den kompletten Weblogeintrag komplett
    im <description> zu haben.

    Beim Googeln habe ich nicht wirklich was gefunden, was mir weitergeholfen
    hat. Weiß von Euch wer Seiten, wo ich mich da weiterbilden kann? In welche
    Richtung muß ich da gehen, um mein Ziel zu verwirklichen?

    Öhm, was suchst Du denn genau? Den RSS Standard? Der von RSS 2.0 liegt
    hier herum: http://blogs.law.harvard.edu/tech/rss
    PHP-Module? Guck mal bei PEAR, da dürfte genug rumfliegen. Allerdings
    willst Du wohl alles selber machen? ;-)

    Tim

    1. Moin,

      Öhm, was suchst Du denn genau? Den RSS Standard?

      Wobei dann noch zu klären wäre _welchen_ RSS-Standard. ;-)
      Ein bisschen zur Abschreckung: http://diveintomark.org/archives/2004/02/04/incompatible-rss

      --
      Henryk Plötz
      Grüße aus Berlin
      ~~~~~~~~ Un-CDs, nein danke! http://www.heise.de/ct/cd-register/ ~~~~~~~~
      ~~ Help Microsoft fight software piracy: Give Linux to a friend today! ~~
      1. Hallo Henyrk,

        Wobei dann noch zu klären wäre _welchen_ RSS-Standard. ;-)
        Ein bisschen zur Abschreckung: http://diveintomark.org/archives/2004/02/04/incompatible-rss

        <schwanzvergleich>
        Ich lametiere schon sehr viel länger über RSS als Du.
        </schwanzvergleich>

        ;-)

        Ich würde aber immer nur RSS 2.0 ohne zusätzliche Namensräume empfehlen.
        Es ist simpler als RSS 1.0 und man spart sich ein rumgemurkse mit den
        0.9x-Versionen. Und durch den Verzicht auf Namensräume spart man sich
        eventuelle Konflikte mit Feedreadern.

        Tim

        1. Ich würde aber immer nur RSS 2.0 ohne zusätzliche Namensräume empfehlen.
          Es ist simpler als RSS 1.0 und man spart sich ein rumgemurkse mit den
          0.9x-Versionen. Und durch den Verzicht auf Namensräume spart man sich
          eventuelle Konflikte mit Feedreadern.

          Tim

          Hi Tim! =)

          Na da ist ja schon mal was, woran ich mich halten kann. Danke für die Info. 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?

          Grüße

          Rossi =)

          1. 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

            1. Hi Tim! =)

              Vielen Dank für Deine Mühe, dies so ausführlich darzustellen. Das war echt informativ. Ich werde das Ganze jetzt mal verdauen und dann mit den Stichworten, die ich da heute so bekommen habe, zu googeln beginnen, um das Ganze zu verstehen und  zu erlernen. Habe je noch ein paar Monate bis zum Relaunch, wo ich RSS dann anbieten möchte.

              Danke nochmals und einen schönen Abend!

              Rossi =)

            2. Hallo Tim,

              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.

              Wobei das ganze RSS 2.0 Tohuwabohu auf seinem Mist gewachsen ist.
              Ich lehne zwar RSS 2.0 nicht generell ab, aber ich mag es überhapt nicht.

              DW ist sowieso ein etwas schwieriger Mensch.

              Etwas?? ;-)

              Grüße
              Thomas