Re: Radical cure for BOS confusion
Derek Denny-Brown <email@example.com> proposed:
> A XML Hyperlinking processor should ("is required"?) to notify the
> application of all anchors of hyperlinks only if the anchor and the
> hyperlink are declared in teh same XML document. External resurces, as
> provided-by/restricted-by the BOS (and any other constraining mechanism we
> choose to define), may be used to locate the anchor.
> The problem with the above proposal is that it breaks the usefulness of
> ilinks for annotations. I am not very happy about this, and would be happy
> to hear a better solution.
There were similar issues raised in the development of SoftQuad Explorer
and SoftQuad Panorama.
ViewPort (the underlying SGML toolkit for both products, developed
by Synex) supports ilinks, but only as long as the document
containing each ilink is in memory. Once that document has gone,
the corresponding links it contained also vanish.
Now, Panorama has a single-document interface. As a result, if you
have an ilink in a document, it works as if it were a
unidirectional link, because when you follow it, the current
document is unloaded, and the ilink in the first document is
Panorama also supports "webs", which are (mostly) HyTime documents
that are used to store user-defined links and annotations. The
links are all ilinks, but the "web" document is kept in memory for
the whole session, so its ilinks work.
For simplicity, though, our documentation says that SoftQuad
Panorama does not support ilinks.
Clearly for internet use you can't assume that you have access to all
other documents that might have ilinks referring to some particular file.
If ilinks are supported, it seems to me that the important thing is that
the application is able and willing to retain interest in multiple
documents at the same time, and that the document containing any given
ilink is retained locally (whether in memory or in persistent storage
using a database, for example) for as long as it is desired that
user-visible evidence of the ilinks be available.
If an ilink is defined as having on end in the document that contains
it, you might as well use a clink and have done with it.
Frankly I think all this stuff is far too complicated anyway.
Tim Berners-Lee made a simpler system, and many more people adopted it.
I want to be able to put a URL and/or TEI pointer into an attribute.
I don't want to require an entity name there, and if I want that
kind of indirection I can get it by putting an entity in the attribute
itself -- href="&link42;" for example. I don't want the HyTime clink
or ilink syntax.
Luckily, with base XML, I can use TEI pointers in from and to attributes
directly and ignore any xml spec on linking if I want to.
I'm still a little behind in my reading of the archives for December
and january, though. Perchance I shall stumble over the root of a
mighty willow tree offering me a compelling argument for complexities
Byzantine and Impenetrable!