Dear Hans-Jürgen,

> a question about the function file:list. The documenation says: "The
> returned paths are relative to the provided path." My understanding is that
> if the path is a/b/c and this dir contains a file fool.xml, the returned
> path would be "fool.xml", rather thatn "a/b/c/fool.xml".

completely true: this is why we have recently aligned the
functionality of the file:list() function to match the current EXPath
documentation. I have just added a post hoc entry in our Wiki to avoid
future surprises [1].

If you want to prefix the relative file paths with the root directory
without writing too many LOCs, you can take advantage of the XQuery
3.0 "simple map" and "concatenate" operators:

  let $p := "/root/path"
  return file:list($p) ! ($p || '/' || .)

Hope this helps,
Christian

[1] http://docs.basex.org/wiki/File_Module#Changelog
_______________________________________________
BaseX-Talk mailing list
[email protected]
https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk

Reply via email to