• Expose jcr:uuid to document?

  • Help us to improve OpenKM! Be part of the Open Source Community.
Help us to improve OpenKM! Be part of the Open Source Community.
Forum rules: Please, before asking something see the documentation wiki or use the forum search function.
 #104  by mmanley
 
I am using OpenKM as a repository of web page components (images, templates, js and css files, pdf files, etc.). I am writing an application that uses OpenKM\'s SOAP API to pull specific versions of items out of the repository and push them to our content delivery network. (I\'m not serving assets from OpenKM, just populating the actual content server with items managed and stored in OpenKM.)

One thing that I have discovered that I need is an unchanging ID for any given piece of content, one that remains constant despite changes in the item\'s name or its location. Right now the closest thing to a unique key for a piece of content in the repository is path and name, and both of them are mutable, which breaks the link between an object in the repository and on the content server.

In the Jackrabbit repository behind OpenKM, I believe that need is fulfilled by the jcr:uuid property. However, that property is not exposed to the Document object in the SOAP API or, from my searching the source code for OpenKM, the Document bean.

What I would like to see is jcr:uuid exposed in the Document object as a read-only property, returned in the getProperties() method of the SOAP API.

Then I would always be able to find a document by using the search API\'s findByStatement() with the following kind of query (which I\'ve tested successfully):

//element(*, okm:document)[@jcr:uuid = \'64d68ec3-b12b-4f01-9af3-71568af9aedd\']

Any chance we can see this in an upcoming release?

Thanks,

MSM
 #107  by pavila
 
Yes, this is a quick improvement. I can try to simplify your seach like a method like getDocumentById or something like this. I will think about it this weekend.
 #111  by pavila
 
I\'ve added the UUID to the Document bean. Now I\'m thinking about provide a method to make a bridge between path and UUID representation. Something like getPathFromUuid(xxx). What do you think?
 #114  by mmanley
 
As long as jcr:uuid is exposed by Document.getProperties() then I\'m happy. Having getPathFromUuid() would be OK, but if I know jcr:uuid for any piece of content, I can get all of the info I need in one call to Search.findByStatement(). I guess it all depends on what\'s most efficient.

Thank you very much.

MSM

About Us

OpenKM is part of the management software. A management software is a program that facilitates the accomplishment of administrative tasks. OpenKM is a document management system that allows you to manage business content and workflow in a more efficient way. Document managers guarantee data protection by establishing information security for business content.