- From: Eric Prud'hommeaux <eric@w3.org>
- Date: Fri, 4 Apr 2003 17:08:49 -0500
- To: Adam Di Carlo <aph@debian.org>, Manoj Srivastava <srivasta@debian.org>
- Cc: www-archive@w3.org
- Message-ID: <20030404220849.GL10825@w3.org>
Re sgml-data, the following DTD catalog chain prevents any subsequent HTML DTDs from being processed. For me, the issue arose when I was using an xhtml1 [1] DTD: /etc/sgml/catalog: CATALOG /usr/lib/sgml/transitional.cat /usr/lib/sgml/transitional.cat: CATALOG /usr/share/sgml/html/dtd/catalog /usr/share/sgml/html/dtd/catalog: -- The Default DOCTYPE File ............................................. -- -- Used the latest WWW standard if the doctype is html -- DOCTYPE html 4.01/loose.dtd DOCTYPE HTML 4.01/loose.dtd First request, wipe out DOCTYPE html entries from this (and all) catalogs, or, give users a high priority dialog preinst message that says they won't be able to add html DTDs to their systems via the sanctioned update-catalog mechanism. See html_dtd_catalog.diff Second request, for psgml mode, state what file had a DOCTYOPE match. Currently, the frustrated user (that's me), can (setq sgml-trace-entity-lookup t) and see: Start looking for dtd entity html public -//W3C//DTD XHTML 1.0 Transitional//EN// system http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd catalog: /home/eric/WWW/2002/02/21-WSDL-RDF-mapping/catalog empty/non existent catalog: /etc/sgml/catalog exists catalog: /usr/lib/sgml/transitional.cat empty/non existent catalog: /etc/sgml/sgml-data.cat exists catalog: /usr/share/sgml/dtd/catalog exists catalog: /usr/share/sgml/entities/catalog exists catalog: /usr/share/sgml/entities/sgml-iso-entities-8879.1986/catalog exists catalog: /usr/share/sgml/entities/sgml-iso-entities-9573-13.1991/catalog exists catalog: /usr/share/sgml/entities/xml-iso-entities-8879.1986/catalog exists catalog: /usr/share/sgml/html/dtd/4.0/catalog exists catalog: /usr/share/sgml/html/dtd/4.01/catalog exists catalog: /usr/share/sgml/html/dtd/iso-15445/catalog exists catalog: /usr/share/sgml/html/dtd/catalog exists >> /usr/share/sgml/html/dtd/4.01/loose.dtd [by doctype html] The attached patch (psgml-parse.el.diff) changes the last line to >> /usr/share/sgml/html/dtd/4.01/loose.dtd [by doctype html in /usr/share/sgml/html/dtd/catalog] Hopefully, this will make such problems much easier to find in the future. I would still caution against "DOCTYPE html" entries (sgml-data issue above) as it will take the naive user a long time to figoure out to turn on sgml-trace-entity-lookup and know what to look for. I know, I was such a naive user. In the process I learned edebug and lisp, but that was probably excessive. This issue did not become a problem until I decieded to see why it was I needed xemacs in order to have xml-mode work for (!x)emacs. xemacs installs xhmtl1 dtds so I never had to use update-catalog to append it with pointers to downloaded catalogs files. It may be nice to include those in sgml-data as well. I have archived [2] this mail so I and others may reference it easily. [1] http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd [2] http://lists.w3.org/Archives/Public/www-archive/2003Apr/0005 -- -eric office: +1.617.258.5741 NE43-344, MIT, Cambridge, MA 02144 USA cell: +1.857.222.5741 (eric@w3.org) Feel free to forward this message to any list for any purpose other than email address distribution.
Attachments
- text/plain attachment: html_dtd_catalog.diff
- text/plain attachment: psgml-parse.el.diff
Received on Friday, 4 April 2003 17:08:50 UTC