W3C home > Mailing lists > Public > w3c-sgml-wg@w3.org > December 1996

Re: Client-side-resolved Indirection

From: Paul Prescod <papresco@calum.csclub.uwaterloo.ca>
Date: Mon, 02 Dec 1996 13:42:15 -0500
Message-Id: <1.5.4.32.19961202184215.00a7ad94@csclub.uwaterloo.ca>
To: Michael Sperberg-McQueen <U35395@UICVM.UIC.EDU>, W3C SGML Working Group <w3c-sgml-wg@w3.org>
Cc: Paul Prescod <papresco@calum.csclub.uwaterloo.ca>
At 12:04 PM 12/2/96 CST, Michael Sperberg-McQueen wrote:
>On Mon, 2 Dec 1996 12:35:15 -0500 Paul Prescod said:
>> ... You've hit the nail on the head in a couple of respects. First,
>>document *authors* should not care about the resolution mechanism of
>>document *consumers*. They should be totally independant.
>
>As an author or publisher, I don't care about the mechanics; I do
>care, rather a lot, about ensuring (a) that the document consumer can
>actually resolve entity references and (b) that when they do, they
>get the right thing.  Specifying a method of resolving FPIs seems to
>make those guarantees; specifying FPIs without a defined method of
>resolution seems to make neither guarantee.  

How so? How is this:

<!ENTITY foo PUBLIC "-//Paul//FOOBAR" "http://www.paul.com/foobar">

harder to resolve correctly than this?

<!ENTITY foo PUBLIC "-//Paul//FOOBAR">

and then, in an *external* file,

PUBLIC "-//Paul//FOOBAR"
http://www.paul.com/foobar

The latter seems more likely to break, to me. And besides, what's the point?
As I've pointed out, you have only shifted the resolution by one indirection
level. You might as well have used HyTime mechanisms to point into an
XML-syntax "catalog" file.

>Not that I know of.  Version 3.2 of HTML did not exist before the advent
>of SGML Open catalogues; the entity sets did, but I don't believe I ever
>downloaded SGML documents from the Web at that time; when on occasion I
>got SGML documents from other people, working with the DTD subset to
>make my SGML systems find the entity sets was just part of the job of
>getting the files to parse.

Ouch. Your experience was worse than mine. I suspect the big difference may
be that TEI is a set of DTD fragments and not a monolithic DTD.

As you may know I helped to run a technical writing course on the Web where
all of the students used our public identifiers. We had hundreds of
students, were using a mix of software with and without SGML Open catalog
support and never had any problems with FPI lookup. In retrospect, I don't
really know what *could* have gone wrong, or how SGML Open catalogs would
have helped at all. As long as you have agreed upon a set of public
identifier names, the system is quite robust, with or without catalogs.

When people send you documents, do they usually send a catalog file? If not,
then why do you care if the format is standardized. If so, then how could
they have predicted the layout of your hard drive? And if they could have
done so, they could have hard-coded the entity system ids, right?

>Don't believe your eyes; TEI Lite has a public identifier and has, as
>far as I can remember, always had one.  I could be wrong, of course.
>Maybe it's only had one since Panorama became available and used the
>SGML Open catalogue.

Okay, so TEILite is a good example. Although I still have software around
that doesn't support public identifiers, if I were going to download more
than three teilite document this week, I would modify the two or three
catalog files on my hard disk to support it. Better to make those three
changes today than one per document that I download.

 Paul Prescod
Received on Monday, 2 December 1996 13:39:48 EST

This archive was generated by hypermail pre-2.1.9 : Wednesday, 24 September 2003 10:03:47 EDT