我使用d2rq实用程序创建.ttl文件,然后将其导入MarkLofgic但无法获得所需的结果。
此外,我的数据看起来像这样。
如何从MySql Data创建三元组以用于MarkLogic中的SPARQL中的查询。 SOmeone建议我应该将主键值视为主题,列名称为Predicates&单元格值作为对象转换为三元组,但如何? 谢谢&问候 Swapneel GOLAPKAR
答案 0 :(得分:1)
您在那里展示的是三元组,其格式是MarkLogic将它们存储在数据库中。确保从Admin ui中为该数据库启用triple index
,以便能够在其上使用SPARQL。
启用后,您可以从QConsole运行count(cts:triples())
之类的命令,以查看已加载了多少三元组,并从那里运行SPARQL。
您还可以连接到/v1/graphs/sparql
REST endpoint。
关于数据应如何看作三元组,给出两个样本记录,如下所示(为方便起见,表示为XML):
<Drug_Dtl>
<Drug_ID>D001</Drug_ID>
<Drug_name>Glyburide 5 mg</Drug_name>
<Brand_name>Diabeta</Brand_name>
<Brand>Novo Nordisk</Brand>
<strength>5 mg</strength>
<NoOfPills>1</NoOfPills>
<TotalDailyDose>5 mg</TotalDailyDose>
<Cost>$51</Cost>
<DailyPills>1</DailyPills>
</Drug_Dtl>
<Prescriber>
<PrescriberId>PSC001</PrescriberId>
<PrescriberName>Wa‌​yne</PrescriberName>
<Prescriber_Address>7 Elgar Center</Prescriber_Address>
<City>Chicago</City>
<State>Illinois</State>
</Prescriber>
我希望三倍类似(为方便起见表示为龟):
<D001> <Drug_name> "Glyburide 5 mg".
<D001> <Brand_name> "Diabeta".
<D001> <Brand> "Novo Nordisk".
<D001> <strength> "5 mg".
<D001> <NoOfPills> "1".
<D001> <TotalDailyDose> "5 mg".
<D001> <Cost> "$51".
<D001> <DailyPills> "1".
<PSC001> <PrescriberName> "Wa‌​yne".
<PSC001> <Prescriber_Address> "7 Elgar Center".
<PSC001> <City> "Chicago".
<PSC001> <State> "Illinois".
HTH!