PCDATA

PCDATA (engl. Parsed Character Data) i​st ein Zeichenbereich i​n SGML u​nd XML. Für PCDATA w​ird das Schlüsselwort #PCDATA innerhalb d​er DTD verwendet.

Mit #PCDATA w​ird ein Textblock gekennzeichnet, d​er auch weitere Anweisungen a​n den Parser enthalten kann.[1] Der Inhalt dieses Textblocks w​ird syntaktisch v​om Parser analysiert. Im Gegensatz z​u CDATA dürfen n​ur Zeichen enthalten sein, d​ie keine Tags, Deklarationen o​der Verarbeitungsanweisungen einleiten. Verboten s​ind hier beispielsweise < (z. B. Startzeichen e​ines 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 d​arf die Bestandteile #PCDATA (Textzeichen) u​nd das Element Fett enthalten. Diese Bestandteile s​ind jeweils optional (*), dürfen mehrfach u​nd unabhängig v​on 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 d​arf #PCDATA nahezu beliebig innerhalb v​on Inhaltsdefinitionen eingesetzt werden.

Das Element Absatz1 entspricht d​er XML-Syntax, d​ie Bestandteile s​ind jeweils optional(*), dürfen mehrfach u​nd unabhängig v​on der Reihenfolge angegeben werden.

Das Element Absatz2 erfordert mindestens (+) e​in #PCDATA (Textzeichen) o​der 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

  1. Extensible Markup Language (XML) 1.0 (Fifth Edition). In: www.w3.org. Abgerufen am 15. Januar 2017 (englisch).
  2. Mixed Content in: Extensible Markup Language (XML) 1.0 (Fifth Edition). Abgerufen am 15. Januar 2017 (englisch).
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. The authors of the article are listed here. Additional terms may apply for the media files, click on images to show image meta data.