Re: Is this use of BASE kosher?

Dave Hollander (dmh@hpsgml.fc.hp.com)
Thu, 3 Aug 95 16:37:08 EDT

As in my first message today, I think the RFC1808 can be fixed
easier by just removing the example that use the "#fragment" form.

It may also help to add some form of the suggested notes to section 5.2,
Abnormal examples, but it is not really abnormal. The first notes
is redundant, it is what RFC1808 is all about. The second note would
make things clearer. Specifically if added to 2.4.1 as shown here:

2.4.1. Parsing the Fragment Identifier

If the parse string contains a crosshatch "#" character, then the
substring after the first (left-most) crosshatch "#" and up to the
end of the parse string is the <fragment> identifier. If the
crosshatch is the last character, or no crosshatch is present, then
the fragment identifier is empty. The matched substring, including
the crosshatch character, is removed from the parse string before
continuing.

Note that the fragment identifier is not considered part of the URL.
However, since it is often attached to the URL, parsers must be able
to recognize and set aside fragment identifiers as part of the
process. Furthermore, a stand-alone fragment is not a relative URL, |
but is a reference internal to the current copy of the document. |

and in 5.1. Normal Examples:

g?y/./x = <URL:http://a/b/c/g?y/./x>
#s = #s |
g#s = <URL:http://a/b/c/g#s>

> From: Dave Hollander <dmh@hpsgml.fc.hp.com>
> | RFC1808 does not specify that URLs that are only fragments must be fully
> | qualified before being processed, and it only suggests that they may be in
> | the examples.
> |
> | Regardless of if you retrieve the document again or not (it IS the
> | same document) the browser must *then* locate the anchor named "Printers".
> | This is the desired result.
> ---
>
> How would people feel about adding text in a future version of the
> standard to say that
>
> (1) if a BASE is present, relative references are resolved
> relative to the specified BASE
>
> (2) a stand-alone fragment is not a relative reference, but is
> a reference internal to the current copy of the document
>
> (3) if the complete URI formed to resolve a relative reference
> is the current document or a location within the current
> document (where the "current document" is defined to be
> what is specified by BASE or, if BASE is not present, the URI
> under which the document was retrieved, then the browser
> shall resolve it within the current copy of the document
>

Dave Hollander