XML, XHTML oder doch HTML?



  • Hidihou 🙂

    Ja, ich habe vor eine Website zu basteln und hab mich mal im selfhtml umgeschaut was es so aktuelles gibt. Da habe ich gesehen das man besser mit XHTML proggen soll, da das in zukunft html ablösen wird. Habt ihr damit auch erfahrungen gemacht? Und stimmt das überhaupt, html kann doch nicht einfach ersetzt werden, oder? Und was hat es mit XML auf sich, ich hab das mal angeschaut, aber das ist doch nur ne beschreibungssprache, mit der kann doch keine Website schreiben, oder sehe ich das falsch?

    danke für eure hilfe



  • warum sollte HTML nicht ersetzt werden können? 😃

    mit XML direkt kannst du keine Webseiten schreiben. aber du kannst mit XSLT deine XML-Daten so transformieren, dass eine Webseite rauskommt. Ist ein bisschen kompliziert, aber wenn man Templates verstanden hat bzw das System hinter XSLT, dann hat man sich schnell dran gewöhnt. (Entwickle selber eine komplette Homepage in XML mit XSLT und XPATH und XLINK 🙄 )

    Irgendwo habe ich auch aufgeschnappt, dass man XML in Verbinung mit XSLT noch nicht zur Erstellung von Websiten nutzen soll. Aber lass dich davon nicht abhalten. Firefox 1.0 und IE 5.5 können das schon gut parsen. Wie es beim Opera aussieht weiß ich leider nicht.

    Sicherer und für den Webeinsatz sinnvoller ist aber XHTML.



  • 1. Was meint ihr sollte einer lernen, wenn er noch keines kann, aber eine website erstellen möchte?
    2. Wird HTML früher oder später untergehen? bzw. wie seht ihr die zunkunft von HTML?
    3. Wird man in Zunkunf websiten mit XML oder XHTML schreiben?



  • 1. Am besten du ziehst dir mal grundlegend HTML rein. Wenn du das kannst ist XHTML kein Problem mehr.
    2. Untergehen? Kann ich nicht beurteilen. Zudem ist XHTML fast dasselbe.
    3. Wird man in Zukunft mit Maschinen arbeiten die drei Zustände haben (trinär)? Kannst du doch genausowenig beantworten. Möglich ist alles...

    Fazit: Sorge dich nicht drum ob nun in 5 Jahren HTML verwendet wird oder nicht. Lern es, schaden wirds nicht...



  • Man lernt sofort XHTML damit man sich keinen Mist lernt, ist genauso einfach wie HTML. Zieh dir einfach SelfHTML rein 🙂

    MfG SideWinder



  • Na ja, theoretisch ist XHTML ja der Nachfolger von HTML, schließlich existiert der gute alte 4.01-Standard seit 1998. In der Regel langt das für einfache, statische Webseiten aber immer noch völlig aus. XHTML hat etwas strengere regeln und sollte "well-formed" sein, also XML-konform, doch wenn man transitional verwendet gibt es kaum Unterschiede zu HTML. Es ist voll abwärtskompatibel. In Version 2 soll sich da angeblich einiges ändern...

    XML ist wohl zu hoch gegriffen - es ist sehr mächtig und an sich keine Sprache nur für Websites, sondern mehr ein Standard zum kreiren von strukturierten Datencontainern, wenn man das so nennen kann... Mit XML kann man tolle Sachen machen, aber damit der User damit auch was anfängt, muss man die Daten per XSL/XSLT wieder nach (X)HTML konvertieren, oder einem anderen Format.

    Ich hoffe, das war überschaubar, unüberschaubar wirds dann bei den Machern: www.w3c.org



  • doch wenn man transitional verwendet gibt es kaum Unterschiede zu HTML. Es ist voll abwärtskompatibel.

    Das stimmt nicht. Die XHTML Syntax ist und bleibt eine XML Syntax und die besagt auch, dass nicht-body-tags geschlossen werden müssen, beispielsweise:
    [code]<img src="..." />



  • Danke für eure super antworten. Hab aber dennoch ne frage zu XML: Also wenn man Websiten programmieren will braucht man XML nicht wirklich oder? Ich meine das ist nicht so etwas wie CSS oder JavaScript, was ich finde zu einer Website gehört. Mein problem ist einfach das ich nicht so schnalle was XML genau macht/kann?! thx


  • Mod

    PP Joe schrieb:

    Mein problem ist einfach das ich nicht so schnalle was XML genau macht/kann?! thx

    XML ist einfach nur eine Beschreibungssprache. Wenn du XML verwendest um deine Webseite zu schreiben, dann kann ein Browser damit erstmal nichts anfangen. Jetzt kann man aber per XSLT das XML in HTML umwandeln. Einige Leute lassen diese Umwandlung den Client (also Browser machen) - davon bin ich nicht gerade Fan. Aber eine Umwandlung von XML per XSLT am Server (zB per PHP, mod_xlst oder was es da alles gibt) ist durchaus schön.

    Die Idee dahinter ist, den Inhalt komplett vom Design zu trennen. CSS ansich kann das ja nicht komplett - weil man zB <img> direkt im Code hat. Da kann XML per XSLT natürlich etwas mehr. Allerdings gibt es auch einfachere Template Engines um soetwas zu realisieren.

    Wenn du aber nur statische Seiten entwickelst, kannst du XML getrost vergessen.



  • Mein problem ist einfach das ich nicht so schnalle was XML genau macht/kann?!

    XML dient zum formatierten speichern von Daten.

    Wie die Daten nun verarbeitet werden sollen, ist unspezifiziert. Das hängt vom Programm ab, dass die Daten verarbeitet. Deswegen wird je nach Daten das Format der XML Datei genau spezifiziert, mittels DTD (oder XMLSchema etc.).

    XHTML ist eben so eine Spezifikation, wie man eine HTML (Hyper-Text-Markup-Language) in XML verpackt. Browser können XHTML dann eben interpretieren und wissen dann, wie die Daten im Browser formatiert angezeigt werden können.

    Also XHTML ist XML, eben nur eingschränkt auf eine bestimmte Datenformatierung.

    XSLT wurde ja bereits erwähnt, damit kann man XML Formate in andere (XML) Formate umwandeln. Das ist eine kleine Scriptsprache, speziell dafür entworfen. Wenn du nun irgend ein XML Format hast, um zB. deine CD-Sammlung darin formatiert zu speichern, kannst du das mit XSLT in XHTML umwandeln, so dass dein Browser genau versteht, wie es dargestellt werden soll.

    Ach übrigens, mit XML, HTML und XHTML programmiert man nicht, man beschreibt nur Daten! Also sag dazu bitte nicht programmieren! 🙂

    Wenn du Tutorials für die Technologien rund um XML, XSLT, XHTML etc. suchst, dann schau dir am besten mal http://www.w3schools.com/ an.



  • @ Shade Of Mine was meinst du genau mit statisch? Hast du irgend ein Beispiel einer Website die mit XML/XSLT gemacht wurde?

    @ kingruedi danke für den guten Link, werde ich gleich mal ein paar tuts machen und sorry wegen der "programmierung" werde es mir merken 🙂



  • @Optimizer

    Optimizer schrieb:

    Das stimmt nicht. Die XHTML Syntax ist und bleibt eine XML Syntax und die besagt auch, dass nicht-body-tags geschlossen werden müssen

    Klar, wenn du nach dem W3C gehst sollte alles dem XML-Schema entsprechend well-formed sein. Ich empfehle auch keinem, es anders zu machen! Aber die Standard-Browser haben kaum ein Problem damit... Da kann ruhig mal ein tag nicht geschlossen sein und trotzdem gibts keinen Parser-Fehler.

    Mal sehn, was die Zukunft bringt... Aber da neue Standards von den Machern der großen Browser oft erst jahre später umgesetzt werden, kann man wohl noch einige Zeit "nicht-standardkonforme, chaotische und unstrukturierte Seiten" machen 🙂



  • @PP Joe, wenn du webzeugs lernen möchtest zieh dir erstmal html rein.
    Über XML würde ich mir keine Gedanken machen. Dafür hast du später
    noch genug Zeit 😉

    Im großen und ganzen kannst du XML aber auch als Import/Export Schnittstelle
    sehen. Wenn du eine Seite in XML erstellt hast, so können die heutigen Browser
    den XML Quelltext lediglich darstellen. Sie können Ihn aber nicht verarbeiten,
    wie zum Bleistift HTML. Du bekommst im Browser also immer nur die XML Tags formatiert
    angezeigt.

    Daher die Import/Export Schnittstelle. Mal angenommen du möchtest eine Exeldatei
    in deiner Website ausgeben oder deinen Websiteinhalt in Exel einlesen. Nun
    müsstest du für beide Vorgänge einen Parser schreiben der dir den Content in
    das richtige Format übersetzt. Alles schön und gut, so lang dann nicht noch ein
    drittes oder viertes Programm mit wiederum anderen Formaten verwendet wird.
    Also gibt es XML. Da Exel XML exportieren kann und du mit PHP XML Daten schreiben
    kannst, ist das Format gleich. Somit kannst du deine Daten hin und her schicken,
    so lang das zuverwendende Programm XML unterstützt. Womit man sich 1000 verschiedene
    Parser der unterschiedlichsten Art spart.

    Gruss



  • BloodLord schrieb:

    @Optimizer

    Optimizer schrieb:

    Das stimmt nicht. Die XHTML Syntax ist und bleibt eine XML Syntax und die besagt auch, dass nicht-body-tags geschlossen werden müssen

    Klar, wenn du nach dem W3C gehst sollte alles dem XML-Schema entsprechend well-formed sein. Ich empfehle auch keinem, es anders zu machen! Aber die Standard-Browser haben kaum ein Problem damit... Da kann ruhig mal ein tag nicht geschlossen sein und trotzdem gibts keinen Parser-Fehler.

    Darum geht's nicht, was die Browser können. XHTML hat XML-Syntax, weil sie einfacher zu parsen ist.
    Und XHTML ist nicht abwärtskompatibel wie du es gesagt hast. Mit "der Browser checkt des schon" diskutiert man in einem Web- Unterforum eigentlich nicht, es geht darum, standardkonformen Code zu erstellen.



  • @Optimizer
    Okay, ich habs ja auch nie anders gemeint! Sollte wirklich keine Aufforderung dazu sein, nicht standardkonfomen Code zu schreiben und den W3C zu boykottieren! Ich achte ja selbst auf well-formed code...



  • 2oopuls schrieb:

    Wenn du eine Seite in XML erstellt hast, so können die heutigen Browser
    den XML Quelltext lediglich darstellen. Sie können Ihn aber nicht verarbeiten,
    wie zum Bleistift HTML. Du bekommst im Browser also immer nur die XML Tags formatiert angezeigt.

    XML ist da um Daten strukturiert abzuspeichern. Mit XML kann man keine "Seite" (gemeint ist doch eine Website?) erstellen. (Sehr wohl ist es aber möglich den Inhalt einer Website in einer XML-Datei zu speichern und über XSL in XHTML umzuwandeln).
    Wenn der Browser eine XML-Datei ohne Formatierungsanweisungen bekommt was soll er damit machen ausser die XML-Datei in einer Baum-Struktur auszugeben? Browser können aber sehr wohl XML-Dateien verarbeiten, wenn es für die XML-Datei Formatierungsanweisungen (XSL/XSLT) gibt.


  • Mod

    BloodLord schrieb:

    Da kann ruhig mal ein tag nicht geschlossen sein und trotzdem gibts keinen Parser-Fehler.

    Doch, es gibt Parser-Fehler und der Browser schaltet in den "Quirks Mode". Dieser ist natürlich langsamer und behandelt Fehler - so dass zB richtiger Code falsch interpretiert wird (macht der IE gerne) weil er glaubt, dass du etwas anderes gemeint hast.

    Es ist also doch relevant.



  • @2oopuls & siranus
    XHTML ist XML! Lest euch bitte nochmal meinen vorherigen Beitrag durch.



  • Ich würde nicht sagen, dass XHTML = XML ist. Dafür würde man die Möglichkeiten die XML bietet doch zu stark eingrenzen.
    w3.org spricht dabei von

    XHTML 1.0 (this specification) is the first document type in the XHTML family. It is a reformulation of the three HTML 4 document types as applications of XML 1.0

    http://www.w3.org/TR/xhtml1/#xhtml

    Also sind die ganzen XHTML-Tags und ihre Entitys über XML und DTDs definiert.



  • siranus schrieb:

    Ich würde nicht sagen, dass XHTML = XML ist.

    Das hat niemand behauptet. Die Aussage

    XHTML ist XML

    ist nicht äquivalent zu

    XHTML gleicht XML.


Anmelden zum Antworten