MarkLogic 8 - 将数据三倍化的首选方式是什么
MarkLogic 8 - What is the Preferred Way to Triplify Data
假设我有一个来自关系数据库的 table。
在 MarkLogic 8 中将这些映射到 triples/RDF 的首选方法是什么?
所以代替:
<orders>
<order>
<number>1</number>
<name>Sam Smith</name>
</order>
....
</orders>
我最终得到:
<triples>
<triple>
<subject>http://example.com/order</subject>
<predicate>http://example.com/order/number</predicate>
<object datatype="http://www.w3.org/2001/XMLSchema#integer">1</object>
</triple>
<triple>
<subject>http://example.com/order</subject>
<predicate>http://example.com/order/name</predicate>
<object datatype="http://www.w3.org/2001/XMLSchema#string">Sam Smith</object>
</triple>
....
</triples>
我想知道这是我们只需要手动开发的东西,还是有提供映射和命名空间并生成它们的工具?
如果不想保留原始文档(并用三元组丰富它们),而是只存储三元组,最简单的是生成三元组。执行此操作的首选方法确实是自己生成 sem:triples 文档。
要考虑的关键点是如何在文档中对三元组进行分组。由于三元组存储在文档中,就像 MarkLogic 中的任何其他文档一样,将它们按逻辑单元分组可以很容易地 "insert them all together" 或 "delete them all together".
这取决于您所代表的实体(在概念层面上)以及它们之间的关系。
假设我有一个来自关系数据库的 table。
在 MarkLogic 8 中将这些映射到 triples/RDF 的首选方法是什么?
所以代替:
<orders>
<order>
<number>1</number>
<name>Sam Smith</name>
</order>
....
</orders>
我最终得到:
<triples>
<triple>
<subject>http://example.com/order</subject>
<predicate>http://example.com/order/number</predicate>
<object datatype="http://www.w3.org/2001/XMLSchema#integer">1</object>
</triple>
<triple>
<subject>http://example.com/order</subject>
<predicate>http://example.com/order/name</predicate>
<object datatype="http://www.w3.org/2001/XMLSchema#string">Sam Smith</object>
</triple>
....
</triples>
我想知道这是我们只需要手动开发的东西,还是有提供映射和命名空间并生成它们的工具?
如果不想保留原始文档(并用三元组丰富它们),而是只存储三元组,最简单的是生成三元组。执行此操作的首选方法确实是自己生成 sem:triples 文档。
要考虑的关键点是如何在文档中对三元组进行分组。由于三元组存储在文档中,就像 MarkLogic 中的任何其他文档一样,将它们按逻辑单元分组可以很容易地 "insert them all together" 或 "delete them all together".
这取决于您所代表的实体(在概念层面上)以及它们之间的关系。