Re: [xml] Base URI and symbolic links
- From: Daniel Veillard <veillard redhat com>
- To: Neven Has <haski sezampro yu>
- Cc: xml gnome org
- Subject: Re: [xml] Base URI and symbolic links
- Date: Wed, 13 Mar 2002 06:04:50 -0500
On Wed, Mar 13, 2002 at 11:46:02AM +0100, Neven Has wrote:
Hi,
In the situation like:
test/doc.xml
test/doc.dtd
symbolic_link.xml -> test/doc.xml
when parsing symbolic_link.xml, the library tries (and fails) to load
doc.dtd, using the current directory as a base.
("doc.xml" refers to just plain "doc.dtd")
RFC-2396 says:
5.1.3. Base URI from the Retrieval URI
If no base URI is embedded and the document is not encapsulated
within some other entity (e.g., the top level of a composite entity),
then, if a URI was used to retrieve the base document, that URI shall
be considered the base URI. Note that if the retrieval was the
result of a redirected request, the last URI used (i.e., that which
resulted in the actual retrieval of the document) is the base URI.
Now, is symbolic link a "redirected request"? If yes, should the base
URI be a test/ instead?
I don't think so. the case of a redirected request is the following:
You ask the server for a resource (like HTTP)
The server replies back that the resource has moved this include providing
the new name.
You ask the server for the new resource.
For example an internal redirect in the HTTP server has not that property of
giving back the new name to the client. It is not considered a redirrect
from RFC2396 viewpoint.
This is the same for symlinks, open() does not indicate that another
path should be used, it provides the content transparently. It is hence
not a redirrect in my opinion, and the current behaviour is correct I think.
Also in practice if you don't have the new name, how would you update the
base ? Except by trying to look at other filesystem metadata, but it's
not part of the base file access API, not portable, and semantically
wrong IMHO.
Daniel
--
Daniel Veillard | Red Hat Network https://rhn.redhat.com/
veillard redhat com | libxml Gnome XML XSLT toolkit http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]