【问题标题】:SPARQL individuals queries for Pizza ontologySPARQL 个人查询 Pizza 本体
【发布时间】:2017-06-25 11:17:12
【问题描述】:

我写了这个查询,但它不起作用。任何人都知道是什么问题。

PREFIX : <http://www.semanticweb.org/ontologies/2009/pizza.owl#>
SELECT ?X ?Y
        WHERE {?X :hasCountryOfOrigin "Italy".
               ?Y :hasCalorificValue "400"}

【问题讨论】:

    标签: semantic-web owl ontology protege


    【解决方案1】:

    根据Pizza本体教程here,您的查询有两个主要问题:

    1. hasCountryOfOrigin 是一个对象属性,因此,值不能是文字。意大利是个人,因此,您必须使用正确的 URI,可能是 http://www.semanticweb.org/ontologies/2009/pizza.owl#Italy
    2. 数据属性hasCalorificValue 具有整数类型的值,即文字应该像"400"^^xsd:integer 一样使用(或者可能xsd:int,取决于您在Protege 中选择的内容)
    3. 您的查询中的两个三元组模式均未连接,即没有共享变量。我看不到您的查询目标。
    PREFIX : <http://www.semanticweb.org/ontologies/2009/pizza.owl#>
    SELECT ?X ?Y
            WHERE {?X :hasCountryOfOrigin :Italy.
                   ?Y :hasCalorificValue "400"^^xsd:integer}
    

    【讨论】:

    • 我说的是这个教程link。反正有没有找到所有的浇头都有'hasCountryOfOrigin'意大利。为了找到卡路里,我尝试了 ' ?Y :hasCalorificValue "400"^^xsd:Integer' 但它没有用。
    • 我更新了我的答案。由于变量未连接,因此仍不清楚您希望通过查询实现什么。
    • 我知道这两个值没有联系。我正在练习,我不寻求通过这个查询来实现任何目标。但是,我在 Protege、SPARQL 查询选项卡中尝试了您的答案,但仍然没有得到任何答案。
    • 可以分享一下本体吗?例如 Gist、PasteBin 或其他东西
    • 非常感谢,我发现了我的问题。我忘了在这里删除我的问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-10
    • 2018-02-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多