gpt4 book ai didi

java - 在java web中使用OWL API获取快照SPARQL查询

转载 作者:行者123 更新时间:2023-12-01 17:31:58 26 4
gpt4 key购买 nike

好吧,我有一个使用 protege 的快照 SPARQL 查询

PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX :<http://www.semanticweb.org/astrid/ontologies/2019/5/mpasiv2#>

SELECT ?resep_makanan
WHERE {
?resep_makanan rdf:type :resep_makanan.
?resep_makanan :resep_untuk :6-7_bulan.
}
ORDER BY ?resep_makanan

它有效,我得到了我的resep_makanan实例,它是食物名称,具有对象属性resep_untuk(recipe_for)6-7_bulan(6-7_month大)婴儿)。然后在我的java web代码中,我写

PREFIX :<http://www.semanticweb.org/astrid/ontologies/2019/5/mpasiv2#>
SELECT DISTINCT ?resep_makanan
WHERE {
Type (?resep_makanan, :resep_makanan),
PropertyValue(?resep_makanan, :resep_untuk, :6-7_bulan)
}
order by ?resep_makanan

但是我得到 0 个查询结果。我正在使用 OWL API。我该如何正确书写?

最佳答案

查找“snap SPARQL”会带来https://github.com/protegeproject/snap-sparql-query项目,我相信这是您实际用来运行查询的项目(正如 Protege 中所使用的那样)。

如果是这种情况,则说明您没有将 OWL API 用于代码的 SPARQL 部分,因为 OWL API 本身不支持 SPARQL;我不知道 snap sparql 项目,但是,由于它与基于 OWL API 的 Protege 集成,我假设 OWL API 用于将基于 SPARQL 的 API 与 Protege 连接。从项目依赖关系来看,我认为这是 de-derivo-sparqldlapi

为了回答您的问题,如果相同的查询没有在 Protege 之外产生结果,这必须取决于它没有被发送到相同的 SPARQL 端点或端点的不同设置(例如,您的查询是否取决于其结果的推理?)

部分信息可能位于您正在运行的代码中,但未在此处显示,但如果没有看到它,我们将无法判断。

关于java - 在java web中使用OWL API获取快照SPARQL查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61102680/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com