Hi Harvey,
So an 'audit log' would be a good reason to setup a new workspace. We're thinking here that the audit log is a different perspective (or perhaps aspect) of the node in the main 'data workspace'.
I don't think that generally speaking an audit log for a "main data" workspace would benefit from an individual workspace. Segmenting by "content type" generally is not a good usecase for workspaces.
"Corresponding nodes" (as specified in the JCR spec) are essentially nodes with the same UUID in different workspaces, not nodes that are related to each other. I would not expect any "corresponding nodes" in an audit log, but may I am overlooking something here. Personally, I would recommend to have a "/myapp/auditlog" node in the "main data" workspace to record all the information there.
Is it possible to get a session to write to two workspaces within a transaction, surely this must be possible as versioning occurs within a transaction ?
Versioning is a little bit different since it is handled inside the repository. It would be possible to have two sessions, and enroll both into the same XA transaction. However, for the audit log application I would really recommend to keep it simple and store the information in the same workspace unless there is a good reason not to do that. regards, david
