DMS

xattr + qxattr + webdav + inotify + LFS + acl/selinux + owl + Tracker/Nepomuk = DMS.
Цель: создать нечто на _существующих_ технологиях для разгребания бардака.

xattr
здесь мы будем хранить метаданные, коих нед в самих файлах. Варианты:

  • неуправляемые

    • теги - просто чисто текстовые теги; атрибут - свободный, содержание - свободно (текст);

    • теги - хоть какие-то; атрибут - свободный, содержание - как-то определен тип (строка, число, etc);



  • управляемые:

    • тег - 1 шт - сцылко на метаданные: "id=" - идентификатор ключа в некоей базе;

    • тег - любой, но вносить - только под контролем централизованного списка.




Сюр в том, что метаданные привязаны к собсно файлам - без учета их имени.



qxattr (или примочка к текущему DE - KDE или GNOME - больше нет никто).
Правая педаль - свойства - закладка метаданные. И тут - примерно как в eiciel (или во вновь изготовленной мной примочке qxattr) - расставляешь xattrs и их значения
webdav
Это - ксотыль для тех случаев, когда невозможно править xattr напрямую. E.g.: nfs, smb.
inotify
Этот член команды фиксирует появление нового файла. Мессаги шлёт оунеру, в очередь ставит, в списки вносить - короче, фиксирует.
LFS
Это - костыль для posix. На базе xattr развешивает наши файлы по куточкам. Можно и править -перемещение/копирование файла меняет xattr.
acl/selinux
Это - очень правильная штука. Можно сделать мусорку и сделат так, чтобы никто внутри неё не разворачивал мегадерево подкаталогов. Положил - получил мессагу от inotify - проставил атрибуты. обязательно. А больше - ничего.
owl
Это можно использовать для внятного указания значения (семантики) атрибутов. Вплоть до указания - какой файл кому какой рабинович. Куски owl могут быть именно значениями атрибутов.
Tracker/Nepomuk
А эти перцы будут нам круто искать информацию. Они оба умеют xattr и/или owl.



PS: html, конечно, кумарит... wiki или docbook намного лутше.

Комментариев нет:

Tags