fccn/oai-pmh-core

PHP编写的OAI-PMH 2.0数据提供者核心功能的实现

1.5 2018-01-24 16:31 UTC

This package is auto-updated.

Last update: 2024-09-13 03:37:46 UTC


README

PHP编写的OAI-PMH 2.0数据提供者核心功能的实现

关于

仅核心功能本身不提供元数据。它们需要与客户端应用程序一起使用,以便从特定集合中提供OAI-PMH数据。请查看oai-pmh-demo-client项目以了解如何创建客户端。

此实现完全符合OAI-PMH 2.0规范,包括对即时输出压缩的支持,这可能会显著减少传输的数据量。

核心功能是来自阿德莱德大学的李建峰开发的PHP OAI数据提供者的改编。

元数据格式

目前支持以下元数据格式

  • DublinCore
  • 学习对象元数据

元数据来源

元数据可以从几种类型的来源获取。每种来源都可以作为插件包含在核心中。目前支持以下来源

  • PDO(PHP发行版中包含的PHP数据对象):允许几乎任何流行的SQL数据库在代码中无需更改即可使用。需要做的就是配置数据库连接并在客户端配置文件中定义合适的数据结构。

结构

该项目具有以下结构

  • html:包含有关此项目信息的HTML页面和样式表
  • src:核心功能的源文件
    • libs:实用类
      • xml_creater.php:准备XML响应
      • oaidp-util.php:OAI响应的一般实用工具
      • phprop.php:配置加载器
    • schemas:-元数据格式转换
    • sources:-源插件
      • pdo:-使用PDO的数据库源动词响应实现
    • verbs:-OAI-PMH请求的通用实现
      • identify.php:识别数据提供者。对Identify的响应。
      • listmetadataformats.php:列出支持的元数据格式,例如dc或rif-cs。对ListMetadataFormats的响应。
      • listsets.php:列出支持的集合,例如活动、集合或党派。对ListSets的响应。
      • listrecords.php:列出不带详细信息的记录组。对ListRecords的响应。它还用于ListIdentifiers,它仅返回标识符。
      • getrecord.php:获取单个记录。对GetRecord的响应。

安装和配置

要构建OAI-PMH 2.0数据提供者,您需要构建一个定制的客户端应用程序。您可以使用composer将此库包含在您的客户端项目中

composer require fccn/oai-pmh-core

之后,您需要手动加载库并使用以下示例中的路径调用execute_request()函数,以加载客户端配置文件

require __DIR__ . '/../vendor/autoload.php';
require __DIR__ . '/../vendor/fccn/oai-pmh-core/src/main.php';

//execute request
Fccn\Oaipmh\execute_request([path-to-config-ini-file]);

请检查oai-pmh-demo-client项目以了解有关构建客户端应用程序的更多信息。

贡献

请阅读CONTRIBUTING.md以了解我们的行为准则以及向我们提交拉取请求的过程。

版本控制

我们使用SemVer进行版本控制。有关可用版本,请参阅此存储库的标签

v1.0

  • 核心-oai-pmh项目的初始工作版本(在GitHub上不可用)
  • 支持DublinCore和学习对象元数据格式

v1.5

  • 为所有类分配了属性命名空间
  • 改进了README文件和信息页面
  • 修复了LOM元数据聚合的一些错误
  • 增加了对composer的支持
  • 将项目导入GitHub

许可证

本项目的许可协议为MIT许可 - 有关详细信息,请参阅LICENSE.md文件