design/metadatagit-annexhttp://git-annex.branchable.com/design/metadata/git-annexikiwiki2015-04-09T19:04:17ZAlready existing metadata implementation http://git-annex.branchable.com/design/metadata/comment_1_22ed80bd8eabaa836e9dfc2432531f04/Konubinix2014-02-22T22:16:28Z2014-02-22T21:45:25Z
<p>Hi,</p>
<p>I love the idea behing storing metadata.</p>
<p>I suggest to exchange ideas (and maybe code) with projects already implementing metadata systems.</p>
<p>I have tried several implementations and particularly noticed tmsu (http://tmsu.org/). This tool stores tags into a sqlite database and uses also a SHA-256 fingerprint of the file to be aware of file moves. It provides a fuse view of the tags with the ability to change tags by moving files (like in the git annex metadata view).</p>
<p>Paul Ruane is particularly responsive on the mailing list and he already supports git annexed files (with SHAE-256 fingerprint) (see the end of the thread https://groups.google.com/forum/#!topic/tmsu/A5EGpnCcJ2w).</p>
<p>Even if you cannot reuse the project, they are interresting ideas that might be worth looking at like the implications of tags: a file tagged "film" being automatically tagged "video".</p>
<p>Tagsistant (http://www.tagsistant.net/) may also be a good source of inspirations. I just don't like the fact that it uses a backstore of tagged files.</p>
<p>Thanks for reading.</p>
comment 2http://git-annex.branchable.com/design/metadata/comment_2_03ae28acedbe1fa45c366b30b58fcf48/Jimmy2014-02-25T09:51:17Z2014-02-25T09:51:17Z
<p>Some additional ideas for metadata...</p>
<p>Instead of having a simplistic scheme like 'field=value' it might be advantageous to consider a scheme like 'attribute=XXX, value=YYY, unit=ZZZ' that way you could do intesting things with the metadata like adding counters to things, and allow for doing interesting queries like give me all 'things' tagged with a unit of "audio_file", this assumes one had trawled through an entire annex and then tagged all files based on type with the unix file tool or something like that.</p>
<p>The above idea is already in use in irods and its a really nice and powerful way to let users add meta-data and to build up more interesting use cases and tools.</p>
<p>btw, I plan on taking a look at seeing if I can map some of the meta that we have in work into this new git-annex feature to see how well/bad it works. Either way this feature looks cool! +1!!!</p>
comment 3http://git-annex.branchable.com/design/metadata/comment_3_ee850df7d3fa4c56194f13a6e3890a30/Jimmy2014-02-25T09:57:09Z2014-02-25T09:57:09Z
<p>actually in your mp3 example you could have ....</p>
<p>ATTRIBUTE=sample_rate, VALUE=22100, UNIT=Hertz</p>
<p>another example use case is to always be consistent with the AVU order then you could stick in ntriples from RDF to do other cool things by looking up various linked data sources -- see http://www.w3.org/2001/sw/RDFCore/ntriples/ and http://www.freebase.com/, actually this would be quite cool if git-annex examined the mp3's id3 tag, the created an ntriple styled entry can be automatically parsed with the web-based annex gui and automatically pull in additional meta-data from the likes of freebase. I guess the list of ideas can just only get bigger with this potential metadata capability.</p>
convenient way to query metadata?http://git-annex.branchable.com/design/metadata/comment_4_c32ade1524487e5fdc6f83b2db39f04c/bremner2014-03-15T21:26:14Z2014-03-15T20:58:28Z
I'd like to be able to do something like "git annex metadata -q fieldname" and have that output the value(s) of fieldname. I see I could parse the json output but that isn't too convenient in a shell script. Or have I missed something that already exists?
comment 5http://git-annex.branchable.com/design/metadata/comment_5_0ac3132cd7a84f0e170fbe3a6f235fe7/joeyh.name2014-03-15T21:30:52Z2014-03-15T21:30:52Z
@bremner, you must be up to something interesting.. Added metadata --get for you.
Why not automatically add the whole date?http://git-annex.branchable.com/design/metadata/comment_6_fa51ae544b193122334dbae7960ab3d9/tdussa2014-04-30T20:41:20Z2014-04-30T20:41:20Z
<p>Hi,</p>
<p>apologies if I am missing something, but from what I understand, git-annex will automatically add the year and the month from a file's mtime to its metadata if instructed to do so.</p>
<p>So... What about the day (or the time, for that matter?)? What is the reasoning behind the decision not to add those bits automatically? And, is there a way to get git-annex to add those bits of information automatically as well (besides the obvious way of creating a pre-commit-hook script to that effect)?</p>
<p>THX & Cheers,
Toby.</p>
comment 7http://git-annex.branchable.com/design/metadata/comment_7_04cd255a516c8520a7bc1a8fad253533/Tor Arne2014-10-01T22:43:40Z2014-10-01T22:43:40Z
I have the same question as Toby, is there a particular reason the whole timestamp is not stored?
Can tags/metadata be used for preferred content?http://git-annex.branchable.com/design/metadata/comment_8_0a7e55e7626f72f63966fa1e1d2cf100/Tor Arne2014-10-01T22:45:36Z2014-10-01T22:45:36Z
Would love to be able to "tag" something as archived instead of moving it into a special folder. Coupled with a FinderSync extension on OS X Yosemite for right-click menu. This would allow me to also "view" the archive and bring things out of there by "untagging" it, if I understand the feature correctly?
comment 9http://git-annex.branchable.com/design/metadata/comment_9_f0bb62c885a925e0da5ae8ce3c5e9003/Tor Arne2014-10-01T23:35:39Z2014-10-01T23:35:39Z
<p>Sorry for the noise, I see that tags <em>can</em> be used for preferred content, excellent!</p>
<p>But it seems metadata is tied to a key, not to a specific file/path. If I have 10 different files all with the same content (for some reason, say a simple txt file, Gemspec, or something), and I want to tag one of them as important, it doesn't mean they all are <img src="http://git-annex.branchable.com/smileys/redface.png" alt=":o" /></p>
filename from metadata?http://git-annex.branchable.com/design/metadata/comment_10_9bc2825b18ce29d2c9b2f085b95aa68c/Sunke2015-04-06T18:00:25Z2015-04-06T18:00:25Z
<p>Hi everbody,
is it possible to use a metadata field for the filename in a
metadata driven view?</p>
<p>I am thinking of the following use case:</p>
<p>git annex metadata --set artist=Led\ Zeppelin --set album=Led\ Zeppelin\ IV --set title=04\ Stairway\ to\ heaven some/weird/filename.mp3
git annex view --filename-from title artist=<em> album=</em></p>
<p>result:
Led Zeppelin/Led Zeppelin IV/04 Stairway to heaven.mp3</p>
comment 11http://git-annex.branchable.com/design/metadata/comment_11_402d7d3e8e7f2df57eb6685134226642/joey2015-04-09T19:04:17Z2015-04-09T18:31:34Z
<p>@Sunke, the reason that views make up their own filenames is to
avoid the problem of having 2 files in a view that have the same
name.</p>
<p>In your example, that could happen if you used --set title
with the same title for 2 separate files.</p>
<p>So, I don't think this can be supported reasonably.</p>