SnowOne: CDATA in DTD's

Beitrag lesen

Hallo lieber Forumer und Forumerinnen ....

ich habe mal wieder ein kleines Problem, und hoffe das Ihr mit dabei helfen könnt ...

Ich habe mit eine kleine XML Datei zusammengestellt die ungefähr wie folgt aussieht:

<?xml version="1.0"?>
<!DOCTYPE template
  [
  <!ELEMENT template (#PCDATA)>
  <!ELEMENT template (part+)>
  <!ELEMENT part (#PCDATA)>

<!ATTLIST part name CDATA #REQUIRED>
  ]

<template>
  <part name=“test“>
<html>
  <head>
    <title>TestSeite</title>
  </head>
  ….
</html>
  </part>
</template>

... und nun bin ich bei folgendem Problem angekommen: In der DTD steht als Datentyp bei <part> 'PCDATA' ... das heißt er wird mit den Inhalt von <part> auch weiter durchparsen .. ich möchte aber das der Text zwischen <part> der Inhalt (Value) von <part> ist ...

is das soweit verständlich? ;o)

Nachdem ich in einer XML Doku nachgelesen hab ist dafür der Typ CDATA vorgesehen ...

Bis hier hin schön und gut ...

Wenn ich aber nun in der DTD anstand PCDATA CDATA eintrage hat mein XML Dokument einen Fehler... wenn ich aber in dem XML Teil folgendes eintrage:
...
<part name=“test“>
<![CDATA[
<html>
  <head>
    <title>TestSeite</title>
  </head>
  ….
</html>
]]>
</part>
...
funktioniert das alles wunderbar ... so will ich das aber nicht ...

gibt es da irgendeine Möglichkeit in der DTD einzutragen das das CDATA ist?

Ich bedanke mich recht herzlich für alle eure Versuche mir zu helfen ...

Bis dann

SnowOne