PCDATA
PCDATA (engl. Parsed Character Data) ist ein Zeichenbereich in SGML und XML. Für PCDATA wird das Schlüsselwort #PCDATA innerhalb der DTD verwendet.
Mit #PCDATA wird ein Textblock gekennzeichnet, der auch weitere Anweisungen an den Parser enthalten kann.[1] Der Inhalt dieses Textblocks wird syntaktisch vom Parser analysiert. Im Gegensatz zu CDATA dürfen nur Zeichen enthalten sein, die keine Tags, Deklarationen oder Verarbeitungsanweisungen einleiten. Verboten sind hier beispielsweise < (z. B. Startzeichen eines Tags, z. B. <Beispiel>).
XML-Elementinhalt
Die Verwendung von #PCDATA innerhalb der Definition von Elementinhalten ist in der Regel [51] für gemischten Inhalt (engl. Mixed Content) definiert.[2]
<!ELEMENT Fett (#PCDATA) >
<!ELEMENT Absatz (#PCDATA | Fett)* >
Das Element Absatz darf die Bestandteile #PCDATA (Textzeichen) und das Element Fett enthalten. Diese Bestandteile sind jeweils optional (*), dürfen mehrfach und unabhängig von der Reihenfolge angegeben werden.
<Absatz>Das ist <Fett>wichtig</Fett>.</Absatz><!-- gültig -->
<Absatz></Absatz><!-- gültig -->
SGML-Elementinhalt
<!ELEMENT Fett (#PCDATA) >
<!ELEMENT Absatz1 (#PCDATA | Fett)* >
<!ELEMENT Absatz2 (#PCDATA | Fett)+ >
<!ELEMENT Absatz3 (Fett, #PCDATA) >
In SGML darf #PCDATA nahezu beliebig innerhalb von Inhaltsdefinitionen eingesetzt werden.
Das Element Absatz1 entspricht der XML-Syntax, die Bestandteile sind jeweils optional(*), dürfen mehrfach und unabhängig von der Reihenfolge angegeben werden.
Das Element Absatz2 erfordert mindestens (+) ein #PCDATA (Textzeichen) oder ein Element Fett.
Das Element Absatz3 muss mit einem Element Fett beginnen, dem #PCDATA (Textzeichen) folgen müssen.
<Absatz1>Das ist <Fett>wichtig</Fett>.</Absatz1><!-- gültig -->
<Absatz1></Absatz1><!-- gültig -->
<Absatz2>Das ist <Fett>wichtig</Fett>.</Absatz2><!-- gültig -->
<Absatz2></Absatz2><!-- ungültig, Text oder fett fehlt -->
<Absatz3><Fett>Das</Fett>ist wichtig.</Absatz3><!-- gültig -->
<Absatz3><Fett>Das</Fett></Absatz3><!-- ungültig, Text fehlt hinter Fett -->
<Absatz3>Das ist <Fett>wichtig</Fett>.</Absatz3><!-- ungültig, Fett fehlt am Beginn -->
<Absatz3></Absatz3><!-- ungültig, Fett fehlt, Text fehlt -->
Einzelnachweise
- ↑ Extensible Markup Language (XML) 1.0 (Fifth Edition). In: www.w3.org. Abgerufen am 15. Januar 2017 (englisch).
- ↑ Mixed Content in: Extensible Markup Language (XML) 1.0 (Fifth Edition). Abgerufen am 15. Januar 2017 (englisch).