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

Re: Base





Dave Hollander <dmh@hpsgml.fc.hp.com> wrote:

> There was a long thread in another list that identified that base is
> either,but not both:
> 	1) the url fragment to be used to complete partial URLs
> 	2) the url of the entity
> The tread did not reach agreement that the current web spec was not
> clear enough. There was agreement that the entity address was secondary.



The same discussion came up on the HTML-WG list, and If I Recall
Correctly the conclusion was that the document's base address (i.e.,
the value of the HREF attribute on the BASE element) only specifies a
URL with respect to which relative URLs within the same document are
to be resolved.  That is, case (1) is correct (at least for HTML).

Again IIRC it does *not* have the semantics of case (2).  In
particular, the BASE element does not specify a "preferred
address" for bookmarking purposes, the browser's history list, a
"reload" function, etc., nor is there any requirement that a
document can even be retrieved through its BASE URL.


> Areas of conflict:
>  - Should base value *always* be displayed as the address of the document
> 	in browsers, hotlists, and other processing applications?

IIRC, no -- in fact it should *never* be displayed as such.

>  - Should the base be used to identify an alias for the document?

IIRC, no.

> 	If not, how?

As far as I know, no such mechanism exists for HTML.
(It _can_ be done with HTTP response headers, though;
I don't recall the exact mechanism offhand.)


>  - Should the application of the base value to a partial URL always imply
> 	a new entity?

Perhaps surprisingly, no!  There was (and as far as I
know still is) a problem with partial URLs consisting
solely of a fragment identifier, as in <A HREF="#there">.

If a document contains

	<BASE HREF="http://foo.com/where/ever.html">

the canonical rules for deriving an absolute URL from
the relative URL "#there" would yield

	<URL:http://foo.com/where/ever.html#there>

However, since there is no guarantee that the document
itself actually lives at <URL:http://foo.com/where/ever.html>,
that would leave no way for an HTML document with a BASE
element to refer to a named anchor within the same document.
Several people (myself included) urged the adoption of SGML's
ID/IDREF mechanism to express this function, but IIRC due to lack of
prior implementation it was decided that HREF attributes beginning
with a '#' should be treated as a special case instead.

(Again, this is just my recollection of the results of the
discussion; I can't find any definitive answers in RFC 1866,
1808 or 1738, and I might be misremembering.)


> Should not this group also be interested creating an othogonal definition
> for these concepts?


The BASE/SOIBASE mechanism should be sufficient for link maintenance,
as long as it's possible to specify a BASE URI for individual entities
instead of being constrained to a single base URI for the entire document (a la
the HTML 2.0/3.2/Cougar BASE element); and XML documents will 
(presumably) be able to specify intra-document relations via ID/IDREF.

Is there a need for documents to be able to state "I _really_
live at URL 'X', even if you downloaded me through some other
location."?



--Joe English

  jenglish@crl.com


References: