标签: linked-data

rdf:seeAlso 和 rdfs:seeAlso 之间的区别

rdf:seeAlso和 和有什么区别rdfs:seeAlso

什么时候可以使用rdf:seeAlso,什么时候可以使用rdfs:seeAlso

你能举出一些例子吗?

rdf ontology rdfs hyperlink linked-data

5
推荐指数
2
解决办法
2036
查看次数

SParQL 中基于 URI 的过滤

您可以在Linked MDB SPARQL Explorer中运行下面的查询。(最后一个变量)的值?imdbID包含来自三个可能域(freebase.com、rottentomatoes.com 或 imdb.com)之一的 IRI。我想知道如何应用filter这样的方法,仅保留来自 imdb.com 域的行。

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX dc: <http://purl.org/dc/terms/>
PREFIX movie: <http://data.linkedmdb.org/resource/movie/>

SELECT ?title ?date ?director ?imdbID 
WHERE {
 ?film foaf:page ?imdbID.  
 ?film dc:title ?title.
 ?film dc:date ?date .
 ?film movie:director ?directorURI.
 ?directorURI rdfs:label ?director .
}
Run Code Online (Sandbox Code Playgroud)

rdf semantic-web sparql linked-data linkedmdb

5
推荐指数
1
解决办法
1万
查看次数

使用 mod_rewrite / RewriteCond 规则进行内容协商

我有一个用例是在 Github 页面中托管一组文件(具有不同序列化格式的相同 RDF 内容,例如 RDF/XML、Turtle 和 JSON-LD),并使用w3id URL作为永久标识符。

此外,我想在该永久 URL 上进行内容协商。如果我将文件托管在 Apache 服务器中,这将是微不足道的,但不幸的是 Github 页面不支持内容协商。所以我想看看我可以在多大程度上使用 URL 重写规则来做到这一点。

所以这个想法类似于以下内容。

GET http://w3id.org/foo  -- redirect to --> http://foo.git.io/content.ttl
Accept: text/turtle

GET http://w3id.org/foo  -- redirect to --> http://foo.git.io/content.jsonld
Accept: application/ld+json
Run Code Online (Sandbox Code Playgroud)

目前我的规则如下所示。

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_ACCEPT} ^.*application/rdf\+xml.* 
RewriteRule ^foaf$ http://nandana.github.io/foaf/card.rdf [R=303,L]
RewriteCond %{HTTP_ACCEPT} ^.*text/turtle.* 
RewriteRule ^foaf$ http://nandana.github.io/foaf/card.ttl [R=303,L]
RewriteCond %{HTTP_ACCEPT} ^.*application/ld\+json.* 
RewriteRule ^foaf$ http://nandana.github.io/foaf/card.jsonld [R=303,L]
RewriteRule ^foaf$ http://nandana.github.io/foaf/card.html [R=303,L]
Run Code Online (Sandbox Code Playgroud)

尽管这适用于大多数情况,但在某些极端情况下会中断。例如,如果有一个像下面这样的接受头

Accept: application/rdf+xml;q=0.9,text/turtle
Run Code Online (Sandbox Code Playgroud)

这将返回 application/rdf+xml (因为第一个规则匹配),尽管根据内容协商它应该返回乌龟。有谁知道改进规则来处理这种极端情况的方法?

apache mod-rewrite content-negotiation github-pages linked-data

5
推荐指数
1
解决办法
785
查看次数

良好的 SPARQL 查询,用于查找以资源为主题或对象的所有三元组

我需要在 DBpedia 上找到所有的三元组,其中http://dbpedia.org/resource/Benin是一个主题或对象。这个查询以最适合我的格式提供了我想要的输出(只有三个变量,没有空格):

PREFIX : <http://dbpedia.org/resource/>
SELECT * WHERE {
?s ?p ?o
FILTER (?s=:Benin OR ?o=:Benin)
}
Run Code Online (Sandbox Code Playgroud)

如果我有这个查询,我会得到类似的结果:

PREFIX : <http://dbpedia.org/resource/>
SELECT * WHERE {
{:Benin ?p ?o}
UNION
{?s ?p :Benin}
}
Run Code Online (Sandbox Code Playgroud)

但是,后者的格式是关闭的。它首先让我po输出,保留s空白,然后sp留下o的空白。此外,第一个查询需要更多时间来执行。我将非常感谢您对这两个查询如何工作的机制以及输出为何存在差异的解释。

semantic-web sparql linked-data

5
推荐指数
2
解决办法
2606
查看次数

在Jena中,RDF中使用的URI是否需要解除引用?

我正在查看Jena教程,RDF简介和Jena RDF API,我特别关注Tutorial01.java.PersonURI非常模糊,因为它被定义为:

static String personURI    = "http://somewhere/JohnSmith";
Run Code Online (Sandbox Code Playgroud)

