Einzelnen Beitrag anzeigen

MathiasSimmack
(Gast)

n/a Beiträge
 
#5

Re: XML-Datei mit dtd Datei darstellen

  Alt 19. Apr 2004, 13:57
@Luckie: Die DTD müsste in deiner Datei so aussehen:
Code:
<!ELEMENT adressdb (XMLFile, Kontakt+)>
<!ELEMENT XMLFile (MajorVersion, MinorVersion, Computer, User, ...)>
<!ELEMENT MajorVersion (#PCDATA)>

...

<!ELEMENT Kontakt (ID, Name, Vorname, ...)>
<!ELEMENT ID (#PCDATA)>

...
Du gibts einfach nur die Elemente an, die du benutzt hast, in der Reihenfolge, in der du sie benutzt hast. Damit zwingst du den Parser, eine XML-Datei nur zu akzeptieren, wenn die Knoten vorhanden sind und der Reihenfolge entsprechen.
Die Knoten, die ihrerseits nur Text enthalten, kriegen die Angabe (#PCDATA) in Klammern. Ganz oben siehst du "Knoten+", d.h. es muss min. 1 Knoten namens <Kontakt> vorhanden sein, durch das Plus sind aber durchaus mehrere erlaubt.

Edit: Und
Zitat:
Code:
<!DOCTYPE Kontakte SYSTEM "Kontakte.dtd">
wäre falsch, weil dein root-Knoten <adressdb> heißt und nicht <Kontakte>.

Edit 2: Und zum Darstellen würde ich ein XSL-Stylesheet/Transform benutzen. In dem kannst du mit herkömmlichen HTML-Code arbeiten und Tabellen erzeugen, usw.
  Mit Zitat antworten Zitat