Links are links

Norman Walsh wrote:
 >...
 >
 >I have to say that an applet like this seems like a really good
 >example of something that isn't the sort of thing I'd point to with an
 >XLink. That just doesn't smell like a hypertext reference to me.

Can someone please explain the virtue of trying to distinguish between 
"hypertext links" and "other links"? To me it sounds not only 
meaningless but actually harmful to the development of real-world software.

I can think of four kinds of existing software packages that could be 
adapted to working with XLinks without caring about any particular 
vocabulary's semantics:

   * spiders like Google's indexer. I think that they will want to be
able to follow links that don't "smell like hypertext" because they will
want to follow all links, "textual" or not. They will probably discard 
links based on their understanding of the datatype, not based on their 
textual-ness.

   * link checkers (arguably a subset of spider). See above. They don't
care about our sense of hypertext-ness either. They want to follow all 
links. A broken link that is non-hypertext is just as important as one 
that is hypertext.

   * software that allows the easy dereferencing of links by other
software. e.g. data binding software. Again, the distinction between
"hypertext" and otherwise is irrelevant.

   * browsers: they care about the behaviour of the link but they can
infer its "hypertextuality" from its behavioural specification (ideally 
in some kind of CSS but in the worst case inline in XLink attributes).

So why do we insist on this distinction between hypertext links
and other links? Software doesn't care. I think that the software will 
work better if don't force arbitrary distinctions on it. And in fact, 
XLink has MUCH better traction  in software engineering shops than in 
hypertext shops *today*. So the market has defacto rejected the distinction.

Does this mean that every URI is a hyperlink? No. A URI is a hyperlink 
if its referent is supposed to be retrievable or otherwise accessible. 
So namespace URIs are not links unless a future namespace specification
says that namespace documents MUST be provided. Links to stylesheets are 
hyperlinks. Links to schemas are hyperlinks. References to abstract 
concepts are not.

Or to say it another way, a "hyper"-link is an assertion of relationship 
between two Web-retrievable resources.

That's what <a href=""> and <img src=""> have in common that xmlns="" 
and targetNamespace="" do not.

But please, can we retire the vague and useless distinction between 
links that are hypertextual and those that aren't? The virtue of XML is 
that its underlying technologies are designed not to make a distinction 
between document-style data and database-style data. Let's please not 
undo that in XLink!

   Paul Prescod

Received on Monday, 30 September 2002 14:11:25 UTC