Hi,

I am using ML 5.0.3-1 version, I enabled the "inherit permissions"
(default). I set some permissions on the root folder "/", for example, I
set the read, update for role editor.

Then when I used xdmp:document-insert($uri, $xml) function to insert new
xmls within the root folder "/", the new xmls can inherit the parent's
permissions. This is correct.

But, if I use dls:document-insert-and-manage($uri, fn:true(), $xml)
function to insert new xmls and put them into version control, the new xmls
do not inherit the parent's permissions. They just have the dls-internal
permissions - read and update. Is this expected results? If yes, does that
mean I have to use xdmp:document-add-permissions to add the permissions
again?

I read the dls.xqy, the dls:document-insert-and-manage function calls the
xdmp:document-insert function to insert the document, then uses the
xdmp:document-set-permissions to merge the new permissions, including the
dls-internal read and update, but I found when getting the permissions from
the document, it uses xdmp:document-get-permissions function, in this case,
it returns empty because, I think, the xdmp:document-insert call has not
been committed yet. (In the same transaction)

One more interesting thing, the version files in the _xml_versions/ folder
do not have the read permission of the dls-internal. (the version folder
has both the read and update permissions of the dls-internal)

Thanks,
John
_______________________________________________
General mailing list
[email protected]
http://developer.marklogic.com/mailman/listinfo/general

Reply via email to