2007/2/20, Joe Shaw &lt;<a href="mailto:joeshaw@novell.com">joeshaw@novell.com</a>&gt;:<div><span class="gmail_quote"></span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>Indeed, and we should also use the same storage for it whenever<br>possible.&nbsp;&nbsp;I envision a three-tiered system for actually setting<br>metadata on files:<br><br>1. Store the metadata in the file itself whenever possible.&nbsp;&nbsp;Things like
<br>id3 tags in MP3s or XMP metadata in jpegs.&nbsp;&nbsp;This is ideal because it&#39;s<br>in a standardized format that most tools can read, and the metadata<br>follows the file around no matter where it&#39;s sent.<br><br>2. Store metadata in extended attributes on the file in the file system.
<br>This has the benefit in that the metadata follows the data around within<br>a single system, and our desktop applications can be standardized around<br>a schema for xattrs.&nbsp;&nbsp;Obviously this won&#39;t work for non-file items or on
<br>file systems that don&#39;t support them.<br><br>3. Lastly, store metadata in some sort of centralized store, like a<br>sqlite database.&nbsp;&nbsp;Keeping metadata in sync with data is harder, but<br>fortunately most of the data that would require this mechanism wouldn&#39;t
<br>have mostly unique URIs.&nbsp;&nbsp;I&#39;m sure Jamie will disagree with me on this,<br>but I don&#39;t think this requires a constantly running daemon; a simply<br>library interface would probably suffice.</blockquote><div><br>
Allow me to pick up on 3. :-) <br><br>How would you manage locks on the db? Was synchronization issues not the reason why leaftag wasn&#39;t successful? I mean if you can&#39;t keep file tags synchronized then you are unlikely to succeed in keeping general metadata up to date...
<br><br>Cheers,<br>Mikkel<br></div><br></div>