这是我的查询
PREFIX : <http://example.org/rs#>
select ?item (SUM(?similarity) as ?summedSimilarity)
(group_concat(distinct ?becauseOf ; separator = " , ") as ?reason) where
{
values ?x {:instance1}
{
?x ?p ?instance.
?item ?p ?instance.
?p :hasSimilarityValue ?similarity
bind (?p as ?becauseOf)
}
union
{
?x a ?class.
?item a ?class.
?class :hasSimilarityValue ?similarity
bind (?class as ?becauseOf)
}
filter (?x != ?item)
}
group by ?item
Run Code Online (Sandbox Code Playgroud)
在我的第一bind
个子句中,我不仅要绑定变量?p
,还要绑定变量?instance
。另外,添加像that is why
.
所以第一次绑定应该导致以下结果:
?p that is why ?instance …
我正在寻找一个查询,该查询选择用英语编写的文字(如果适用)。适用我的意思是,如果请求的文字是字符串而不是数字。
function (String p){
...
query= "select distinct ?o where {
<http://dbpedia.org/resource/Elizabeth:_The_Golden_Age> ?p ?t.
FILTER(langMatches(lang(?t), "EN"))
}
LIMIT 100";
}
Run Code Online (Sandbox Code Playgroud)
问题是如果p是dbo:runtime将不会返回任何结果,因为该数字没有附加语言标签。有没有办法说如果有语言标签,选择英文的。
我的问题是在开发本体时是否必须遵循任何本体方法?
按照我的理解:
请逐点评论/指导我。谢谢。
我想对Person
采用givenName
type 数据属性的类进行建模xsd:string
。maxLength=50
如何指定仅适用于类的此属性(例如)的长度限制Person
?例如,我想允许其他类使用相同的属性并选择不同的值进行限制。
我一直在与 DBpedia 合作进行 GSoC 项目。我必须使用存储在另一个文件中的属性创建三元组。
例如。我的主文件是main.py
,包含所有规则的文件是rules.py
.
这是我正在尝试/想要做的:
规则.py
mapping_rules = {
'family': 'relatedTo',
'singer': 'MusicalArtist',
'writer': 'Author'
}
Run Code Online (Sandbox Code Playgroud)
主文件
import rules
import rdflib
dbo = rdflib.Namespace("http://dbpedia.org/ontology/")
dbr = rdflib.Namespace("http://dbpedia.org/resource/")
uri = "something"
res = "something"
p = mapping_rules[input()]
g.add((rdflib.URIRef(uri), dbo.p, rdflib.URIRef(res)))
Run Code Online (Sandbox Code Playgroud)
我希望动态决定三元组的属性。
如果我'dbo.relatedTo'
在 中用作值mapping_rules.py
,它会显示错误:Predicate dbo.related must be an rdflib term.
如果我使用dbo.relatedTo
as 值 in mapping_rules.py
,它会抛出名称错误:dbo is not defined.
如果我使用relatedTo
inmapping_rules.py
并使用上面的代码,它会添加一个三元组,但属性变为dbo:p
,而我想要dbo:relatedTo
.
我被困在这里,有人可以帮忙吗?谢谢!!
我开始深入研究“知识图谱”这个主题,我感觉这和“链接开放数据”是一样的。我有一些问题 1)如果是这样,为什么他们需要发明一个新概念。2)如果不是,有什么区别以及本体论与它有什么关系?3)这一切是如何与神经网络联系起来的?
我希望这些问题的答案能够澄清概念并指明方向。
我创建了一个简单的查询来显示具有DataType属性值的主题.此查询在Protege 3.4.3中运行.但是当我在耶拿跑步时,我收到了这个标题"com.hp.hpl.jena.sparql.engine.ResultSetStream@16be68f".为什么?这是我的疑问:
PREFIX VB: <http://VBnet#>
SELECT ?x ?y
WHERE {
?x rdf:type VB:LearnerInformation .
?x VB:Name ?y
}
Run Code Online (Sandbox Code Playgroud)
LearnerInformation是一个类, Name是Datatype属性.
我有一个漂亮的OWL架构,我写了,我想实际加载到一个三元组,然后添加数据,以便我可以查询它.但我对如何做到这一点有点无能为力.
你看,我有Fuseki/TDB,完全是因为Jena带来了它们,我喜欢Jena API.但我不知道如何将这个架构实际放入三元店.是否有人像传统数据库一样加载模式?我不知道.
我有Fuseki/TDB运行,并按照"入门"教程,但该教程处理将数据加载到默认图表,我不知道如何进一步移动.救命?线索?我应该使用不同的三重店设置和实际详细的操作方法文档吗?
我想mybrandofmercedes
在OWL中设置对类的限制,这在语法上是否正确?我应该有方括号,如下所示?
mynamespace: mybrandofmercedes rdf:type owl:Class;
mynamespace: mybrandofmercedes
[
rdf:type owl:Restriction;
owl:onProperty mynamespace:hasOwner;
owl:hasValue mynamespace: Anders
]
Run Code Online (Sandbox Code Playgroud) 我在DBPedia工作.我在Sparql中使用group by时遇到问题.
我有这个代码:
SELECT ?res ?titulo
WHERE {
?res rdf:type <http://dbpedia.org/class/yago/JaguaresDeChiapasFootballers> .
?res rdfs:label ?titulo .
}
GROUP BY (?res)
LIMIT 15
Run Code Online (Sandbox Code Playgroud)
我想返回此类型的所有列表.但是我只想为每个URI返回一个,我把这个组放了,它不起作用,我真的不知道为什么?
有人能帮我吗?
semantic-web ×10
owl ×5
rdf ×5
sparql ×4
dbpedia ×3
ontology ×3
jena ×2
linked-data ×1
methodology ×1
protege ×1
protege4 ×1
python ×1
rdflib ×1
triplestore ×1
turtle-rdf ×1