Let&#39;s get the ball rolling on the metadata spec. This first period will just be *brainstorming*, so let&#39;s try and avoid the nitty gritty details for now.<br><br>&nbsp;** What we need:<br><br>&nbsp; Fields)&nbsp; Metadata field names and descriptions for *desktop* objects
<br><br>&nbsp; Types) A type grouping of metadata fields to be used in user search language. Example types could be &quot;Email&quot;, &quot;Image&quot;, &quot;Audio&quot;, etc.<br><br>&nbsp; API) A dbus api to get/set metadata<br>
<br>&nbsp; ?Tag/Emblem) Tagging/Keywords/Emblems
<br><br>&nbsp;** Starting points/References:<br>&nbsp;- Adobe XMP: <a href="http://partners.adobe.com/public/developer/en/xmp/sdk/XMPspecification.pdf" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://partners.adobe.com/public/developer/en/xmp/sdk/XMPspecification.pdf
</a><a href="http://freedesktop.org/wiki/Standards_2fdesktop_2demblem_2dspec" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"></a><br>&nbsp;- Shared Metadata Spec: <a href="http://freedesktop.org/wiki/Standards_2fshared_2dfilemetadata_2dspec" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">

http://freedesktop.org/wiki/Standards_2fshared_2dfilemetadata_2dspec</a><br>&nbsp;- Tracker metadata api: <a href="http://svn.gnome.org/viewcvs/tracker/trunk/data/tracker-introspect.xml?view=markup">http://svn.gnome.org/viewcvs/tracker/trunk/data/tracker-introspect.xml?view=markup
</a><br>&nbsp;- Spotlight Metadata Spec: <a href="http://developer.apple.com/documentation/Carbon/Reference/MetadataAttributesRef/Reference/CommonAttrs.html" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
http://developer.apple.com/documentation/Carbon/Reference/MetadataAttributesRef/Reference/CommonAttrs.html
</a><br>&nbsp;- Shared Emblem Spec: 
<a href="http://freedesktop.org/wiki/Standards_2fdesktop_2demblem_2dspec" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://freedesktop.org/wiki/Standards_2fdesktop_2demblem_2dspec</a><br>&nbsp;- Others ideas? Nepomuk-specs? Beagle-specs?
<br><br>&nbsp;** My thoughts:<br>Regarding Fields): To prevent death-by-1000-page-spec I suggest we keep the field names to a core set of commonly used attributes. Ie not like Apples spotlight spec (see above) which defines every known property in the universe. When things move on, teams with expert knowledge can refine extensions to this spec. Fx a Wasabi Photography Metadata spec could be hashed out by people in the know (which could just be EXIF, but I&#39;m not the photography expert).
<br><br>Regarding Types): There are some suggestions in the top of the Tracker api link above. Regarding these I think we should leave the VFS* types out, and only use single-word type names (Ie no spaces).<br><br>On the API): Obviously we getters and setters. They probably need to operate on uris. There probably needs to be some search functionality in here too since we probably shouldn&#39;t assume that the indexer and metadata server are the same.
<br><br>Tagging/Emblems: If you ask me they should be &quot;just another type of metadata&quot;. When the metadata spec matures a bit we can evaluate if it needs it&#39;s own api to make things easier (and allow for dedicated tagging services).
<br><br>Cheers,<br>Mikkel<br>