todo: metadata derived from master branch filename
This commit is contained in:
parent
2f52fa60d1
commit
c7489ad4e2
1 changed files with 44 additions and 23 deletions
|
@ -11,29 +11,6 @@ Store in git-annex branch, next to location log files.
|
||||||
Storage needs to support union merging, including removing an old value
|
Storage needs to support union merging, including removing an old value
|
||||||
of a field, and adding a new value of a field.
|
of a field, and adding a new value of a field.
|
||||||
|
|
||||||
## automatically added metadata
|
|
||||||
|
|
||||||
TODO git annex add should automatically attach the current mtime of a file
|
|
||||||
when adding it.
|
|
||||||
|
|
||||||
Could also automatically attach permissions.
|
|
||||||
|
|
||||||
TODO A git hook could be run by git annex add to gather more metadata.
|
|
||||||
For example, by examining MP3 metadata.
|
|
||||||
|
|
||||||
Also auto add metadata when adding files to view branches. See below.
|
|
||||||
|
|
||||||
## derived metadata
|
|
||||||
|
|
||||||
TODO From the ctime, some additional
|
|
||||||
metadata is derived, at least year=yyyy and probably also month, etc.
|
|
||||||
|
|
||||||
This is probably not stored anywhere. It's computed on demand by a pure
|
|
||||||
function from the other metadata.
|
|
||||||
|
|
||||||
Should be a general mechanism for this. (It probably generalizes to
|
|
||||||
sql queries if we want to go that far.)
|
|
||||||
|
|
||||||
# filtered branches
|
# filtered branches
|
||||||
|
|
||||||
See [[tips/metadata_driven_views]]
|
See [[tips/metadata_driven_views]]
|
||||||
|
@ -67,6 +44,50 @@ directories nest.
|
||||||
branch it's added to. If it's in a relevent directory (like fosdem-2014),
|
branch it's added to. If it's in a relevent directory (like fosdem-2014),
|
||||||
it gets that metadata automatically recorded as well.
|
it gets that metadata automatically recorded as well.
|
||||||
|
|
||||||
|
## automatically added metadata
|
||||||
|
|
||||||
|
TODO git annex add should automatically attach the current mtime of a file
|
||||||
|
when adding it.
|
||||||
|
|
||||||
|
Could also automatically attach permissions.
|
||||||
|
|
||||||
|
TODO A git hook could be run by git annex add to gather more metadata.
|
||||||
|
For example, by examining MP3 metadata.
|
||||||
|
|
||||||
|
Also auto add metadata when adding files to view branches. See below.
|
||||||
|
|
||||||
|
## derived metadata
|
||||||
|
|
||||||
|
This is probably not stored anywhere. It's computed on demand by a pure
|
||||||
|
function from the other metadata.
|
||||||
|
(Should be a general mechanism for this. (It probably generalizes to
|
||||||
|
sql queries if we want to go that far.))
|
||||||
|
|
||||||
|
### data metadata
|
||||||
|
|
||||||
|
TODO From the ctime, some additional
|
||||||
|
metadata is derived, at least year=yyyy and probably also month, etc.
|
||||||
|
|
||||||
|
### directory hierarchy metadata
|
||||||
|
|
||||||
|
TODO From the original filename used in the master branch, when
|
||||||
|
constructing a view, generate fields. For example foo/bar/baz.mp3
|
||||||
|
would get under:foo=bar, under:foo/bar=baz, and ext=mp3.
|
||||||
|
|
||||||
|
Note that under:dir=subdir allows a view to use `under:dir=*` and only
|
||||||
|
match one level of subdirs with the glob. So is better than dir=foo/bar
|
||||||
|
as the metadata. (Alternatively, could do special glob matching.)
|
||||||
|
|
||||||
|
This allows using whatever directory hierarchy exists to inform the view,
|
||||||
|
without locking the view into using it.
|
||||||
|
|
||||||
|
Complication: When refining a view, it only looks at the filenames in
|
||||||
|
the view, so it would need to map from
|
||||||
|
those filenames to derive the same metadata, unless there is persistent
|
||||||
|
storage. Luckily, the filenames used in the views currently include the
|
||||||
|
subdirs (although not quite in a parseable format, would need some small
|
||||||
|
changes).
|
||||||
|
|
||||||
# other uses for metadata
|
# other uses for metadata
|
||||||
|
|
||||||
Uses are not limited to view branches.
|
Uses are not limited to view branches.
|
||||||
|
|
Loading…
Add table
Reference in a new issue