假设我有一个来自关系数据库的表。
在MarkLogic 8中将这些映射到三元组/ 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>
我需要知道这是否是我们需要手动开发的东西,还是有工具来提供映射和命名空间并生成这些?
答案 0 :(得分:2)
如果你不想保留原始文件(并用三元组来丰富它们),而是只存储三元组,最简单的方法是生成三元组。实现这一目标的首选方法是自己生成sem:triples文档。
要考虑的关键点是如何在文档中对三元组进行分组。由于三元组存储在文档中,就像MarkLogic中的任何其他文档一样,将它们按逻辑单元分组可以很容易地“将它们全部插入”,或“将它们全部一起删除”。
这取决于您所代表的实体(在概念层面)以及它们之间的关系。