此URI是否需要可解除引用?如果是这样,所有RDF实现都需要Web服务器吗?最后,如果确实需要取消引用并返回,那么在该URI上提供了什么?

java rdf semantic-web jena linked-data

4
推荐指数
1
解决办法
270
查看次数

无法使用SPARQL从LinkedMDB检索具有高ID的影片

我在LinkedMDB SPARQL端点运行以下查询,它可以工作.有了它,我得到了关于电影导演的所有信息,其中id为72,即泰坦尼克号,所以我得到了关于詹姆斯卡梅隆的信息.

PREFIX mdb: <http://data.linkedmdb.org/resource/movie/>
SELECT ?director?nombre_director?id_director WHERE {
  ?pelicula mdb:filmid ?id .
  ?pelicula <http://data.linkedmdb.org/resource/movie/director> ?director .
  ?director <http://data.linkedmdb.org/resource/movie/director_name> ?nombre_director .
  ?director <http://data.linkedmdb.org/resource/movie/director_directorid> ?id_director .
  FILTER (?id = 72).
}
Run Code Online (Sandbox Code Playgroud)

对于具有较高ID的电影,例如具有ID 44396的示例星际迷航,如果我用44396替换72,则查询不返回任何结果.但是,该条目显然具有目录,ID和名称.为什么修改后的查询不起作用?

rdf semantic-web sparql linked-data linkedmdb

4
推荐指数
1
解决办法
294
查看次数

如何使用 SPARQL 1.1 的 VALUES 获得类似交集的行为?

使用 SPARQL 1.1 的value,以下查询返回以EinsteinKnuth作为主语的所有谓词(及其标签)。

PREFIX dbp: <http://dbpedia.org/resource/>

SELECT DISTINCT ?sub ?outpred ?label
{
  VALUES ?sub { dbp:Albert_Einstein dbp:Donald_Knuth }
  ?sub ?outpred [] .
  ?outpred <http://www.w3.org/2000/01/rdf-schema#label> ?label .
}
Run Code Online (Sandbox Code Playgroud)

SPARQL 结果

是否可以使用此功能来公开谓词的交集而不是并集?或者我误解了价值观的用途?

编辑:澄清

举一个简化的例子,假设有以下三元组:

<Einstein>  <influenced>    <John>
<Einstein>  <influenced>    <Knuth>
<Einstein>  <born>          <Mars>
<Einstein>  <died>          <Los Angeles>
<Knuth>     <influenced>    <Kirby>
<Knuth>     <born>          <Mars>
<Knuth>     <wrote>         <TAOCP>
<Knuth>     <drove>         <Truck>
Run Code Online (Sandbox Code Playgroud)

我得到的“联合”是附加到任一主题的所有唯一谓词(为了清楚起见,以行分隔):

|  ?sub    |  ?pred     |
-------------------------
<Einstein> …
Run Code Online (Sandbox Code Playgroud)

rdf semantic-web sparql dbpedia linked-data

4
推荐指数
1
解决办法
6191
查看次数

在SPARQL中使用数值作为字符串值

可以在SPARQL查询中以某种方式使用数值作为字符串值吗?例如,考虑以下RDF数据,查询和所需结果:

知识库

@prefix gr:  <http://purl.org/goodrelations/v1#>.
@prefix xsd: <http://www.w3.org/2001/XMLSchema#>.

:o a gr:QuantitativeValueFloat;
     gr:hasMinValueFloat "1,0"^^xsd:float
     gr:hasMaxValueFloat "10,0"^^xsd:float
Run Code Online (Sandbox Code Playgroud)

询问

PREFIX gr: <http://purl.org/goodrelations/v1#>    
SELECT ?o ?v
WHERE {
  ?o a gr:QuantitativeValueFloat;
       gr:hasMinValueFloat ?vMin;
       gr:hasMaxValueFloat ?vMax.
  CONCAT((?vMin, ?vMax) as ?v)
}
Run Code Online (Sandbox Code Playgroud)

理想的结果

-----------------
| o  | v        | 
=================
| :o | 1,0-10,0 | 
-----------------
Run Code Online (Sandbox Code Playgroud)

sparql linked-data

4
推荐指数
1
解决办法
443
查看次数

都柏林核心术语和都柏林核心要素词汇之间有什么区别

有2个Dublin核心词汇DC术语和DC元素。

它们定义几乎相同的类和属性。

那么它们之间的主要区别是什么,何时使用它们。

semantic-web ontology vocabulary dublin-core linked-data

4
推荐指数
1
解决办法
745
查看次数

DBpedia Spotlight的参数是什么意思?

我对使用DBpedia Spotlight感兴趣。但是,我们需要在两个参数confidencesupport中插入一个值。这两个参数的真正含义是什么?

我想确定文本中重要的,突出的n-gram。在那种情况下,对置信度和支持参数一般建议是什么(经验法则)?

ontology dbpedia spotlight-dbpedia linked-data

4
推荐指数
1
解决办法
217
查看次数