sweetyrdf/easyrdf

此包已被 弃用 并不再维护。作者建议使用 sweetrdf/easyrdf 包代替。

EasyRdf 是一个 PHP 库,旨在简化 RDF 的消费和生成。

1.1.1 2020-06-25 15:56 UTC

README

❗ 过时

此分支是在 2020 年创建的,旨在为 EasyRdf 提供一个新的家园,并提供更频繁的更新。它已过时,请使用以下链接代替

https://github.com/sweetrdf/easyrdf

关于

EasyRdf 是一个 PHP 库,旨在简化 RDF 的消费和生成。它旨在用于经验丰富和不那么经验丰富的 RDF 开发者的混合团队。它使用面向对象的 PHP 编写,并通过 PHPUnit 进行了广泛的测试。

EasyRdf 解析后构建一个 PHP 对象图,然后可以遍历该图以获取要放置在页面上的数据。提供了一些转储方法,可以在开发过程中检查可用的数据。

通常将数据从源 RDF 文档加载到 EasyRdf\Graph 对象中,这些文档通过 HTTP 从网络加载。 EasyRdf\GraphStore 类简化了将数据加载到 SPARQL 1.1 图存储的加载和保存。

可以使用 EasyRdf\Sparql\Client 类通过 HTTP 对 Triplestore 执行 SPARQL 查询。 SELECTASK 查询将返回一个 EasyRdf\Sparql\Result 对象,而 CONSTRUCTDESCRIBE 查询将返回一个 EasyRdf\Graph 对象。

示例

$foaf = new \EasyRdf\Graph("http://njh.me/foaf.rdf");
$foaf->load();
$me = $foaf->primaryTopic();
echo "My name is: ".$me->get('foaf:name')."\n";

下载

EasyRdf 的最新 稳定 版本可以从 EasyRdf 网站 下载。

链接

要求

  • PHP 7.0 或更高版本

特性

  • 使用 phpdoc 编写的 API 文档
  • 使用 phpunit 编写的广泛单元测试
  • 内置解析器和序列化器:RDF/JSON,N-Triples,RDF/XML,Turtle
  • 可选解析支持:ARC2rapper
  • 可选支持 Zend\Http\Client
  • 不依赖于其他库(如 PEAR、Zend 等)的外部依赖
  • 符合 Zend Framework 编码风格
  • 类型映射器 - 类型为 foaf:Person 的资源可以被映射到 Foaf_Person 类的 PHP 对象
  • 支持使用 GraphViz 可视化图形
  • 附带多个示例

更多示例

运行示例

尝试一些示例的最简单方法是使用 PHP 命令在您的计算机上运行本地 Web 服务器。

php -S localhost:8080 -t examples

然后在浏览器中打开以下 URL: http://localhost:8080/

许可

EasyRdf 库和测试受 BSD-3-Clause 许可协议的许可。示例属于公有领域,更多信息请参阅 UNLICENSE