#789117 w3c-sgml-lib: w3c-recommended DTDs not resolved

#789117#5
Date:
2015-06-18 00:20:09 UTC
From:
To:
Dear Maintainer,

I had issues resolving the DTD for "-//W3C//DTD HTML 4.01 Transitional//EN".

Demonstration and fix:

~/tmp$ wget http://www.w3.org/QA/2002/04/valid-dtd-list.html

~/tmp$ cat valid-dtd-list.html | tr '\r\n\t' ' ' | elinks -dump | grep
"DOCTYP.*W3C" | cut -d\" -f 2 | sort -u | sed "s|\(.*\)|xmlcatalog
/etc/xml/catalog '\1'|" | sh -

No entry for PUBLIC -//W3C//DTD HTML 3.2 Final//EN
No entry for PUBLIC -//W3C//DTD HTML 4.01//EN
No entry for PUBLIC -//W3C//DTD HTML 4.01 Frameset//EN
No entry for PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN

I got past this by editing 2 xml-catalog files:

/etc/xml/catalog
-----------------------
        <!-- added these next 2 lines -->
        <delegatePublic publicIdStartString="-//W3C//DTD HTML 4.01
Transitional//EN" catalog="file:///usr/share/xml/w3c-sgml-
lib/schema/dtd/catalog.xml"/>
        <delegateSystem
systemIdStartString="http://www.w3.org/TR/html4/loose.dtd"
catalog="file:///usr/share/xml/w3c-sgml-lib/schema/dtd/catalog.xml"/>
    </catalog>
-----------------------

/usr/share/xml/w3c-sgml-lib/schema/dtd/catalog.xml
-----------------------
        <!-- added these next 2 lines -->
        <public publicId="-//W3C//DTD HTML 4.01 Transitional//EN"
uri="/usr/share/xml/w3c-sgml-lib/schema/dtd/REC-
xhtml1-20020801/xhtml1-transitional.dtd" />
        <system systemId="http://www.w3.org/TR/html4/loose.dtd"
uri="/usr/share/xml/w3c-sgml-lib/schema/dtd/REC-
xhtml1-20020801/xhtml1-transitional.dtd" />
    </catalog>
-----------------------