On Tue, Jul 7, 2009 at 8:49 PM, <[email protected]> wrote: > Does this mean that just to prove that multiple workspaces can have nodes > with same UUIDs the jack rabbit implementation sees to that the roots the the > same UUIDs? > > Reason why i ask is that technically they could have different UUIDs and > things would yet work right?
No, it's actually defined by the JCR 1.0 spec, section 4.9 [1]: "A repository implementation may make its workspace root nodes mix:referenceable. If so, then the root node of all workspaces must be referenceable, and all must have the same UUID." I think the underlying reason for this is that the workspace-to-workspace copy/move/merge algorithms rely on this. If a node is not referenceable, the nearest ancestor that is referenceable will be used (plus the relative path) - see section 7.1.8 [2]. So as fallback you always need the root node as "orientation", but in this case identified by UUID. [1] http://www.day.com/specs/jcr/1.0/4.9_Referenceable_Nodes.html [2] http://www.day.com/specs/jcr/1.0/7.1.8_Updating_and_Cloning_Nodes_across_Workspaces.html Regards, Alex -- Alexander Klimetschek [email protected]
