I'm trying to understand how the metadata (color labels; icon labels; comments, a.k.a. descriptions) is stored. And how to store it reliably.
Please, correct me if I mixed up or missed something. Also, I want to understand which way is "better" from user's subjective point of view.
* * *
Depending on user's preferences:
Labels could be stored (1) in alternate data stream or (2) in internal Directory Opus database.
Comments could be stored (1) in alternate data stream or (2) in descript.ion files.
Sadly, each way have too many flaws.
What is the disadvantages of using descript.ion files for comments?
When you copy or move the file into another folder, the comment will not be copied.
What is the disadvantage of using DO internal database for labels?
The first flaw is that such labels will not be copied, the same way as it was described about the comments, see above.
The second flaw. Let's assume we have Foo.txt with green color label and "Checked" status. If we try to rename it to Foo1.txt, both green color label and "Checked" status will not be preserved.
And even worse, if we copy the file with the same name (Foo.txt) from some another directory to this one, it will be automatically colored to green and it will be assigned "Checked" status to it. In 99% cases we don't want this behaviour.
What is the disadvantage of using alternate data streams?
Flash drives are widely used across users. If I want to share some document with my friend and we have not internet connection (or the document have very sensitive information), I will copy this document to flash drive and give it to my friend on our next meeting.
But when I receive a flash drive with edited document from my friend, all alternate data streams will be lost, because it was copied from FAT32 (default file system of flash drives).
Possible solutions and your own workflow?
What's your own way to store reliable labels and comments?