Hi Sebastian,
I'm on a Mac here, so I'm not sure if my experiences apply to your case as well, but I'll try my best (maybe one of my team mates can varify?).
If I run the query below for a document, I get a FileNotFound Exception, just like you: *fn:put(root(), fn:base-uri(root()))*
The path returned by fn-base-uri is:* file:/xml/test.xml *This doesn't exactly look right to me if I refer to [2]. We'll have a look at this and come back to you as soon as we know more.
As for now, to make your example work, you could either switch on the 'writeback' command of BaseX [1], or process the return value of fn:base-uri to make it a working path expression.
Thanks for reporting, feel free to ask for more -
Regards, Lukas
[1] http://docs.basex.org/wiki/Options#Database_options [2] http://en.wikipedia.org/wiki/File_URI_scheme#Windows_2
On Tue, May 24, 2011 at 8:50 AM, Sebastian.Wiemer@bertelsmann.de wrote:
Hello,
In an fn:put(TempNode,URI) I would expect base-uri(Node) as a URI parameter to work.
But base-uri(Node) returns on Windows “file:/C:/somepath/somefile.xml”,
which does not work, because the URI cannot be opened. The URI “ /somepath/somefile.xml” works.
And ***file://C****/somepath/somefile.xml* does also work.
Is this a bug?
example:
let $doc:= doc(“bla.xml”)
put(
copy $temp := $doc
modify replace value of node $temp/n with lower-case($temp/n) return $temp,base-uri($doc)
)
(: this does not work, but should it not? :)
best regards,
*******Sebastian*
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk