我正在使用OpenLink Virtuoso使用this tutorial将关系数据库转换为RDF .
我有一个包含5个表的数据库( Authors
, Keywords
, Publications
, References
, Rights
),我使用 .csv
文件将它们导入到Virtuoso数据库中 .
在从RDB到Linked-Data图的“转换”结束时,它显示了操作的状态,结果正常,并给了我以下链接:
SQL关系(表)到RDF语句(谓词/属性图)映射
http://localhost:8890/schemas/CSV/qm-authors_csv
http://localhost:8890/schemas/CSV/qm-keywords_csv
http://localhost:8890/schemas/CSV/qm-publications_csv
http://localhost:8890/schemas/CSV/qm-references_csv
http://localhost:8890/schemas/CSV/qm-rights_csv
http://localhost:8890/schemas/CSV/qm-VoidStatistics
示例图IRI和关联数据实体URI
RDFDocument(命名图)IRI:
Transient Views: http://localhost:8890/CSV#
http://localhost:8890/CSV/authors_csv/ID/1#this
http://localhost:8890/CSV/authors_csv/ID/1#this
http://localhost:8890/CSV/keywords_csv/ID/1#this
http://localhost:8890/CSV/publications_csv/ID/1#this
http://localhost:8890/CSV/publications_csv/ID/1#this
http://localhost:8890/CSV/objects/publications_csv/ID/1/DisplayOnMLKD.bin
http://localhost:8890/CSV/references_csv/ID/1#this
http://localhost:8890/CSV/references_csv/ID/1#this
http://localhost:8890/CSV/rights_csv/ID/1#this
http://localhost:8890/CSV/rights_csv/ID/1#this
Metadata Data Document (VoiD) URI/URL: http://localhost:8890/CSV/stat#
Linked Data Ontology URI: http://localhost:8890/schemas/CSV/
我尝试使用以下SPARQL查询来查看所有结果以检查它们:
SELECT *
FROM <http://localhost:8890/CSV>
WHERE {?s ?o ?p}
但我需要的是分别检查每个图表 .
问题1:
根据以上结果,如何访问使用SPARQL创建的每个图表(对于表 Authors
, Publications
, References
等)?
问题2:
我应该写什么查询来删除图表?
1 回答
我建议您至少通过SPARQL 1.1 Query Language和SPARQL 1.1 Update进行粗略观察 . 你不会用这种语言,你会知道将来在哪里看 . (在我看来,对于您可能学习或使用的任何工具包,语言等,这是一个很好的建议 . )
查询一个或多个图表
查看13.3 Querying the Dataset及其子章节,您可以在其中找到如何查询不同图表的示例 . 简而言之,你使用的模式
默认情况下,
?g
将覆盖数据集中的所有图形 . 如果您在查询中使用了一些from named
部分,那么您可以限制它的范围 . 您也可以直接指定图形IRI,如当然,规范中还有更多的例子 .
你可以使用像这样的查询
得到每个三元组和它出现的图形 . 注意(如RobV did in an answer to one of your earlier questions),我已经更改了变量名称,因为三元组是(主语,谓词,宾语),所以
?s ?p ?o
比?s ?o ?p
更有助于记忆 .删除图表
3.2 Graph Management部分描述了可用于操作图形的五个操作(强调添加):
给定的语法是
所以你只是这样做,例如,