cancel
Showing results for 
Search instead for 
Did you mean: 

tag specific versions of documents

jimn
Champ in-the-making
Champ in-the-making
A requirement for our use of the system is to be able to get versions of documents that are associated with a release of the associated software. For example, document A has versions 1, 2, 3, and 4; document B has versions 1, 2, and 3. Release X of the software corresponds to document A version 2 and document B version 1. Release Y of our software corresponds to document A version 3 and document B version 3. Tagging seems like a natural way to associate related documents but my understanding of tagging is that it tags the entire document and not any specific version. So then it doesn't meet the requirement. A workaround would be to create a folder for the release and put a copy of the specific version of each document that is associated with the release in the folder. That seems to defeat one of the main purposes of a DMS which is to keep documents in "one place" instead of scattered about. Is there another concept besides tags or other methods in Alfresco that could be used to accomplish this requirement?

We are currently using version 4 but can upgrade to version 5 if needed to meet this requirement.

Note that this question was asked here:

https://forums.alfresco.com/forum/general/non-technical-alfresco-discussion/document-version-labelin...

but that post is now about 2 years old so I'm wondering if anything changed in Alfresco since then related to this requirement. I did add a reply to that post and I apologize for "double posting" but there was no additional response to that reply and perhaps this forum is a better forum for the question.
2 REPLIES 2

afaust
Legendary Innovator
Legendary Innovator
Hello,

looking at your post and the thread you linked, I see some misconceptions about tags. And possibly how versions can be used…

Tags are not global to the document and all of its versions. Tags are just another form of metadata / properties. When you apply a tag to a document, it applies to the current version of the document only. But if you create a new version of that document, the value of the tag is now stored in that version and the current version. Unless you remove a tag again at some point in time, it will stick to the current version and be automatically applied to new versions as well. This is why it "seems" that tags apply to the document and all of its versions, because people simply do not remove the tag when it no longer applies from their business point-of-view.

So, theoretically, you could tag specific versions of a document with specific tags in Alfresco. There are but two main obstacles to using this effectively. For one, versions - once created - are frozen and can't be modified. This means you can't tag an already existing version with a new tag for e.g. a new version of your software. You can only tag the current version of the document.
Furthermore, there is currently no search support for anything but the most recent version of documents. Even if you correctly applied tags to the historic versions of a document, you could not find it using simply search. You would have to write additional, custom code to either navigate through all the versions of a document until you find the tag you're looking for or enable real, full-text search on versions - with all the complexities of access control etc. that ensue.

Using copies is probably the simplest out-of-the-box feature you could use.

Personally, I would probably develop a new kind of content type similar to a "link node", e.g. a "version link node". Instead of a full copy, this could be used as a proxy (with some aspect-oriented magic) to look like a regular document but mirror the properties of a specific version. That could then be tagged individually from the original document.

Regards
Axel

jimn
Champ in-the-making
Champ in-the-making
Thanks for the excellent response. Sounds like it is possible to do what we want with some software development.