Anton: Betrachtung von XML Datein

Guten Morgen Forum,

Egal ob ich Mozilla, Firefox oder IE benutze, ich sehe immer den Quelltext anzegeigt, wenn ich eine xml Datei öffne.
Sollte man nicht nur den Text zwischen den Tags angezeigt bekommen ?

  1. Egal ob ich Mozilla, Firefox oder IE benutze, ich sehe immer den Quelltext anzegeigt, wenn ich eine xml Datei öffne.
    Sollte man nicht nur den Text zwischen den Tags angezeigt bekommen ?

    Warum? Dann würde dir wertvolle Information über die Struktur des Dokuments verlorengehen.

    XML-Daten lassen sich aber mit CSS formatieren. Oder mit XSL transformieren in was immer du willst - auch in nur Text, wenn's denn so sein soll.

    Gunnar

    --
    "Nobody wins unless everybody wins." (Bruce Springsteen)
    1. Warum? Dann würde dir wertvolle Information über die Struktur des Dokuments verlorengehen.

      Warum denn das? Der ist doch im Quelltext und unter Ansicht/Quelltext einsehbar.

      XML-Daten lassen sich aber mit CSS formatieren. Oder mit XSL transformieren in was immer du willst - auch in nur Text, wenn's denn so sein soll.

      Also ich lese gerade ein XML Tutorial durch. Nur um das schon mal vorweg zu klären: OK, man kann die XML Datei mit XSl formatieren. Aber dann hat man immer noch die Tags. Wie will man die wegbekommen.

      Angenommen man hat:

      <message>blahblah
      </message>

      Wenn ich nun diesen Text mit XSL formatieren und ihm eine Position oben rechts gebe. Sehe ich dann im Browserfenster

      <message>blahblah
      </message>

      oben rechts angeordnet ? Wie bekommt man die Tags weg. Die werden ja in xhtml auch nicht angezeigt.

      1. Sollte man nicht nur den Text zwischen den Tags angezeigt bekommen ?

        Warum? Dann würde dir wertvolle Information über die Struktur des Dokuments verlorengehen.

        Außerdem steckt evtl. auch Information in den Attributwerten.

        Warum denn das? Der ist doch im Quelltext und unter Ansicht/Quelltext einsehbar.

        Wer macht schon gern ein paar Clicks mehr als nötig?

        Wenn ich nun diesen Text mit XSL formatieren und ihm eine Position oben rechts gebe.

        Nein. Du kannst mit XSL nicht layouten. Nicht oben rechts anordnen und nicht lila färben.

        Wie bekommt man die Tags weg.

        Indem du ein CSS erstellst. Oder indem du mit XSL nur den Elementinhalt in deine Ausgabe schreibst.

        Gunnar

        --
        "Nobody wins unless everybody wins." (Bruce Springsteen)
        1. Hallo Gunnar,

          Nein. Du kannst mit XSL nicht layouten. Nicht oben rechts anordnen und nicht lila färben.

          Mit XSLT nicht, mit XSLFO sehr wohl, auch wenn der Formatierungsteil von XSL nicht sehr bekannt ist und von den Browsern nicht unterstüzt wird. Aber zum erzeugen von PDF-Dateien soll das z.B. ganz brauchbar einsetzbar sein.

          Anton: Wenn Du XML mit CSS formatierst, wird der Quelltext nicht mehr dargestellt. (Für den IE muss man glaube ich alle Elemente formatieren um das zu erreichen)

          Grüße

          Daniel

          1. Hallo Gunnar,

            Nein. Du kannst mit XSL nicht layouten. Nicht oben rechts anordnen und nicht lila färben.

            Wozu ist XSLT dann gut. In ganz einfachen Worten (bin noch nicht so weit im Tutorial).

            1. Hi,

              Nein. Du kannst mit XSL nicht layouten. Nicht oben rechts anordnen und nicht lila färben.
              Wozu ist XSLT dann gut. In ganz einfachen Worten (bin noch nicht so weit im Tutorial).

              Versuch doch mal, nur per CSS aus einem beliebigen XML-Element ein Eingabefeld zu machen ...

              Manche Dinge sind eben nicht per CSS zu regeln.
              CSS beeinflußt nur das Aussehen der Elemente (Größe, Position, Farben, ...).
              Aber nicht deren Verhalten.

              Wenn so etwas benötigt wird, nutzt man XSLT (oder eine beliebige andere Umformungs-Sprache), um aus dem XML HTML zu machen - bei HTML weiß der Browser, daß ein input-Element sich wie ein Eingabefeld (oder Button/Checkbox/...) verhalten soll, bei beliebigen XML-Elementen weiß er es nicht (Ja, es gibt XForms, aber ich bezweifle, daß das in vielen Browsern funktioniert - es ist aber qualitativ in dieser Hinsicht nichts anderes als HTML, es wird vorausgesetzt, daß der Browser weiß, welches Verhalten die Formular-Elemente haben sollen).

              cu,
              Andreas

              --
              MudGuard? Siehe http://www.Mud-Guard.de/
              Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
              1. Hallo Andreas,

                Wenn so etwas benötigt wird, nutzt man XSLT (oder eine beliebige andere Umformungs-Sprache), um aus dem XML HTML zu machen - bei HTML weiß der Browser, daß ein input-Element sich wie ein Eingabefeld (oder Button/Checkbox/...) verhalten soll, bei beliebigen XML-Elementen weiß er es nicht (Ja, es gibt XForms, aber ich bezweifle, daß das in vielen Browsern funktioniert - es ist aber qualitativ in dieser Hinsicht nichts anderes als HTML, es wird vorausgesetzt, daß der Browser weiß, welches Verhalten die Formular-Elemente haben sollen).

                Vielen Dank. Jetzt habe ich eine ungefähre Idee was es mit diesem XSLT auf sich hat. Aber den Sinn oder besser Zweck verstehe ich nicht.

                Warum sollte man seine eigene XML Sprache erstellen, bzw. seine XML-Dateien mit XSLT formatieren wollen?

                Warum sollte man Element <hubikata> erstellen, dass durch XSLT zu einem Input Feld transformiert wird. Das versteht doch kein Browser. Die kenne doch alle nur html.

                Was wäre eine Anwendung für XML+XSLT ?

                1. Was wäre eine Anwendung für XML+XSLT ?

                  Die Darstellung von RSS-Feeds im Webbrowser.
                  Gunnar

                  --
                  "Nobody wins unless everybody wins." (Bruce Springsteen)
                  1. Hallo Gunnar,

                    Die Darstellung von RSS-Feeds im Webbrowser.

                    Aber da fragt man sich dann auch wieder wozu das gut sein soll?
                    Wer will sich neue Nachrichten in eingebetteten Tag anschauen, dann schon lieber als html formatiert (als html Seite).

                    1. Die Darstellung von RSS-Feeds im Webbrowser.

                      Aber da fragt man sich dann auch wieder wozu das gut sein soll?
                      Wer will sich neue Nachrichten in eingebetteten Tag anschauen,

                      Ein RSS-Reader (womit keine Person, sondern ein Programm gemeinet ist).

                      dann schon lieber als html formatiert (als html Seite).

                      Das könnte ein RSS-Reader nicht lesen.
                      Gunnar

                      --
                      "Nobody wins unless everybody wins." (Bruce Springsteen)
                      1. Hallo Gunnar,

                        Ein RSS-Reader (womit keine Person, sondern ein Programm gemeinet ist).

                        Also wie denn dann genau? Was ist der RSS-Reader. Ist das ein php Programm? Angenommen ich habe eine Webseite www.meineseite.de. Wie könnte ich dann von den auf selfhtml zur Verfügung gestellten RSS Datei profitieren ?

                        1. Hallo Anton,

                          Also wie denn dann genau? Was ist der RSS-Reader. Ist das ein php Programm?

                          Ein RSS-Reader ist ein Programm, das aus unterschiedlichen Quellen RSS-Resourcen
                          sammelt, diese wieauchimmer weiterverarbeitet und oft dem Nutzer auch als
                          GUI-Programm präsentiert. Das kann zum Beispiel ein PHP-Programm sein, daß
                          unterschiedliche RSS-Resourcen abruft, diese zusammenstellt und als HTML
                          an den Browser ausliefert. Es kann aber auch ein Programm für den Desktop
                          sein, beispielsweise mein RSS-Reader: http://tepasse.org/self/rss-reader
                          Es kann aber auch ein im Hintergrund laufendes Programm sein, daß einem
                          jeweils die aktuellste Schlagzeile des Heisenewstickers um die Ohren brüllt.

                          Angenommen ich habe eine Webseite www.meineseite.de. Wie könnte ich dann von
                          den auf selfhtml zur Verfügung gestellten RSS Datei profitieren ?

                          Du könntest Dir mit PHP ein Progrämmchen schreiben, daß den RSS-Feed von
                          uns hier runterlädt. Was könntest Du damit machen? Dein PHP-Skript könnte
                          auch andere RSS-Feeds runterladen und die jeweils aktuellen Nachrichten aus
                          den verschiedenen RSS-Feeds zusammenfassen und als HTML-Seite präsentieren.
                          Vielleicht für Dich privat als eigenen Online-RSS-Reader oder aber für die
                          Besucher Deiner Seite. Wobei ich letzteres recht schwachsinnig fände, auch
                          aus urheberrechtlicher Sicht ist das eher bedenklich.

                          Die Zusammenfassung (engl: Syndication) von Nachrichten war der ursprüngliche
                          Einsatzzweck von RSS, schließlich steht die Abkürzung RSS in einigen Versionen
                          für Really Simple Syndication.

                          Tim

                2. Hallo,

                  Warum sollte man seine eigene XML Sprache erstellen, bzw. seine XML-Dateien mit XSLT formatieren wollen?

                  Man kann fuer bestimmte Zwecke eigene XML-Dialekte formulieren, aber es gibt eben auch bereits viele "fertige" XML-Anwendungen wie XHTML, DocBook, SVG, CML, ...

                  Im Dokumentationsbereich wird z. B. DocBook verwendet. Damit kann man komplexe Werke schreiben und via XSLT/XSL-FO in Ausgabeformate wie HTML, PDF usw. publizieren (Single-Source-Publishing bzw. Cross-Media-Publishing).

                  Warum sollte man Element <hubikata> erstellen, dass durch XSLT zu einem Input Feld transformiert wird. Das versteht doch kein Browser. Die kenne doch alle nur html.

                  Das Ergebnis-Element input verstehen die Browser dann wieder.

                  Vielleicht bringt neben diversen Tutorials auch meine Vortragspraesentation "XML im Überblick" mehr Einblick in die Thematik:
                  http://www.et.fh-merseburg.de/person/meinike/PDF/XML-Vortrag-2004_Meinike.pdf (Vortrag)
                  http://www.et.fh-merseburg.de/person/meinike/PDF/XML-Vortrag-2004-Code_Meinike.zip (Beispiele)

                  MfG, Thomas

                  1. Hallo Thomas,

                    Im Dokumentationsbereich wird z. B. DocBook verwendet. Damit kann man komplexe Werke schreiben und via XSLT/XSL-FO in Ausgabeformate wie HTML, PDF usw. publizieren (Single-Source-Publishing bzw. Cross-Media-Publishing).

                    Also das finde ich SEHR interessant. Ist DocBook ein Programm oder ein Konzept? Hättest du mal einen Link? Ich möchte nämlich zur Psychologie ein "Werk" schreiben, weiß aber noch nicht ob in html, doc, xhtml, pdf, etc. ... Das könnte man aber dann noch später entscheiden, wie du ja sagst (mit XSLT transformieren).

                    http://www.et.fh-merseburg.de/person/meinike/PDF/XML-Vortrag-2004_Meinike.pdf (Vortrag)
                    http://www.et.fh-merseburg.de/person/meinike/PDF/XML-Vortrag-2004-Code_Meinike.zip (Beispiele)

                    Vielen Dank für die Resourcen. Werde sie mir _auf_jeden_Fall_ angucken.

                    1. Hallo,

                      Im Dokumentationsbereich wird z. B. DocBook verwendet. Damit kann man komplexe Werke schreiben und via XSLT/XSL-FO in Ausgabeformate wie HTML, PDF usw. publizieren (Single-Source-Publishing bzw. Cross-Media-Publishing).

                      Also das finde ich SEHR interessant. Ist DocBook ein Programm oder ein Konzept?

                      Eigentlich eine DTD genauer eine SGML/XML-Anwendung, aber hier können wir es einfachheitshalber auch als Konzept bezeichnen.

                      Es gibt dann Programme die es ermöglichen DocBook zu benützen (und die auf der DocBook DTD aufbauende Dateien dann in andere Formate zu transformieren).

                      Hättest du mal einen Link?

                      http://www.docbook.org/ Das Buch zu DocBook findest du auch online unter http://www.oreilly.com/catalog/docbook/chapter/book/docbook.html
                      http://wiki.docbook.org/topic/

                      Grüße
                      Thomas (der andere)

                      1. Danke! Die Links werde ich mir mal durchlesen.

                    2. Hallo,

                      Also das finde ich SEHR interessant. Ist DocBook ein Programm oder ein Konzept? Hättest du mal einen Link?

                      DocBook ist ein Dokumentationskonzept, welches urspruenglich als SGML-Anwendung konzipiert und mittlerweile auch als XML-DTD implementiert ist:
                      http://www.docbook.org/

                      Ich möchte nämlich zur Psychologie ein "Werk" schreiben, weiß aber noch nicht ob in html, doc, xhtml, pdf, etc. ... Das könnte man aber dann noch später entscheiden, wie du ja sagst (mit XSLT transformieren).

                      Mit der noetigen Einarbeitung sollte das prinzipiell machbar sein, aber ein solches Projekt ist anspruchsvoll und steinig (weniger das Schreiben, mehr die Umsetzung der XML-Dokumente in ein Layout mit XSL-FO ueber XSLT-Vorlagen).

                      Ich betreue gerade eine Diplomarbeit zum Thema DocBook, die vom Autor selbst in DocBook verfasst wird (Editor XMLmind) und via XSLT/XSL-FO (Saxon + FOP) druckreif umgesetzt wird. Dahinter steckt viel Arbeit und ein ueber mehrere Semester(!) gewachsenes Verstaendnis fuer die "XML-Technologiefamilie" und einer expliziten "hands-on-code"-Grundeinstellung.

                      Es gibt aber auch andere Ansaetze wie Arbeiten mit OpenOffice.org oder der XML-Schnittstelle von Adobe InDesign oder Word 2003 mit WordML, ...

                      MfG, Thomas

                      1. Danke! Werde mir das docbook mal anschauen.
                        Vielen Dank für all die Erklärungen.

                3. Hallo,

                  Aber den Sinn oder besser Zweck verstehe ich nicht.

                  Das glaube ich dir nicht ;-)
                  Du sagst selbst "Egal ob ich Mozilla, Firefox oder IE benutze, ich sehe immer den Quelltext anzegeigt, wenn ich eine xml Datei öffne."

                  Nun, du kannst mi Hilfe von XSLT "diese" XML zu HTML transformieren und das kann der Browser dann so darstellen wie es gewünscht ist.

                  Warum sollte man seine eigene XML Sprache erstellen, bzw. seine XML-Dateien mit XSLT formatieren wollen?

                  Damit du nicht nur den Quelltext angezeigt bekommst, sonder auch die Presentation dazu.

                  Warum sollte man Element <hubikata> erstellen, dass durch XSLT zu einem Input Feld transformiert wird. Das versteht doch kein Browser. Die kenne doch alle nur html.

                  Weil HTML Layout und Inhalt gleichermaßen enthält und HTML eben auf Bildschirm beschränkt ist. Es ist aber oft der Fall, dass man die  Informationen nicht außschließlich für den Bildschirm bereitstellen möchte. Außerdem es kann sehr mühsam sein bei Änderungen in HTML-Dateien (wo eben Layout und Information vermischt sind) arbeiten zu müssen.
                  XML enthält die Informationen. Willst du diese ändern, muss du nur im XML was machen.
                  Mit XSLT erstellst du das Layout, willst du dieses ändern, brauchst du nur das XSLT ändern ohne dass du die Informationen dabei anfassen müsstest.

                  Was wäre eine Anwendung für XML+XSLT ?

                  z.B.: http://httpd.apache.org/docs-2.0/index.xml vergleich  es mit http://httpd.apache.org/docs-2.0/index.html

                  Grüße
                  Thomas

                  1. Hall Thomas,

                    Nun, du kannst mi Hilfe von XSLT "diese" XML zu HTML transformieren und das kann der Browser dann so darstellen wie es gewünscht ist.

                    Der andere Thomas sagte man könnte die XML Dokumente dann mit XSLT in  xhtml, html oder .pdf verwandeln. Was ist denn dann XHTML ? Eine ausführbare .exe Datei ? Brauch man dafür php oder java ?

                    Was wäre eine Anwendung für XML+XSLT ?

                    z.B.: http://httpd.apache.org/docs-2.0/index.xml vergleich  es mit http://httpd.apache.org/docs-2.0/index.html

                    Super, genau nach soetwas habe ich gesucht. War mir vorher noch nie über den Weg gekommen. Danke

                    1. Hallo,

                      Der andere Thomas sagte man könnte die XML Dokumente dann mit XSLT in  xhtml, html oder .pdf verwandeln. Was ist denn dann XHTML ? Eine ausführbare .exe Datei ? Brauch man dafür php oder java ?

                      XHTML ist nichts anders als HTML, das nach der Regel von XML formatiert wird. http://de.selfhtml.org/html/xhtml/index.htm

                      Grüße
                      Thomas

                      1. Hallo Thomas,

                        Der andere Thomas sagte man könnte die XML Dokumente dann mit XSLT in  xhtml, html oder .pdf verwandeln. Was ist denn dann XHTML ? Eine ausführbare .exe Datei ? Brauch man dafür php oder java ?

                        XHTML ist nichts anders als HTML, das nach der Regel von XML formatiert wird. http://de.selfhtml.org/html/xhtml/index.htm

                        Das beantwortet aber obige Frage nicht. :)

                        1. Tut es doch. Ich Idiot! Mein Fehler.
                          Ich wollt fragen:

                          Was ist denn dann XSLT ...

                          1. Hallo,

                            Was ist denn dann XSLT ...

                            Eine Sprache zur Transformation von XML-Strukturen/Inhalten in andere XML-Formate, aber auch in HTML oder einfachen Text.

                            Lies die XML-Kapitel von SELFHTML oder ein Buch, zu diesem Forum passt http://www.franzis.de/index.php?art=1599 ;-).

                            MfG, Thomas

            2. Hallo,

              Wozu ist XSLT dann gut. In ganz einfachen Worten (bin noch nicht so weit im Tutorial).

              http://de.selfhtml.org/xml/index.htm

              Grüße
              Thomas

              PS: der heutige Tag eignet sich bestens um zu lesen.