Re: [xml-dev] @xml:base without trailing slash

From
Michael Kay <>
To
Date
2013-01-06T17:58:03Z
ID
<>
Thread
Re: [xml-dev] @xml:base without trailing slash
On 06/01/2013 17:03, John P. McCaskey wrote:
> When an @xml:base value does not end with a slash, how should nested 
> relative URIs be resolved?
>
> This example appears in the xml:base spec.
>
> <doc xml:base="http://example.org/today/" >
> .
> .
>   <olist xml:base="/hotpicks/">
>   .
>   .
>         <link href="pick1.xml">Hot Pick #1</link>
>
>
> The spec says the href should resolve to
>
> http://example.org/hotpicks/pick1.xml
>
>
> What would the resolution be if the olist element were like this,
>
>   <olist xml:base="/hotpicks">
>
>
> that is, didn't have the trailing slash? Would it be
>
> (1) http://example.org/hotpicks/pick1.xml
> (2) http://example.org/hotpickspick1.xml
Neither. It would be http://example.org/pick1.xml
>
The rules are in RFC 3986 and are complex, but in effect you start by 
removing everything from the base URI after the last slash, which means 
that omitting the "/" after the hotpicks folder name causes this part of 
the base path to be ignored.

Michael Kay
Saxonica