公平数据点的Python实现

fairdatapoint的Python项目详细描述


公平数据点(FDP)

PyPIDocker Image Version (latest by date)DOIResearch Software DirectoryBuild StatusCoverage Status

公平数据点的Python实现。在

FDP是一个restfulweb服务,它使数据所有者能够描述和公开他们的数据集(元数据),并且数据用户可以根据FAIR Data Guiding Principles来发现有关可用数据集的更多信息。特别是,FDP通过在四个层次上提供机器可读的描述(元数据)来解决数据的可查找性或可发现性:

FDP->;目录->;数据集->;分布

可以找到FDP软件规范here

FDP已在以下领域实施:

安装

要安装FDP,请执行以下操作:

来自pypi

pip install fairdatapoint

或者从这次回购中

^{pr2}$

跑步

fdp-run localhost 80

为FDP服务启用了Swagger UI,您可以通过访问http://localhost/ui来尝试。在

单元测试

运行测试(包括覆盖率):

pip install .[tests]
pytest

TODO:在此处包含指向项目完整文档的链接。在

使用Docker部署

选中fairdatapoint-service。在

无Docker部署

在部署FDP之前,首先需要有一个正在运行的SPARQL数据库。在

pip install fairdatapoint

# fdp-run <host> <port> --db=<sparql-endpoint>
fdp example.com 80 --db='http://dbpedia.org/sparql'

Web API文档

公平数据点(FDP)公开以下终结点(URL路径):

EndpointGETPOSTPUTDELETE
fdpOutput fdp metadataCreate new fdp metadataUpdate fdp metadataNot Allowed
catalogOutput all catalog IDsCreate new catalog metadataNot AllowedNot Allowed
datasetOutput all dataset IDsCreate new dataset metadataNot AllowedNot Allowed
distributionOutput all distribution IDsCreate new distribution metadataNot AllowedNot Allowed
catalog/<catalogID>Output <catalogID> metadataNot AllowedUpdate <catalogID> metadataRemove <catalogID> metadata
dataset/<datasetID>Output <datasetID> metadataNot AllowedUpdate <datasetID> metadataRemove <datasetID> metadata
distribution/<distributionID>Output <distributionID> metadataNot AllowedUpdate <distributionID> metadataRemove <distributionID> metadata

访问端点以编程方式请求元数据

FDP:curl -iH 'Accept: text/turtle' [BASE URL]/fdp

目录:curl -iH 'Accept: text/turtle' [BASE URL]/catalog/catalog01

数据集:curl -iH 'Accept: text/turtle' [BASE URL]/dataset/dataset01

分布:curl -iH 'Accept: text/turtle' [BASE URL]/distribution/dist01

FDP支持以下RDF序列化(MIME类型):

  • 乌龟:text/turtle
  • N-三元组:application/n-triples
  • N3:text/n3
  • RDF/XML:application/rdf+xml
  • JSON-LD:application/ld+json

贡献

如果您想为FAIR Data Point的开发做出贡献, 看看contribution guidelines。在

许可证

版权所有(c)2019

根据Apache许可证2.0版(“许可证”)授权; 除非符合许可证,否则您不能使用此文件。 您可以在

http://www.apache.org/licenses/LICENSE-2.0

除非适用法律要求或书面同意 根据许可证分发的是“按原样”分发的, 没有任何明示或暗示的保证或条件。 有关管理权限和的特定语言,请参阅许可证 许可证下的限制。在

学分

这个包是用CookiecutterNLeSC/python-template创建的。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java使用jstl比较jsp中的日期对象   java JSF convertDateTime渲染前一天   java当重定向回另一个servlet时,如何显示错误消息?   当ulimit已更改为unlimit时,java无法增加Wildfly的“最大打开文件数”   Java和SWT:线程和侦听器   Java文件API跨网络复制文件   java如何使用闹钟。安卓系统中的动作\解除\警报   java无法将BLOB保存到数据库(ORA01460:未实现或不需要有意义的转换)   这个for循环的java复杂性   多行上的java正则表达式   spring mvc Java多URL模式,无扩展   java 安卓 json向文本添加超链接   Java泛型和转换   JavaSpringFramework。数据存储库。反应性。反应性积存。save()在从CompletableFuture调用时不持久化数据。运行异步   java ValidationException:调用TraversableResolver。isReachable()引发了异常   java将位图设置为具有特定高度的ImageView   Java:限制字符串中的字符   如何在java中将字节[]类型转换为证书类型?   javascript使用基于java的逻辑编写TinyMCE自定义插件