-2

我需要获取属于我的本体的 rdfs 文件的属性值..它具有公里属性,其值为 12500.00..我需要获取此值..在我的 rdfs 文件中没有 URI ……

谁能告诉我这样做的方法::::

4

2 回答 2

2
SELECT ?value WHERE {
    ?thing <http://whatever/myvocabulary.rdfs#kilometer> ?value .
}

将里面的 URI 替换为<...>词汇表中公里属性的实际 URI。

哦,您是否尝试阅读SPARQL 教程

于 2010-06-09T08:23:32.353 回答
0

如果您可以显示您尝试查询的数据样本,那么回答您的问题会容易得多。我可以假设您说“在我的 RDFS 文件中没有 URI”的两个原因:

  • 您文档中的 URI 是缩写的,因此看起来不像传统http://...的 URI,例如它们可能采用以下形式somePrefix:some-name
  • 您尝试查询的值附加到所谓的空白节点或没有 URI 的资源。

在第一种情况下,它只是扩展前缀的情况。在第二种情况下,您必须构造一条路径,从您可以识别(通过名称或属性)到您尝试查询的节点的节点进行查询。在任何一种情况下都很容易做到,但更难以抽象地解释——如果你展示你的实际数据会容易得多。

在您问的评论中:“如何获取我的 RDF 文件的 URI?”。我将不得不再次猜测,但我假设您正试图在程序中通过 URI 引用您的本体文件(例如,将其加载到 Jena 模型中)。我能想到三种可能:

  • 你想引用一个file:URI;例如,本体c:\User\fred\vocabs\foo.ttl将是file:///c:/User/fred/vocabs/foo.ttl,而/home/fred/vocabs/foo.txt将是file:///home/fred/vocabs/foo.txtfile:请注意,前缀后面有三个正斜杠字符。

  • 您想通过本地 Apache 服务器或类似服务器引用该文件;如果您的本体在其中,/home/fred/public_html/vocabs/foo.ttl那么 URI 将类似于http://localhost:8080/~fred/vocabs/foo.ttl(详细信息可能因您设置服务器的方式而异)

  • 您将文件托管在Joseki实例或类似实例中,在这种情况下,URI 将由您的 Joseki 配置确定,有关详细信息,请参阅 Joseki 文档。

于 2010-06-10T19:59:59.000 回答