SPARQL中哈希符号(#)的含义是什么?

时间:2015-03-20 19:35:42

标签: sparql

在SPARQL中,我经常在前缀定义的末尾看到#的用法,如下所示:

@prefix dt:   <http://example.org/datatype#>

目的是什么?我在SPARQL文档中找不到这个。

1 个答案:

答案 0 :(得分:8)

您的示例似乎位于Turtle中,与SPARQL中的语法一样:

PREFIX dt: <http://example.org/datatype#>

但是它的想法是一样的:您可以使用prefixed names来代替在查询中使用完整的IRI:

  1. 在您的示例中,前缀标签dt。它映射到IRI http://example.org/datatype#
  2. 在您的查询中,它可能会被用作dt:foobar,其中foobar被称为本地部分
  3. 来自前缀标签本地部分的映射IRI被连接起来形成&#34;实际&#34; IRI:

    http://example.org/datatype# + foobar =
    http://example.org/datatype#foobar

  4. (您也可以使用dt:foobar而不是<http://example.org/datatype#foobar>。)

  5. 所以#恰好是IRI设计的一部分。这是在语义Web中构建词汇IRI的流行方式。另一种流行的方式是使用/。请参阅HashVsSlash