Re: Link-3: Sets, Singletons, and Determinism

Apologies if this point is already made -- I'm never going to say anything
if I don't jump in...

At 11:38 AM -0700 5/18/97, Tim Bray wrote:
>Although XML-link currently doesn't address this at all, the spec probably
>follows the TEI principal of determinism; that is to say, you always get
>exactly one location as the result of an xpointer (or in the case of spans,
>two).
>
>If we are going to allow spans, and thus an xpointer to return N
>locations, where N>1, should we consider saying that all xpointers
>return sets of objects, and sometimes the size of the set is 1?  This
>would open up a whole bunch of interesting apps.

Why N locations. I think a span should return one object: a Pair of
locations in the doucment. This is not the same as returning two locations
(though it's close). Trying to list the "things" beteen the points is
likely to be hard, and maybe to make things harder for applications anyway.
Other than restricting the internal interface of an XML processor, what
does it even _mean_ to return a set of objects (presumably an ordered set).
I think we should say that a span is a pair of points seginating a region
of the document, but leave the representation and manipulation of the
region to the application. I can see discussing this in style sheets, but
not here.

>On the other hand, it would make xpointers smell even more like queries
>and less like addresses, which makes me at least nervous.
I think this is the point -- a composit address (a pair of points) is
different from a set of objects located relative to those points.

> We also
>have to be careful if we are going to (see a later message) allow
>sub-element addressing; then we'd have to say that either that is
>a set of one pseudo-element, or that xpointers can return either
>sets of elements or spans of characters.  Tricky either way... but
>returning sets of elements is a seductive idea.

I've got to reread the spec to see how we phrase it, but don't locators
_designate_ data items, not return them? for most link-following
applications you don't want to grab just the contents of an anchor, you
want to access it in context.

The more I think about what you're saying, the less I understand why we
would ever want to do things that way. The model of returning data of any
kind to the link seems wrong to me: we should be defining a syntax for
locators, and enough information about what that syntax means that an
application can translate that syntax into a maningful locator in its
internal representation.

We're not defining an API, so nothing should be "returned".

  -- David

_________________________________________
David Durand              dgd@cs.bu.edu  \  david@dynamicDiagrams.com
Boston University Computer Science        \  Sr. Analyst
http://www.cs.bu.edu/students/grads/dgd/   \  Dynamic Diagrams
--------------------------------------------\  http://dynamicDiagrams.com/
MAPA: mapping for the WWW                    \__________________________

Received on Wednesday, 21 May 1997 12:56:30 UTC