hab / ntriples
一个用于发布以 N-Triples 编码数据的简单库
v1.0.1
2018-03-01 10:11 UTC
This package is not auto-updated.
Last update: 2024-09-14 18:16:24 UTC
README
一个用于发布以 N-Triples 编码数据的简单库。
本软件包版权(c)2015-2017由Herzog August Bibliothek Wolfenbüttel拥有,并按照GNU通用公共许可证v3条款发布。
安装
您可以通过composer安装此包
composer require hab/ntriples
图和三元组的内部表示
三元组
三元组 被表示为一个数组,其中主题、谓词和对象分别位于位置0、1和2。
URI
URI 被表示为一个字符串。
字面量
字面量 被表示为 Literal
类的实例。一个字面量有一个值,可以有一个可选的数据类型或语言标记。
$literal = new HAB\NTriples\Literal('Hello, my darling', 'en');
echo $literal->getLanguage();
=> en
空白节点
空白节点 被表示为 BNode
类的实例。如果转换为字符串,它将返回一个唯一的节点标签。
$node = new HAB\NTriples\BNode();
echo (string)$node;
=> bnode_4c28e7db9528288b7519a1f5df639cf7
图
图 被表示为 Graph
类的实例。它有一个可选的名称,并实现了 Traversable
接口,以便方便地遍历图的三角形。
$graph = new HAB\NTriples\Graph('http://example.com/graph/1');
$graph->add('http://example.com/subject', 'http://purl.org/dc/elements/1.1/title', 'The Example');
echo count($graph);
=> 1
读取器
所有读取器都遵循相同的接口。您首先使用源URI调用 open()
读取。后续对 read()
的调用返回一个包含主题、谓词和对象数组的下一个三角形,或者如果源已耗尽则返回 false
。
您可以调用 rewind()
尝试回滚源。如果源不支持回滚,将抛出 RuntimeException
。
对 close()
的调用关闭读取器。
目前支持以下源格式
格式 | 读取器 |
---|---|
NTriples | HAB\NTriples\Reader\NTriples |
序列化器
所有序列化器都遵循相同的接口。您使用任意数量的 Graph
实例调用 serialize()
。序列化器返回包含序列化图的字符串。
目前支持以下序列化格式
格式 | 序列化器 |
---|---|
NTriples | HAB\NTriples\Serializer\NTriples |
NQuads | HAB\NTriples\Serializer\NQuads |
RDF/XML | HAB\NTriples\Serializer\RdfXml |
TriX | HAB\NTriples\Serializer\TriX |