Case 2 assumes that the document exists and was not simply produced
dynamically by a script. There are cases where the base can't point
to the URI for the document because the document doesn't have one.
So, since the document is produced by a script, why not have the
script produce absolute URI and not use the base, right? Well, the
script may be assembling document fragments that contain relative URIs
and have no choice in the matter (perhaps a standard toolbar). I
don't think we should be unnecessarily restrictive by requiring the
base to be a URI to the document.
How about:
If the base ends in a '/' then it is a base for relative URI
references and '#frag" refers to "this#frag".
If the base does not end in a '/' then it is to be treated as the URI
for the current document as well as the base for relative URI
references and "#frag" refers to "this#frag" or "base#frag" depending
on whether the document has expired.
Vince Tkac
tkac@oclc.org