Re: Permitting non-indirect links

At 15:51 8/1/97 -0500, Steven J. DeRose wrote:

> Since SGML doesn't provide inter-book linking syntax,

But WG8 have already proposed the form IDREF "#ENTITY ent-name id" for this

>HyTime (until the TC) provided no support for cases similar to this. So, all
>those documents would have to be re-authored even though what they're doing
>is reasonable.

How many HyTime books would need to be reauthored for Web delivery?
(Do I need a second pair of hands to count them?)

> So, we at the very
>least need to include a comparably simple construct (the alternatives,
>telling all HTML users to re-author all their links, or to say we can't
>support HTML links in XML, are, as Vizini would have said, inconceivable).

There's no question that we need to allow a construct for embedded links to
URLs. The question is whether this is really a "comparably simple construct"
which might require the authors to re-author their links or an "link
identifying architectural form" that can be used to tell XML browsers that
this existing element is to be processed as if it were an XML link. I
contend the latter is what is needed.

>A link with a URL on an attribute is structurally the same, it just has
>slightly different syntax: it combines the two attributes into one, and it
>puts a system identifier (essentially) right there, instead of indirecting
>through the DTD.

The problem is that because it is not indirected it cannot be managed. XML
must have manageable links if we are to get people to move from the simple
world of HTML to the more complex world of XML.

> Lots of SGML "cheats" with public or system ids on
>attributes, rather than indirecting through entity declarations. We can say
>that's awful if we like, but its frequency shows it is attractive, perhaps
>a) it keeps the whole reference in once place, which greatly simplifies
>readability and maintainability.

The last thing we want is to keep the "whole reference in one place" - thats
just the problem with managing URLs. They are kept all over the place, not
at a central, controllable point.

>b) it keeps authors from having to learn a second language, namely that of
>markup declarations, so it's easier to teach, and easier to create UIs for.

Who wants to teach authors - I want authoring tools that do it all for me!

>d) it saves system resources because you don't have to keep all your entity
>dcls around on the off chance that the last element in the document may
>mention one a second time. since most entities that are declared to allow
>linking, are referenced only once or a very few times, you gain a lot on
>average even though we can dream up scenarios where you'd lose.

On my site 10% of the entities are referenced more than 20 times, and 30-40%
are referenced more than once. The phrase "off chance" hardly applies! The
overhead for referencing the ones only pointed to once is more than offset
by those that are referenced many many times.

Martin Bryan, The SGML Centre, Churchdown, Glos. GL3 2PU, UK 
Phone/Fax: +44 1452 714029   WWW home page: http://www.u-net.com/~sgml/