[Prev][Next][Index][Thread]

Re: Permitting non-indirect links



Steven J. DeRose wrote:
>  
> Since SGML doesn't provide inter-book linking syntax, 
> but everybody needs inter-book links, most DTDs
> have something like:
> 
> <!ELEMENT interbook - - (whatever)>
> <!ELEMENT interbook
>    tgt.entity   ENTITY   #REQUIRED
>    tgt.idref    NAME     #REQUIRED>

This is the case precisely.  There are some variants in which more 
is added to the link attributes for particular systems, but the 
example above is the case I recognize as ubiquitous, or 
common practice.

> So, we at the very
> least need to include a comparably simple construct (the alternatives,
> telling all HTML users to re-author all their links, or to say we can't
> support HTML links in XML, are, as Vizini would have said, inconceivable).

As you note, the construct is in use in many more document types, so 
not only the HTML authors but SGML authors everywhere would be getting 
the same news.

> A link with a URL on an attribute is structurally the same, it just has
> slightly different syntax: it combines the two attributes into one, and it
> puts a system identifier (essentially) right there, instead of indirecting
> through the DTD. 

A system identifier is typically a pathname.  So is a URL despite the 
RFC protestations to the contrary ('looks like Unix..smells like
Unix..').
However:

URL-reference = [absoluteURL | relativeURL] ["#" fragment ]

is a much more powerful semantic.  It is also compact and
well-supported.

Note that formally, the reference information specified in a fragment 
is not part of the URL, but is "used in conjunction with a URL.  The
format
and interpretation of fragment identifiers is dependent on the media
type 
of the resource reference by the URL.  A URL reference that does not 
contain a URL is a reference to the current document.  In other words, 
an empty URL reference within a document is interpreted as a reference 
to the start of that document, and a reference containing only a
fragment 
identifier is a reference to the identified fragment of that document.  
Traversal of such a reference should not result in an additional
retrieval 
action." [draft-ietf-URL-syntax-00] 29 Dec 1996.

> So that's another plea for (a) keeping it majorly simple for simple cases,
> and (b) making sure existing HTML and other linking protocols can be subsumed.

Simplicity is preferred.  What I read of the URL suggests the choice 
of scheme and "which notation handler cares about THIS *fragment*" 
is all the wiggle room there is in this assignment.

len bullard


Follow-Ups: References: