Liebes Forum,
in meinem momentanen XML-Rausch habe ich beschlossen, das Datenformat meiner Gästebuch-Daten auf XML umzustellen. Ich fand schon immer, dass ein GB die Verwendung einer Datenbank nicht unbedingt rechtfertigt und bin ein Verfechter einer Flatfile-Lösung für GBs. Dabei habe ich mir Gedanken über eine passende DTD gemacht. Hier mein Ergebnis:
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<!DOCTYPE gaestebuch [
<!ELEMENT gaestebuch (eintrag)+>
<!-- definiert das Grundgerüst des Dateiformates -->
<!ELEMENT eintrag (autor, nachricht)>
<!-- definiert den Aufbau eines GB-Eintrags -->
<!ATTLIST eintrag
datum CDATA #REQUIRED
zeit CDATA #REQUIRED
>
<!ELEMENT autor (#PCDATA)>
<!-- definiert den Aufbau der Daten über den Autor eines Eintrags -->
<!ATTLIST autor
email CDATA #IMPLIED
homepage CDATA #IMPLIED
icq CDATA #IMPLIED
aim CDATA #IMPLIED
yim CDATA #IMPLIED
msn CDATA #IMPLIED
>
<!-- Die Zusatzdaten zum Autor werden in diesen Attributen gespeichert -->
<!ELEMENT nachricht (#PCDATA | br)*>
<!-- definiert den Aufbau der Daten für die Nachricht -->
<!ELEMENT br EMPTY>
<!-- Zeilenumbruch: leeres Element -->
]>
<gaestebuch>
<eintrag datum="24.12.2005" zeit="18:00">
<autor email="gb_tester@mail.de" homepage="http://www.meine-hp.de" icq="123456789" aim="" yim="" msn="">ein Tester</autor>
<nachricht>Hallo,<br />viele Grüße!</nachricht>
</eintrag>
</gaestebuch>
Leichtes Kopfzerbrechen bereiten mir noch Zeilenumbrüche, die ich mit <br /> zu realisieren versuche. Der Validator mag diese Datei (wenn vom Webspace aus validiert) als gültiges XML1.0, aber ob das mit den Umbrüchen nicht besser geht...? Wenn ich da in HTML an das <pre>-Element denke, da werden ja Zeilenumbrüche durchaus berücksichtigt. Oder könnte ich den Inhalt von <nachricht> als CDATA deklarieren?
Was meint ihr dazu?
Liebe Grüße aus Ellwangen,
Felix Riesterer.