Minority Opinion on external linksets in XLink

In the XLink Last Call draft, section 3.1.5, "External Linksets for 
Resources Participating in Extended Links," indicates that an "external 
linkset" is an in-band "list of references to potentially relevant 
linkbases." 

In the third paragraph of that section, it says:

  "Ideally, in order for a remote starting resource to avoid dependencies
  on the location of any linkbases that point into it, there will be an
  out-of-band method of informing a system how to locate relevant linkbases.
  Such methods are outside the scope of this specification. However, in cases
  where an out-of-band method is not available, XLink provides an in-band
  way for a resource to identify the likely locations of linkbases whose
  extended link locators point into it...."

Given that out-of-band methods are ideal, some of us feel that providing
an in-band method is inappropriate, and we would prefer not to have any 
syntactic specification for external linksets in the XLink specification.

One of the key use cases of external linkbases is to allow the 
definition of links to/from a read-only document as in the case 
of annotations (e.g., comments, electronic review, glossing, ratings, 
other metadata) offered by someone other than the author of the original
document.  And there may well be many different such linkbases being 
offered by many people.  An out-of-band way to reference linkbases
is required for this use case.

Note that "the presence of an XLink-encoded external linkset anywhere 
inside an XML document" flags the reference to an external linkset.
This implies that an application has to read the entire document before
it can locate the linkbases.  An out-of-band method, such as a packaging
method, would allow an application to find linkbases without first reading
the entire document.

We already have doctype declarations to refer to DTDs, a stylesheet 
PI to refer to the stylesheet, and we know we need some packaging 
mechanism to associate schemas, other XML and non-XML entities, 
scripts, etc.  (And at least all these in-band methods have the
information at the top of the document and don't require reading
the entire document to search for such potential information.)  An 
external linkbase should be just another such resource that can be 
included in a "package."  

We need such an out-of-band way to address the read-only use case 
already, so some way of including a reference to a linkbase in a 
package is already necessary.  Also providing an in-band way just
adds to the complexity of tools and priority/resolution issues
when both methods are used at the same time.

Received on Thursday, 17 February 2000 10:24:02 UTC