SPARQL查询未推断指定类后的属性

SPARQL查询未推断指定类后的属性,sparql,semantic-web,dbpedia,linked-data,Sparql,Semantic Web,Dbpedia,Linked Data,我正在SPARQL上运行一个测试查询来测试推断。我的质询如下: 前缀eem: 前缀ns: 前缀sc_数据: 前缀dbp: 前缀dbpprop: 前缀ex: 选择?roa 在哪里{ 服务{ 例:疫苗a dbp:脊髓灰质炎疫苗。 例:疫苗dbpprop:常规药物管理?roa。 } } 在尝试snorql页面时,我没有得到此查询的结果。当我指定某物是脊髓灰质炎疫苗时,它不应该自动继承为疫苗指定的属性吗?我需要更改什么?在原始查询中,ex:vaccine是一个URI节点,是的缩写。DBpedia不太可

我正在SPARQL上运行一个测试查询来测试推断。我的质询如下:

前缀eem:
前缀ns:
前缀sc_数据:
前缀dbp:
前缀dbpprop:
前缀ex:
选择?roa
在哪里{
服务{
例:疫苗a dbp:脊髓灰质炎疫苗。
例:疫苗dbpprop:常规药物管理?roa。
}
}

在尝试snorql页面时,我没有得到此查询的结果。当我指定某物是脊髓灰质炎疫苗时,它不应该自动继承为疫苗指定的属性吗?我需要更改什么?

在原始查询中,ex:vaccine是一个URI节点,是的缩写。DBpedia不太可能包含任何关于它的信息。虽然DBpedia端点可能(也可能不)包含可从DBpedia数据推断的信息,但它并不将SPARQL查询视为部分断言和部分查询

你的字面意思是“找到roa的值,使roa是ex:疫苗的给药途径,ex:疫苗是dbp:脊髓灰质炎疫苗的一个实例”ex:vaccine是一个常数,所以有点像是说,“找到10的因子,顺便说一下,10是3和4的和。”虽然“10是3和4的和”不在数据中,所以不会有任何匹配,即使有记录的因子10。最重要的是,DBpedia中有一个个体,而不是一个类,因此不会有任何实例

相反,您希望为个人dbpedia:politis\u疫苗请求任何dbpprop:routesofadministration属性值。这里需要的查询是(我使用在公共端点处定义的前缀):

select?路线在哪里{
dbpedia:脊髓灰质炎疫苗dbpprop:路线FAD管理?路线
}

为什么你认为dbp:脊灰疫苗应该有效?我的印象是我们可以使用(rdf:type)来指定受试者的类别。除此之外,还有什么能说明疫苗是脊髓灰质炎疫苗?我不知道。我不确定DBpedia是否包含这些信息,或者您所问的是否有意义。你能说出一些你希望符合标准的疫苗吗?@kurious我知道你刚刚更新了你的问题,但是添加服务关键字并不能真正改变问题。听起来您希望DBpedia包含它根本不包含的数据,并且希望DBpedia执行它从未声称执行过的推理和推理。感谢您的详细解释,Joshua。这很有帮助。我想我可以通过你上面写的查询获得居留权。然而,我想做的是:1。在我的数据中,我知道有一种脊髓灰质炎疫苗。然而,数据中没有提到它的居留权。2.所以,我想说,我的数据中的实体是dbpedia中提到的脊髓灰质炎疫苗。考虑到脊髓灰质炎疫苗的roa是“口服的”,我想让计算机推断我的数据中疫苗的roa也是“口服的”。你能帮我弄清楚如何写这样一个查询吗?请求帮助。有人能回答吗?嗨,约书亚。我还不知道如何解决这个问题。我推测在SPARQL中使用SERVICE子句可能会很有用。你能帮我找出解决办法吗?@kurious我真的不明白
服务
关键字与这个问题有什么关系。如果您有新问题,您当然可以将其作为新问题发布。据我所知,SERVICE关键字使我们能够运行联邦查询和/或访问其他SPARQL端点。例如,SERVICE子句下的“dbpedia:politi\u vaccine dbpprop:routesfadAdministration?routes”将在三重存储库(如Sesame)中工作(无需创建单独的存储库)。你能告诉我如何在我的数据集中断言疫苗是脊髓灰质炎疫苗,从而继承其属性吗?非常感谢你!