SGML: XML Link and TEI Extended Pointers

Date: Thu, 28 Aug 1997 15:44:29 -0500 (CDT)
From: "Steven J. DeRose" <sjd@EPS.INSO.COM>
Subject: Re: TEI Extended Pointers vs. XML-LINK?
To: TEI-L@LISTSERV.UIC.EDU

 ----------------------------------------------------------------------------

At 03:05 PM 08/26/97 CDT, Patrice Bonhomme wrote:

>1/ The XML linking proposal is derived from the TEI extended pointer,
>2/ The TEI DTD is going to be ported to the XML syntax.
>
>So, i was wondering if the XML TEI will keep its own extended pointers
>or use the XML links ? Because there is a risk of redundancy or
>ambiguity with both the TEI extended pointers and the XML links.

The relationships here are subtle. We have taken great pains to avoid
any syntax which would exist in both variants of xptrs but have
different meaning. Because of this, it is possible (even easy) to create
a single implementation that handles both forms.

For example, XML omitted a few of the keywords (PATTERN and SPACE, for
example); but that doesn't create "redundancy or ambiguity". And it does
not allow regular expressions, so for example you can only specify GIs
literally, not as DIV[1-3], etc.

For precisely one reason, namely that URLs can't contain space
characters, XML separates parameters in xptrs by comma instead of space
and requires an empty parameter list for ROOT and HERE. Again, no
conflict: a smart implementation will just accept either. There is no
case where a comma means one thing but a space in the same place means
something different. No ambiguity.

A few useful but tiny additions were also made, which we were
considering anyway for a future revision to TEI xptrs. One potential one
(not yet in XML, but likely to be added) is an ATTR keyword so you can
point specifically to an attribute by name. Again, no ambiguity. The
STRING keyword is a special sub-case of PATTERN; I'm not very fond of
it, but again there is no ambiguity.

So there are some differences but there should be no actual conflict,
where the same thing means different things in the two variants. A
single implementation can happily accept both variants. Since they are
98% identical anyway, that's probably a good implementation strategy.

Steve DeRose
Long-ago-chair, TEI Hypermedia subcommittee
Co-editor, XLL