module namespace rev="http://exist-db.org/xquery/admin-interface/revisions"; declare namespace xdb="http://exist-db.org/xquery/xmldb"; import module namespace v="http://exist-db.org/versioning"; declare namespace date="http://exist-db.org/xquery/datetime"; declare function rev:main() as element() { let $resource := request:get-parameter("resource", ()) return
Revisions for resource {xdb:decode-uri(xs:anyURI($resource))}
{rev:display-revisions($resource)}
Revision Date User Actions
}; declare function rev:display-revisions($resource as xs:string) { let $doc := doc($resource) for $version in v:versions($doc) let $rev := $version/v:properties/v:revision/text() return ( {$rev} {date:format-dateTime($version/v:properties/v:date,"yyyy-MM-dd HH:mm:ss")} {$version/v:properties/v:user/text()} Restore Diff Annotate , ) };