www.xml-xslt.de


Startseite

Das Buch

Auszeichnungssprachen

XML-Dokument
Dokumentstruktur
Elemente
Attribute
Kommentare/CDATA
Prolog
Wohlgeformtheit
Validität

Struktur: dtd

Retrieval: XSLT

4.6    Wohlgeformtheit

XML-Dokumente, die die allgemeinen Regeln für XML-Dokumente erfüllen, sind wohlgeformt (“wellformed”). XML-Dokumente, die einer bestimmten DTD entspre-chen, sind im Sinne dieser DTD valide (“valid”). Grundsätzlich müssen XML-Dokumente wohlgeformt sein, um XML-Dokumente zu sein, sie müssen nicht valide sein. Dokumente, die keine DTD haben oder Dokumente, die auf eine DTD verwei-sen, dieser aber nicht entsprechen, sind damit noch immer - bei Einhaltung der XML-Anforderungen an Wohlgeformtheit - wohlgeformte XML-Dokumente.


    Folgende Anforderungen müssen erfüllt sein, damit XML-Dokumente wohl-geformt sind (weitere Kriterien mit Bezug auf Zeichendefinitionen, Entitäten und DTDs sind in der Recommendation enthalten, betreffen aber weitgehend Sonderfäl-le):

Jeder Starttag muss durch einen entsprechenden Endtag geschlossen werden:

    Richtig (Tagnamen sind case-sensitive!):
<email>
    <from>hans@mustermann.de</from>
    <to>fred@mustermann.de</to>
</email>


    Falsch:
<email>
    <from>hans@mustermann.de</from>
    <to>fred@mustermann.de
</email>

    Leere Elemente können auf zwei Weise geschlossen werden.

    1. In der allgemeinen Schreibweise:

<bild format=”jpg”></bild>

    2. In der verkürzten Schreibweise (wie aus XHTML bekannt):

<bild format=”jpg”/>

    Die verkürzte Schreibweise ist vorzuziehen.

Elemente dürfen sich nicht überschneiden:

    Richtig:
<email>
    <from>hans@mustermann.de</from>
    <to>fred@mustermann.de</to>
</email>

    Falsch:
<email>
    <from>hans@mustermann.de
    <to></from> fred@mustermann.de</to>
</email>


Es muss genau ein Wurzelelement (“Rootelement”) vorhanden sein:

    Richtig:
<email>
    <from>hans@mustermann.de</from>
    <to>fred@mustermann.de</to>
</email>

    Falsch:
<email datum=’2001/10/12 “Mittwoch"’>
    ....
</email>
<email>
    <from>hans@mustermann.de</from>
    <to>fred@mustermann.de</to>
</email>
<textbody>
        .....
</textbody


Attributwerte müssen in Anführungszeichen stehen:

    Richtig:
<email datum=’2001/10/12 Mittwoch’>
    ....
</email>

    Falsch:
<email datum=2001/10/12 Mittwoch>
    ....
</email>

Ein Attribut darf in einem Element nur einmal vorkommen:

    Richtig:
        <email date=”2001-10-12"/>

    Falsch:
        <email date=”2001-10-12" date=”2001-10-11"/>

Kommentare und Verarbeitungsanweisungen dürfen nicht in Tags auftreten:

    Richtig:
<email datum=’2001/10/12 “Mittwoch"’>
<!–Absenderangabe–>
    <from>hans@mustermann.de</from>
    <to>fred@mustermann.de</to>
</email>

    Falsch:
<email datum=’2001/10/12 “Mittwoch"’>
<email <!–Absenderangabe–>>
    <from>hans@mustermann.de</from>
    <to <?producer-set application=”Real”?>>fred@mustermann.de</to>
</email>

 In den Zeichendaten von Elementen und Attributen dürfen < und & nur escaped (= als Entitätsreferenzen) vorkommen:

Richtig (&lt; entspricht in der Ausgabe < , &gt; entspricht in der Ausgabe >, &amp; ent-spricht in der Ausgabe &  - wie auch in HTML; siehe auch Kapitel 2.7):

<email datum=’2001/10/12 “Mittwoch"’>
<from>&lt;hans@mustermann.de</from>
    <to>fred@mustermann.de</to>
    <bild format=”&amp;jpg”></bild>
</email>


    Falsch:
<email datum=’2001/10/12 “Mittwoch"’>
<from><hans@mustermann.de</from>
    <to>fred@mustermann.de</to>
    <bild format=”&jpg”></bild>
</email>

Einige Browser prüfen auf diese Wohlgeformtheitskriterien:

 

 

Das Quelldokument dazu:

<email datum=’2001/10/12 “Mittwoch"’>
    ....
</email>
<?xml version="1.0" encoding="UTF-8"?>
<email>
    hans@mustermann.de
    </from>
    <to>
        fred@mustermann.de
    </to>
<text>
    Hallo Hans!
    Gruß Fred
</text>
</email>

 

 


 
 
 
 
 
 
 
 
 
 

Das XML/XSLT-Seminar
(zur Zeit als Buch nicht lieferbar)