- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
假设我们有一个巨大的 RDF 图并想要执行以下操作:(我试过了但它不起作用 - 想知道我是否错误地构建了查询或 rdf 转储存在问题)。
select ?n ?o
where {
?n <name_of_a_node> <name_of_this_node>.
?n ?p ?o.
?o <type_of_a_node> ?t.
FILTER(REGEX(STR(?t), "president")).
}
上面的查询表明我知道节点 n 的名称。所以,我得到了节点 n 的 URI。然后,我正在获取节点 n 的所有谓词和通过此谓词连接的其他节点。对于连接到节点 a 的每个节点 o,我想查看它们的属性(类型属性)并仅检索在其类型属性中具有子字符串的那些节点 o。
这在 SPARQL 中可行吗?基本上,站在一个节点上并查看该节点连接到的所有其他节点,然后仅检索那些在其属性上匹配另一个条件的节点。
否则,我是否应该只检索节点 n 连接到的所有节点,并为每个节点运行另一个 SPARQL 查询来执行此检查?
我正在使用 JENA 来存储数据。
最佳答案
是的,这是可能的,但编写这样的查询几乎总是非常不明智的。
您使用的任何 FILTER
都需要 SPARQL 引擎来查看每个可能的解决方案并评估其中的表达式,而许多表达式的评估速度又快又便宜,例如 REGEX
非常昂贵。
本质上,您是在要求 SPARQL 引擎获取大量无限制的可能结果,然后针对每个可能的解决方案应用正则表达式。如果你对Java regex performance一无所知那么你就会知道这通常是一个非常糟糕的主意,无论它在 SPARQL 中的使用如何。
许多 SPARQL 引擎支持 full text extensions它允许您以一种让 SPARQL 引擎更有效地处理它们的方式来表达这些类型的查询。对于 Apache Jena,请参阅 LARQ
关于rdf - 可以执行这些类型的 SPARQL 查询吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14620245/
我正在使用 SPARQL,我想知道是否可以在 in 子句中放入 sparql?更具体地说,我需要获取对此 sparql 查询具有特定条件的实体(s1,s2)[s1 在某个字段上的聚合值大于 5] se
我们有办法在 SPARQL 中做一个不减少的累加和吗? 例如, SELECT ?p WHERE { VALUES ?p { 1 1 2 } } ORDER BY ?p 将导致 1 2 4, - 而
在这个小片段中,第二行的 a 是做什么的? CONSTRUCT { ?uri a skos:Concept ; skos:prefLabel ?prefLabel ; 我确
我写了一个 Sparql 查询。 PREFIX table: SELECT ?name ?color FROM WHERE { ?element table:group ?group. ?gro
下面的两个查询有什么区别吗? select distinct ?i where{ ?i rdf:type . FILTER EXISTS { ?i ?b.
我不太明白为什么在SPARQL中他们没有实现基本的逻辑运算符。然而,在大多数情况下,可以通过多种方式获得相同的结果。 这个问题的目的是快速引用可以替代“or”语句的可能方式。 这是我能想到的: 1)联
我的问题很简单:我有一个源my:g1,其中包含: my:a1 my:b "literal 1" 然后我有第二个源my:g2,其中包含: my:a2 my:b my:c. my:c rdfs:label
我在处理数字数据类型时遇到 SPARQL 问题。 我有一个本体 ( http://cabas.ugr.es/ontology/ugr ),我在其中定义了一对属性,表示特定性别的学生人数:
我有以下 SPARQL 查询: PREFIX rdfs: PREFIX type: PREFIX prop: SELECT * WHERE { ?person a foaf:Per
我想知道如何在sparql中表达以下问题: “请告诉我每个 child 都上麻省理工学院的 parent ” 更一般地说,我想知道查询 sparql 的限制是什么?请问数据库中有哪些类型的答案不能
我正在尝试编写一个优雅的 SPARQL,为多个可能的查询提供一个解决方案。我有多个主语和多个谓词,我想接收一个对象。单一解决方案的存在非常不确定,因此我给出了多种选择。如果我没记错的话,这可以通过以下
这是一个关于 Sparql 和 Wikidata 的问题。我想制定一个返回实例类型关系的查询,但如果它不可用,则返回其子类。我尝试过: SELECT DISTINCT ?ent_type WHER
我想做一些类似的事情 { SELECT ?page, "A" AS ?type WHERE { ?s rdfs:label "Microsoft"@en;
我正在尝试进行 SPARQL 查询,该查询返回一个变量,其中包含两个单词,由某些内容分隔。实际上,我尝试获取一个变量,如 ?πληθυσμός_population(希腊语和英语)。但是,我更喜欢与“
我想知道 SPARQL 默认情况下是否采用开放世界假设,或者这是否取决于执行 SPARQL 查询的三元组存储。 这个假设在查询中的含义是什么。 致以诚挚的问候。 最佳答案 嗯.... 我想知道这对于这
我在处理数字数据类型时遇到 SPARQL 问题。 我有一个本体 ( http://cabas.ugr.es/ontology/ugr ),我在其中定义了一对属性,表示特定性别的学生人数:
我正在玩DBPedia . 通过这个查询,我得到了所有出生在伦敦的人: SELECT ?person WHERE { ?person dbo:birthPlace :London } 但
我需要处理 SPARQL 查询。有没有人有很好的链接来学习 SPARQL 查询?我正在寻找有关 SPARQL 查询和示例语法的好文章,以便我可以快速学习。 最佳答案 Lee Feigenbaum 的
我有一个 SPARQL 查询,它在 Virtuoso SPARQL 查询编辑器中运行时提供结果,但相同的查询在 SPARQL 查询验证器中给出语法错误。问题是什么?为什么显示语法错误? PREFIX
我正在运行 sparql 查询 PREFIX rdfs: PREFIX rdfs: SELECT DISTINCT(?film_link) ?film_name ?wiki
我是一名优秀的程序员,十分优秀!