fredy: DOM - Unterschiede zwischen IE und Netscape

Hallo!

Ich hab gerade versucht, mit DOM eine XML-Daten-Insel
in einem HTML-Dokument zu parsen:

<XML ID='myBlock'>
  <METADATA>
  test
  </METADATA>
</XML>

Laut IE6 hat der Tag XML ein Kind: METADATA
Laut Netscape7 hat der Tag XML 3 Kinder:
  1. Leerzeichen zwischen XML und METADATA
  2. den TAG METADATA
  3. Leerzeichen nach dem Ende von METADATA

Gibt es eine Lösung, dass beide Browser der gleichen Meinung
sind ?

Wo findet man im Web mehr über XML-Data-Inseln ?

Danke und liebe Grüße
fredy

  1. Hi,

    Gibt es eine Lösung, dass beide Browser der gleichen Meinung
    sind ?

    ich fass mich kurz und bündig:

    <XML ID='myBlock'><METADATA>test</METADATA></XML>

    Dass Du so kein valides HTML erzeugst ist dir klar, oder? (<xml> gibt's nur im IE)

    Grüße,

    Christian

    1. Hi!

      NS7 kann den XML-Tag zumindest parsen.

      Wie soll ich sonst eine XML-Dateninsel erzeugen ?
      Benötige ich Namespaces dafür ?

      Liebe Grüße
      fredy

      Hi,

      Gibt es eine Lösung, dass beide Browser der gleichen Meinung
      sind ?

      ich fass mich kurz und bündig:

      <XML ID='myBlock'><METADATA>test</METADATA></XML>

      Dass Du so kein valides HTML erzeugst ist dir klar, oder? (<xml> gibt's nur im IE)

      Grüße,

      Christian

      1. hallo,

        NS7 kann den XML-Tag zumindest parsen.

        das kann der IE auch (schon länger)

        Wie soll ich sonst eine XML-Dateninsel erzeugen ?
        Benötige ich Namespaces dafür ?

        Nein. Weil XML-Dateiinseln eine Microsoft eigene XML-Entwicklung ist und somit auch nicht standardisiert.

        Netscape interprätiert dir schienbar das Zeilenumbruchzeichen im <XML> (übrigens im Falle von "tag-s" heisst es "das Tag") als Text-Knoten. Was ohne DTD weder richtig noch falsch ist.

        Grüße
        Thomas

        1. Hallo!

          Nein. Weil XML-Dateiinseln eine Microsoft eigene XML-Entwicklung
          ist und somit auch nicht standardisiert.

          Ja, aber im Rahmen von XHTML kann man doch irgendwie
          den XHTML-Code um eine benutzerdefinierte XML-Syntax erweitern.

          Und dann wäre es doch eine Elegante Lösung, das ganze gleich
          mit dem Browser-eigenen DOM zu parsen.

          Gibt es irgendeine offizielle Möglichkeit, um benutzerdefinierten XML-Code in HTML einzubinden (zB mit Namespaces) ?

          Danke und liebe Grüße
          Manfred

          hallo,

          NS7 kann den XML-Tag zumindest parsen.

          das kann der IE auch (schon länger)

          Wie soll ich sonst eine XML-Dateninsel erzeugen ?
          Benötige ich Namespaces dafür ?

          Nein. Weil XML-Dateiinseln eine Microsoft eigene XML-Entwicklung ist und somit auch nicht standardisiert.

          Netscape interprätiert dir schienbar das Zeilenumbruchzeichen im <XML> (übrigens im Falle von "tag-s" heisst es "das Tag") als Text-Knoten. Was ohne DTD weder richtig noch falsch ist.

          Grüße
          Thomas

          1. Hallo Manfred,

            Ja, aber im Rahmen von XHTML kann man doch irgendwie
            den XHTML-Code um eine benutzerdefinierte XML-Syntax erweitern.
            Und dann wäre es doch eine Elegante Lösung, das ganze gleich
            mit dem Browser-eigenen DOM zu parsen.
            Gibt es irgendeine offizielle Möglichkeit, um benutzerdefinierten XML-Code in HTML einzubinden (zB mit Namespaces) ?

            Ja, das kannst du, aber dann sind sie keine konforme XHTML-Dokumente mehr.
            Die Spez. sagt:
            "The XHTML namespace may be used with other XML namespaces as per [XMLNAMES], although such documents are not strictly conforming XHTML 1.0 documents as defined above. Future work by W3C will address ways to specify conformance for documents involving multiple namespaces."

            Dann ist es noch die Frage, ob das was du einblindest vom Browser interpretiert werden kann. MathML, SVG, SMIL mögen die Browser verstehen, aber einen eigenen Namensraum?

            Wie soll ich sonst eine XML-Dateninsel erzeugen ?
            Benötige ich Namespaces dafür ?

            Ich weiss noch immer nicht, was du erreichen willst. Du kannst aber XML-Dokumente auch per Scripting (DOM) einbinden.

            Grüße
            Thomas

            1. Hallo Thomas !

              Danke für Deine Antworten!

              Ich weiss noch immer nicht, was du erreichen willst. Du kannst >>aber XML-Dokumente auch per Scripting (DOM) einbinden.

              Ich möchte irgendwie Daten auf den Browser übertragen,
              die ich dann mit JS interpredieren kann.
              Früher hätte ich dyn. JS-Objekte und JS-Arrays erstellt.
              Nun möchte ich das aber über XML machen.

              Dann ist es noch die Frage, ob das was du einblindest vom Browser >>interpretiert werden kann. MathML, SVG, SMIL mögen die Browser >>verstehen, aber einen eigenen Namensraum?

              Ich würde die Daten aus meinen eigenen Namespace unsichtbar machen
              und anschließend mit JS parsen.
              Wie genau binde ich eigene XML-Daten mit einen eigenen Namespace in XHTML ein ? - Du hast irgendwas über XMLNAMES erwähnt ...

              Ziel ist sowas wie:

              <html>
              :
              :
              <div>
              <!-- HTML code für die Oberfläche meiner Web-Applikation -->
              </div>

              <div>
              <xml>
              <!-- mein XML-code den ich interpredieren möchte -->
              </xml>
              </div>

              <script>
              <!-- JS Code, der XML interprediert -->
              </script>

              </html>

              Danke für Deine Informationen,
              Manfred

              1. Hallo Manfred,

                Ich möchte irgendwie Daten auf den Browser übertragen,
                die ich dann mit JS interpredieren kann.
                Früher hätte ich dyn. JS-Objekte und JS-Arrays erstellt.
                Nun möchte ich das aber über XML machen.

                Mit JS kannst du sowas über DOM realisieren.

                Ich würde die Daten aus meinen eigenen Namespace unsichtbar machen
                und anschließend mit JS parsen.
                Wie genau binde ich eigene XML-Daten mit einen eigenen Namespace in XHTML ein ? - Du hast irgendwas über XMLNAMES erwähnt ...

                Ein Beispiel: http://www.w3.org/TR/xhtml1/#well-formed
                Scriptingsbeispiele findest du schon vieles im Archiv (Unter den Namen von Thomas Menike und auch unter meinen).

                Grüße
                Thomas