最小可行标识符
minid的Python项目详细描述
minid(minimal available identifier,最小可行标识符)是一种非常简单的标识符,它可以使创建和使用变得非常简单,同时仍然具有足够的实质,可以使数据易于查找、访问、互操作和重用(fair)。
minid服务器代码可在https://github.com/fair-research/minid-server
安装
minid客户端和CLI在PyPI上可用可以使用以下命令安装它:
$ pip install minid
或者,您可以下载源代码并使用安装工具进行安装:
$ git clone git@github.com:ini-bdds/minid.git $ python setup.py install
配置
在使用api之前,您首先需要验证您的电子邮件地址。输入以下命令:
$ minid --register_user --email <email> --name <name> [--orcid <orcid>]
唯一的代码将发送到您的电子邮件地址。您必须将此代码与 访问API时的电子邮件地址。为了方便起见,您可以在 minid配置文件(~/.minid/minid config.cfg)
[general]minid_server: http://minid.bd2k.org/miniduser: <Name>email: <Email>orcid: <optional Orcid>code: <Code>
用法
cli支持以下简单操作(注意:–test标志在定期删除的测试命名空间中创建名称;删除该标志以创建生产minid):
创建一个新的标识符(如果提供了–location选项,则必须位于末尾):
$ minid --test --register [--title <title>] <file_name> [--locations <loc1>..<locN>]
检索有关文件的元数据:
$ minid --test <file_name>
检索有关标识符的元数据:
$ minid --test <identifier>
更新有关标识符的元数据:
$ minid --test --update [--title <title>] [--status <status>] [--obsoleted_by <minid>] [--locations <loc1> <loc2>] <identifier>
查看所有minid选项:
$ minid -h
登录页可通过minid网站访问:minid.bd2k.org/minid/landingpage/<;identifier>;。
文件清单格式
minid只能分配给单个文件。为了给文件集合分配minid,我们建议使用BDBag或minid文件清单格式。
minid文件清单格式是一种基于json的格式,它将文件列表枚举为具有以下属性的json对象:
- 长度:文件的长度(字节)。
- 文件名:相对于清单文件的文件名(或路径)。
- 以下算法中的一个或多个(每个仅一个):校验和键值对:
- md5:<;md5十六进制值>
- SHA256:<;SHA256十六进制值>;
- sha512:<;sha512十六进制值>
- url:文件的url。
清单可用于为文件集合创建minid,或者作为minid批处理寄存器命令的输入。
下面是一个示例文件清单配置文件:
[ { "length":321, "filename":"file1.txt", "md5":"5bbf5a52328e7439ae6e719dfe712200", "sha256":"2c8b08da5ce60398e1f19af0e5dccc744df274b826abe585eaba68c525434806", "url" : "globus://ddb59aef-6d04-11e5-ba46-22000b92c6ec/share/godata/file1.txt" }, { "length": 632860, "filename": "minid_v0.1_Nov_2015.pdf", "sha256": "cacc1abf711425d3c554277a5989df269cefaa906d27f1aaa72205d30224ed5f", "url" : "http://bd2k.ini.usc.edu/assets/all-hands-meeting/minid_v0.1_Nov_2015.pdf" } ]
更多信息
“I’ll take that to go: Big data bags and minimal identifiers for exchange of large, complex datasets”解释了Minids和相关BDBag构造的动机,提供了设计和实现的详细信息,并给出了使用示例
“Reproducible big data science: A case study in continuous FAIRness”给出了一个使用bdbags和minids捕获转录因子结合位点分析的用例。
有关该项目的更多信息,请访问:http://minid.bd2k.org/