Lieber frankx,
sind aber nur warnungen, schlucken tut ers trotzdem und kanns auch verarbeiten.
OHA! Da gab es wohl offensichtlich kleine Fehler in der DTD! Die <!ATTLIST-Stellen sollten direkt bei den passenden <!ELEMENT-Stellen stehen, sodass auf "<!ELEMENT smiley" unmittelbar auch "<!ATTLIST smiley" folgt. Diesen Fehler habe ich nun behoben.
Ich gebe Dir hier eine korrigierte DTD (muss in die Datei gb-daten.dtd), werde selbige Korrektur auch als Update zu meinem Script herausgeben:
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<!DOCTYPE gaestebuch [
<!ELEMENT gaestebuch (smilies, icons, messengers, unwoerter, eintraege)>
<!-- definiert das Grundgerüst des Dateiformates -->
<!ELEMENT smilies (smiley)*>
<!-- enthält die Zuordnungen von Kürzeln und Smiley-Grafiken -->
<!ATTLIST smilies
pfad CDATA #REQUIRED
>
<!-- in diesem Verzeichnis sind die Smiley-Grafiken abgelegt -->
<!ELEMENT icons (icon)*>
<!-- enthält die Zuordnungen von K?ln und Icon-Grafiken -->
<!ATTLIST icons
pfad CDATA #REQUIRED
>
<!-- in diesem Verzeichnis sind die Icon-Grafiken abgelegt -->
<!ELEMENT messengers (dienst)*>
<!-- enthält eine Liste von Instant Messaging Diensten -->
<!ELEMENT unwoerter (unwort)*>
<!-- enthält Eintragungen unerwünschter Wörter -->
<!ELEMENT einstellungen (schalter)*>
<!-- enthält weitere Einstellungen für das Gästebuch -->
<!ELEMENT eintraege (eintrag)*>
<!-- enthält die Gästebucheinträge -->
<!ELEMENT smiley EMPTY>
<!-- definiert einen Smiley -->
<!ATTLIST smiley
kuerzel CDATA #REQUIRED
grafik CDATA #REQUIRED
>
<!-- die Zuordnung von Kürzel und Smiley-Grafik wird in diesen Attributen vorgenommen -->
<!ELEMENT icon EMPTY>
<!-- definiert ein Icon -->
<!ATTLIST icon
kuerzel CDATA #REQUIRED
grafik CDATA #REQUIRED
>
<!-- die Zuordnung von Kürzel und Icon-Grafik wird in diesen Attributen vorgenommen -->
<!ELEMENT dienst EMPTY>
<!-- hier wird das Link-Ziel für de diversen IMs abgelegt -->
<!ATTLIST dienst
name CDATA #REQUIRED
protokoll CDATA #REQUIRED
>
<!-- diese Attribute steuern die Zuordnung von Dienst und Link-Ziel -->
<!ELEMENT unwort EMPTY>
<!-- definiert ein Unwort (als PERL-kompatiblen regulären Ausdruck) -->
<!ATTLIST unwort
ausdruck CDATA #REQUIRED
>
<!ELEMENT schalter EMPTY>
<!-- enthält Einstellungen für bestimmte Funktionalitäten des Gästebuchs -->
<!ATTLIST schalter
name CDATA #REQUIRED
inhalt CDATA #REQUIRED
>
<!-- enthält den Einstellungswert für die jeweilige Funktionalität -->
<!ELEMENT eintrag (autor, nachricht)>
<!-- definiert den Aufbau eines GB-Eintrags -->
<!ATTLIST eintrag
datum CDATA #REQUIRED
zeit CDATA #REQUIRED
ip CDATA #IMPLIED
versteckt (ja|nein) "nein"
>
<!ELEMENT autor (imessenger)*>
<!-- definiert den Aufbau der Daten für den Autor eines Eintrags -->
<!ATTLIST autor
name CDATA #REQUIRED
email CDATA #IMPLIED
homepage CDATA #IMPLIED
>
<!-- Die Daten zum Autor werden in diesen Attributen gespeichert -->
<!ELEMENT imessenger EMPTY>
<!-- Eine Liste an Instant-Messenger-Protokollen, die der Autor benutzt -->
<!ATTLIST imessenger
name CDATA #REQUIRED
adresse CDATA #REQUIRED
>
<!-- Der Aufbau der Informationen zu einem IM -->
<!ELEMENT nachricht (#PCDATA)>
<!-- definiert den Aufbau der Daten für die Nachricht -->
]>
Liebe Grüße aus Ellwangen,
Felix Riesterer.
--
ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)