Wie parst man XML (mit Validierung gegen DTD)?
Ich habe meine eigene DTD, die Teile von XHTML einbindet. Wenn ich
versuche, meine Datei zu validieren, sehe ich sowas:
/----
| cd /home/kai/work/ir/www/htdocs/teaching/lectures/infoa_ss03/
| nsgmls -wxml -cirxml.soc -s index.xml
| nsgmls:/etc/sgml/jade.cat:8:8:E: cannot open "/usr/share/sgml/jade/catalog" (No such file or directory)
| nsgmls:/usr/share/sgml/html/entities/HTMLlat1.ent:12:16:W: internal CDATA entity
| nsgmls:/usr/share/sgml/html/entities/HTMLlat1.ent:13:48:W: comment in parameter separator
\----
Zeilen wie die letzten beiden wiederholen sich sehr oft (250 mal).
Früher habe ich das Problem umgangen, indem ich einen extra Catalog
angelegt habe, wo keine Referenzen auf die HTML-Entities drinstanden,
sondern nur Referenzen auf die XHTML-Entities. Diesen Catalog
verwende ich immer noch: irxml.soc sieht so aus:
/----[ irxml.soc ]
| OVERRIDE YES
| SGMLDECL "xml.dcl"
| PUBLIC "-//W3C//ENTITIES Latin 1 for XHTML//EN" xhtml-1.0/xhtml-lat1.ent
| PUBLIC "-//W3C//ENTITIES Latin 1 for XHTML 1.0//EN" xhtml-1.0/xhtml-lat1.ent
| PUBLIC "-//W3C//ENTITIES Special for XHTML//EN" xhtml-1.0/xhtml-special.ent
| PUBLIC "-//W3C//ENTITIES Special for XHTML 1.0//EN" xhtml-1.0/xhtml-special.ent
| PUBLIC "-//W3C//ENTITIES Symbols for XHTML//EN" xhtml-1.0/xhtml-symbol.ent
| PUBLIC "-//W3C//ENTITIES Symbols for XHTML 1.0//EN" xhtml-1.0/xhtml-symbol.ent
| PUBLIC "-//W3C//DTD XMLSCHEMA 200010//EN" XMLSchema.dtd
\----
Aber jetzt funktioniert das nicht mehr, weil nsgmls nämlich auf jeden
Fall die Datei /etc/sgml/catalog liest, und dort steht ja drin, dass
er die HTML-Entity-Files lesen soll.
Aber ich kann ja kaum der Erste sein, der das versucht.
Help?
--
file-error; Data: (Opening input file no such file or directory ~/.signature)
Reply to: