[xml/sgml-pkgs] Bug#662091: help
Samuel Bronson
naesten at gmail.com
Tue Mar 6 19:48:22 UTC 2012
On Mon, Mar 5, 2012 at 5:45 PM, Nicholas Bamber <nicholas at periapt.co.uk> wrote:
> Samuel,
> I am sorry you had issues with w3c-sgml-lib. I put the package together
> because what went before (w3c-dtd-xhtml) could not be kept up with the
> w3C which I saw as the upstream. Some things I did in the package wee an
> attempt at backwards compatibility. However I am now busy with quite a
> few other things and I reckon you know how this stuff works better than
> I do. So I would really appreciate it if you were able to offer a patch.
Well, the simplest remedy for *this* problem would be to
remove/comment out both lines in debian/sgmlcatalog, e.g. using the
appended patch, but in poking around a bit, I ran into several other
problems:
First of all, there certainly *are* a bunch of broken symlinks:
http://lintian.debian.org/full/debian-xml-sgml-pkgs@lists.alioth.debian.org.html#w3c-sgml-lib
has a list of these.
Second, it installs copies of/links to the top-level "catalog.xml"
(and the translation to SGML Open Catalog format, "catalog") in
subdirectories (in the name of "compatability") which, like the copies
of sgml.soc and xml.soc presently installed in /usr/share/sgml/xhtml/,
reference other files using relative paths and are thus broken by
being relocated separately from them.
Third, it installs all of the upstream files under
/usr/share/xml/xhtml/schema/dtd/, even though:
* The name of the package is "w3c-sgml-lib", which leads one to
expect things to be installed under /usr/share/sgml.
* Several of the directories actually concern SGML-based versions of
HTML, and would seem more at home somewhere like /usr/share/sgml/html/
* There are also a few directories devoted to things like MathML and
SVG, which, while they are XML applications, still aren't XHTML and
so still seem out of place where they are.
Now, there *are* some good reasons to install this way:
* Upstream's catalog files (catalog.xml, sgml.soc, and xml.soc) cater
to this layout.
* They could probably be split between /usr/share/sgml and
/usr/share/xml, but it would be a pain to keep track of what went
where, make sure that everything got installed somewhere, and perhaps
also to get w3c-markup-validator to look in both places.
So, considering all of this, and the fact that you don't include all
of the same DTDs as w3c-dtd-xhtml, I would recommend that you relocate
everything to /usr/share/sgml/w3c-sgml-lib, (perhaps symlinked from
/usr/share/xml/w3c-sgml-lib ?), drop the Provides:/Conflicts: on
w3c-dtd-xhtml, declare a Breaks: on existing versions of
w3c-markup-validator, and upload a new version of the validator that
requires the new version of w3c-sgml-lib.
The justifications for this path being:
* XML is a kind of SGML, but not the other way 'round, so if we're
going to install everything in one place, the SGML place is the better
of the two.
* Since there is no one format [family] to name the directory after,
we go with the traditional rule "just use the package name".
Anyway, here's the patch to fix the immediate problem I encountered:
Index: debian/sgmlcatalogs
===================================================================
--- debian/sgmlcatalogs (revision 1916)
+++ debian/sgmlcatalogs (working copy)
@@ -1,3 +1,7 @@
-htdocs/sgml-lib/sgml.soc /usr/share/sgml/xhtml/sgml.soc
-htdocs/sgml-lib/xml.soc /usr/share/sgml/xhtml/xml.soc
+# There may be useful stuff in these, but they also set some
+# non-working default SGML declarations, so we can't safely add them
+# to the system-wide /etc/sgml/catalog.
+# htdocs/sgml-lib/sgml.soc /usr/share/sgml/xhtml/sgml.soc
+# htdocs/sgml-lib/xml.soc /usr/share/sgml/xhtml/xml.soc
+
Index: debian/changelog
===================================================================
--- debian/changelog (revision 1916)
+++ debian/changelog (working copy)
@@ -1,3 +1,14 @@
+w3c-sgml-lib (1.2-2~naesten1) unstable; urgency=low
+
+ * Don't link sgml.soc and xml.soc into /etc/sgml/catalog -- they are
+ specially crafted for use with w3c-markup-validator, and set things
+ that shouldn't be set globally.
+ * Also don't install sgml.soc and xml.soc into /etc/sgml/xhtml/ -- they
+ don't work there anyway, since they refer to many other files by
+ relative paths, none of which are found there.
+
+ -- Samuel Bronson <naesten at gmail.com> Tue, 06 Mar 2012 13:13:13 -0500
+
w3c-sgml-lib (1.2-1) unstable; urgency=low
* New upstream release
More information about the debian-xml-sgml-pkgs
mailing list