Hallo: valide?

Hallo!

Ist folgende XML valide?

<anfang>  
 <inhalt>  
  Testtext  
  <behaelter>Becher</behaelter>  
 </inhalt>  
</anfang>
  1. Hi,

    Ist folgende XML valide?

    Wie soll man das ohne zugehörige DTD/zugehöriges Schema beurteilen können?

    <anfang>

    <inhalt>
      Testtext
      <behaelter>Becher</behaelter>
    </inhalt>
    </anfang>

      
    Wohlgeformt ist es.  
    Aber ich würde mixed content (Textknoten/Kindknoten auf derselben Ebene) vermeiden.  
      
    cu,  
    Andreas
    
    -- 
    [Warum nennt sich Andreas hier MudGuard?](http://MudGuard.de/)  
    [O o ostern ...](http://ostereier.andreas-waechter.de/)  
      
    Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.  
    
    
    1. Wohlgeformt ist es.

      Ah, das war meine Frage. Sorry für den falschen Ausdruck.

      Aber ich würde mixed content (Textknoten/Kindknoten auf derselben Ebene) vermeiden.

      Warum?

      1. Hi,

        Aber ich würde mixed content (Textknoten/Kindknoten auf derselben Ebene) vermeiden.
        Warum?

        aus Erfahrung. Sowas macht Scherereien.

        Cheatah

        --
        X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
        1. Aber ich würde mixed content (Textknoten/Kindknoten auf derselben Ebene) vermeiden.
          Warum?

          aus Erfahrung. Sowas macht Scherereien.

          Gemeint ist, dass es das Parsen erschwert Weil auch die Textschnipsel Knoten sind und man dann nicht einfach den Text auslesen kann ohne auch gleich den Rest mitgeliefert zu bekommen (z.B: bei XPath mit text())

          1. Hi.

            Aber ich würde mixed content (Textknoten/Kindknoten auf derselben Ebene) vermeiden.
            »»
            Warum?

            aus Erfahrung. Sowas macht Scherereien.

            Gemeint ist, dass es das Parsen erschwert Weil auch die Textschnipsel Knoten sind und man dann nicht einfach den Text auslesen kann ohne auch gleich den Rest mitgeliefert zu bekommen (z.B: bei XPath mit text())

            Ihr würdet alle sowas wie

            <p>Hier ist ein <a>Link</a></p>

            in XHTML vermeiden??

            Viele Grüße,
            der Bademeister

            1. Hi.

              Aber ich würde mixed content (Textknoten/Kindknoten auf derselben Ebene) vermeiden.
              »»
              Warum?

              aus Erfahrung. Sowas macht Scherereien.

              Gemeint ist, dass es das Parsen erschwert Weil auch die Textschnipsel Knoten sind und man dann nicht einfach den Text auslesen kann ohne auch gleich den Rest mitgeliefert zu bekommen (z.B: bei XPath mit text())

              Ihr würdet alle sowas wie

              <p>Hier ist ein <a>Link</a></p>

              in XHTML vermeiden??

              Natürlich, das href-Attribut oder ein id-Attribut fehlen im a-Element :p

              Wenn man eine Datenstruktur abbilden will, ist soetwas eher hinderlich.

              <books>  
                <book>  
                  Ein schönes Buch  
                  <isbn>124</isbn>  
                </book>  
              </books>
              

              Das würde ich eher so schreiben

              <books>  
                <book>  
                  <title>Ein schönes Buch</title>  
                  <isbn>124</isbn>  
                </book>  
              </books>
              

              Schlichtweg weil es sich einfacher verarbeiten lässt - es kommt aber natürlich auf die Datenstruktur drauf an und was man damit abbildet.

              1. Ihr würdet alle sowas wie

                <p>Hier ist ein <a>Link</a></p>

                in XHTML vermeiden??

                Natürlich, das href-Attribut oder ein id-Attribut fehlen im a-Element :p

                Ich habe überlegt, ob ich Euch diese Steilvorlage wirklich liefern sollte, und mich der Kürze wegen dafür entschieden. Ihr seid so berechenbar ;-)

                Wenn man eine Datenstruktur abbilden will, ist soetwas eher hinderlich.

                Und ein XHTML-Dokument bildet keine Datenstruktur ab?

                Viele Grüße,
                der Bademeister

                1. Ihr würdet alle sowas wie

                  <p>Hier ist ein <a>Link</a></p>

                  in XHTML vermeiden??

                  Natürlich, das href-Attribut oder ein id-Attribut fehlen im a-Element :p

                  Ich habe überlegt, ob ich Euch diese Steilvorlage wirklich liefern sollte, und mich der Kürze wegen dafür entschieden. Ihr seid so berechenbar ;-)

                  "Ihr" auch :) ich wusste, dass jemand mit "Aber in XHTML würdet dir das doch auch machen!" kommt :p

                  Wenn man eine Datenstruktur abbilden will, ist soetwas eher hinderlich.

                  Und ein XHTML-Dokument bildet keine Datenstruktur ab?

                  Ansich ja, aber es ist ein Unterschied ob die Daten Fließtext mit inline-Auszeichnung abbilden oder ob es sich um strukturierte Daten handelt - z.B. ein SQL-Dump oder ein CSV welches man als XML-Baum abbildet.

                  1. "Ihr" auch :) ich wusste, dass jemand mit "Aber in XHTML würdet dir das doch auch machen!" kommt :p

                    :-)

                    Ansich ja, aber es ist ein Unterschied ob die Daten Fließtext mit inline-Auszeichnung abbilden oder ob es sich um strukturierte Daten handelt

                    Ok. Das schränkt aber MudGuards Aussage doch merklich ein. Aus dem Minimalbeispiel des OP geht nicht hervor, um was für Daten es sich handelt.

                    Und die Grenze dessen, was Du meinst, ist auch fließend (oder gar nicht existent?). Dein Buch könnte auch z.B. so aussehen:

                      
                    <books>  
                      <book>  
                        <title>Spaß am <span lang="en">World Wide Web</span></title>  
                        <isbn>124</isbn>  
                      </book>  
                    </books>  
                    
                    

                    Oder?

                    Viele Grüße,
                    der Bademeister

                    1. @@Bademeister:

                      nuqneH

                      <title>Spaß am <span lang="en">World Wide Web</span></title>

                      Die nächste Steilvorlage‽

                      <title>Spaß am <span [link:http://www.w3.org/International/questions/qa-when-xmllang@title=xml:lang]="en">World Wide Web</span></title>

                      Qapla'

                      --
                      Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
                      (Mark Twain)
                    2. <title>Spaß am <span lang="en">World Wide Web</span></title>

                      Nebst Gunnars Kommentar. enn der Titel so in ein HTML-Dokument eingefügt wird oder tatsächlich so lautet[1], könnte man eher diese Notation verwenden:
                      <title><![CDATA[Spaß am <span lang="en">World Wide Web</span>]]></title>

                      [1] Wer nennt ein Buch schon so? Ich bitte dich, ein Bestandteil des titels der aussieht als wäre er Markup :p

                      1. <title>Spaß am <span lang="en">World Wide Web</span></title>

                        [W]enn der Titel so in ein HTML-Dokument eingefügt wird oder tatsächlich so lautet[1], könnte man eher diese Notation verwenden:
                        <title><![CDATA[Spaß am <span lang="en">World Wide Web</span>]]></title>

                        Nein, der Titel des Buches lautet natürlich "Spaß am World Wide Web"; sonst hätte ich da ja einen - und ich komme nicht umhin, Dir den Artikel zu verlinken - Kontextwechsel nicht beachtet :-p

                        @Gunnar:

                        Die nächste Steilvorlage‽
                        <title>Spaß am <span xml:lang="en">World Wide Web</span></title>

                        Offenbar. Ich würde gerne wieder sagen, dass ich sie der Kürze wegen geliefert habe, aber dann würde ich wohl ausgelacht werden :-(

                        Viele Grüße,
                        der Bademeister

              2. Hallo suit et al.,

                Schlichtweg weil es sich einfacher verarbeiten lässt - es kommt aber natürlich auf die Datenstruktur drauf an und was man damit abbildet.

                Als Ergänzung: Mixed Content wird im Grunde nur bei »redaktionellen« Dokumenten mit Textinhalten benötigt, welche wiederum Teilauszeichnungen erfordern.

                Das ist ja das Prinzip von (X)HTML, aber auch bei speziellen Dokumentationssprachen wie DocBook und DITA kommt Mixed Content zum Einsatz, ebenso bei meiner Basisstruktur zur Umsetzung von E-Books im EPUB-Format – dort im absatz-Element zur Texthervorhebung und für Verweise:

                <!ELEMENT absatz (#PCDATA | text | verweis)*>

                Die Verarbeitung gemischter Inhalte mittels XSLT bereitet durch die Kopplung von xsl:template und xsl:apply-templates im jeweiligen Kontext übrigens keine Probleme (im Beispiel wird text zu em bzw. strong und verweis zu a im XHTML-Ausgabedokument, jeweils über zusätzliche Attribute gesteuert).

                Bei der Strukturierung von datenorientierten Inhalten ist Mixed Content tatsächlich hinderlich bzw. unelegant und eher zu vermeiden. Solche Datenteile sind im genannten Beipiel vor allem die Elemente metadaten und dateien.

                Grüße,
                Thomas

  2. @@Hallo:

    nuqneH

    Ist folgende XML valide?

    <anfang>

    <inhalt>
      Testtext
      <behaelter>Becher</behaelter>
    </inhalt>
    </anfang>

      
    Nein. [XML#dt-valid [@en](http://www.w3.org/TR/xml/#dt-valid), [@de](http://www.edition-w3.de/TR/2000/REC-xml-20001006/#dt-valid)]  
      
    Cf. [XML#dt-wellformed [@en](http://www.w3.org/TR/xml/#dt-wellformed), [@de](http://www.edition-w3.de/TR/2000/REC-xml-20001006/#dt-wellformed)]  
      
    Cf. [[ZITAT134](http://community.de.selfhtml.org/zitatesammlung/zitat134)]  
      
    Qapla'
    
    -- 
    Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.  
    (Mark Twain)
    
  3. Ein Wurzelknoten der "anfang" heißt ist irgendwie seltsam :) besonders ein End-Tag mit dem Elementbezeichner "anfang" ist sehr seltsam.

    Dass dein Dokument nicht valide ist, wurde dir schon gesagt - wohlgeformt ja.

    Warum nennest du das Ding nicht "root" wenn dir schon nix besseres einfällt?

    1. Ein Wurzelknoten der "anfang" heißt ist irgendwie seltsam :) besonders ein End-Tag mit dem Elementbezeichner "anfang" ist sehr seltsam.

      OK, dann also <ende> und </ende>. Wobei <ende> dann der Anfang vom <ende> ist und bei </ende> tatsächlich auch alles am Ende ist.

      Und auch Dies ist das Ende einer endlichen Nachricht. SCNR