Open grantcv1 opened 3 years ago
The behavior you see in eXist was true for eXist 5.2.0 and lower, but with https://github.com/eXist-db/exist/pull/3349, the next release of eXist will match the behavior you see in FusionDB. The change was to ensure fn:collection()
function would return proper document-node()
nodes (containing XML data, not binary data). As an alternative for your use case, consider xmldb:get-child-resources()
.
Thanks @joewiz. @grantcv1 The change was made so that FusionDB (and eXist-db) become more compliant with the W3C XQuery specifications. There is some explanation and details in the issue that Joe referenced.
For returning a list of URI as your query above is shown, it is actually more efficient to use xmldb:get-child-resources
as suggested by Joe.
I hope that helps? Let us know if you need any more support in this area.
I'm running the Alpha 3 Docker instance.
I'm finding that I can't see the PDF files I have installed alongside my XML documents.
This had worked fine with eXist-db and I've changed nothing other that switch to the FusionDB instance.
My simplified xquery is:
xquery version "3.1"; declare namespace d="DAV:"; for $doc in collection('/repository/grantcv1') return ( let $fileURI := base-uri($doc) return
{$fileURI}</d:href>
</d:response>
)
I get all the XML files, but nothing else. I used to get the complete list of files in the folder.