SPARQL - 通过示例学习

时间:2013-06-20 19:11:54

标签: sparql semantic-web dbpedia

简而言之,如果有人指示我“获取包含Oracle,Mysql,DB2,MSSQL等的数据库列表”,我如何才能真正确定创建查询所需的字段和信息?我下载了DBpedia并且使用了三元组,例如,

$ `grep 'Oracle' * | grep 'Database'
article_categories_en.nt:<http://dbpedia.org/resource/Oracle_Database> <http://purl.org/dc/terms/subject> <http://dbpedia.org/resource/Category:Relational_database_management_systems> .`

如何从该初始问题创建SPARQL查询? 使用上面的代码片段,我知道Oracle是一家公司,其产品之一是同名的RDBMS。我尝试了查找工具并在网上搜索,但是对此并没有那么远,需要一些指导。

1 个答案:

答案 0 :(得分:3)

在这种特殊情况下,我首先访问DBpedia页面,该页面对应于您在结果中知道的其中一项内容。一个很好的例子是http://dbpedia.org/page/MySQL。在该页面上,您可以开始查找可能有助于您找到其他相关系统的属性。页面上列出的一个属性是

dbpedia-owl:genre dbpedia:Relational_database_management_system

然后我会去DBpedia SPARQL endpoint并尝试搜索具有相同属性和值的其他内容。在这种情况下,我可以运行以下查询:

SELECT * WHERE { 
  ?rdbms dbpedia-owl:genre dbpedia:Relational_database_management_system .
}

SPARQL results

结果很有希望;有38个结果。前几个是:

rdbms
http://dbpedia.org/resource/MySQL_Cluster
http://dbpedia.org/resource/MSQL
http://dbpedia.org/resource/OpenEdge_Advanced_Business_Language
http://dbpedia.org/resource/Adaptive_Server_Enterprise
…

一般来说,我发现在维基百科中找到我正在寻找的那种事物的实例要容易得多,然后访问相应的DBpedia页面并查看属性,然后根据这些查询制定一些探索性查询