如何在Virtuoso中为我的本体定义新的端点?我能够通过RDF商店上传选项卡中的Virtuoso Conductor上传我的本体.现在我需要定义一组端点,以便能够通过HTTP在我的应用程序中使用它们.Virtuoso Conductor中是否有任何选项卡可以实现用户友好界面来创建端点,我该怎么做?我需要使用一些外部工具吗?
我目前正在调查炫技,我真的想知道的区别是原生四核RDF存储和基于RDF三元组存储在SQL之间有什么这个页面(向下滚动有点见图)上,如下所示: HTTP:// virtuoso.openlinksw.com/dataspace/doc/dav/wiki/Main/VirtJenaProvider
我知道Native RDF Quad Store使用传统的关系数据库,但是它针对使用SPARQL的更快请求进行了优化.这让我很困惑!因为我想知道SQL Based RDF Triple商店现在是什么......
提前致谢!
给出对象和有向关系的通用图:
@prefix obj: <http://example.org/obj/> .
@prefix rel: <http://example.org/rel/> .
obj:obj1 rel:rel1 obj:obj2 .
obj:obj3 rel:rel2 obj:obj2 .
obj:obj9 rel:rel5 obj:obj8 .
obj:obj1 rel:rel1 obj:obj3 .
Run Code Online (Sandbox Code Playgroud)
和一个对象的子集,比如obj1, obj2, obj3,如何使用简单的SPARQL查询提取仅包含此对象子集的子图,而不管完整图中的特定关系?由此产生的子图应为:
obj:obj1 rel:rel1 obj:obj2 .
obj:obj3 rel:rel2 obj:obj2 .
obj:obj1 rel:rel1 obj:obj3 .
Run Code Online (Sandbox Code Playgroud)
我目前的尝试是尝试使用一堆OPTIONAL子句来尝试所有可能的关系,这可能不是最好的方法:
SELECT ?r1 ?r2 ?r3 ?r4 ?r5 ?r6 WHERE {
OPTIONAL {obj:obj1 ?r1 obj:obj2} .
OPTIONAL {obj:obj1 ?r2 obj:obj3} .
OPTIONAL {obj:obj2 ?r3 obj:obj3} .
OPTIONAL {obj:obj2 ?r4 obj:obj1} .
OPTIONAL {obj:obj3 ?r5 obj:obj1} .
OPTIONAL …Run Code Online (Sandbox Code Playgroud) 我是 RDF/本体论的新手,我不太清楚在这个领域的工作方式。目前我对三重验证感到困扰。我仍然以关系方式思考,首先创建一个模式,然后为了插入数据,我需要遵循该结构。
为了插入三元组,我使用 Jena,然后使用生成的字符串来执行插入命令。这是我的问题:
有没有办法验证我生成的 RDF 三元组(当前使用 Jena)实际上遵循我的本体结构。
或者,当我执行插入时,有没有办法让 rdf 存储(当前的 Virtuoso)通知我?我做了一些搜索,发现:How to Import Ontology into Virtuoso? 。这是否意味着我的三元组将根据我的本体进行检查/验证?
还找到了RDF和OWL工作流程问题。那里说
我有以下查询
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT ?type
WHERE
{
{
SELECT *
WHERE
{
?x rdfs:subClassOf ?type .
}
}
OPTION (TRANSITIVE, t_distinct, t_in (?x), t_out (?type) ) .
FILTER (?x = <http://dbpedia.org/ontology/Hospital>)
}
Run Code Online (Sandbox Code Playgroud)
当我将它发送到Virtuoso端点但它在我的Jena实例上不起作用时它工作正常.具体我得到以下错误:
INFO [1] 400 Parse error:
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT ?type
WHERE
{
{
SELECT *
WHERE
{
?x rdfs:subClassOf ?type .
}
}
OPTION (TRANSITIVE, t_distinct, t_in (?x), t_out (?type) ) .
FILTER (?x = <http://dbpedia.org/ontology/Hospital>)
}
Lexical error at line 12, column 39. Encountered: " …Run Code Online (Sandbox Code Playgroud) 我想找到 RDF 中有多少资源,但找不到任何教程来解释如何检查 SPARQL 中的变量前缀。
我试过这个:
select count(?x) where {
res:?x ?p ?v
}
Run Code Online (Sandbox Code Playgroud)
但它有语法错误。我正在为 DBPedia 使用 virtuoso
我在DBpedia上运行查询,我收到一些结果显然有错误的编码和字符显示为问号,例如 -
http://dbpedia.org/resource/Bo?aziçi_University
Run Code Online (Sandbox Code Playgroud)
- 我希望看到的地方 -
http://dbpedia.org/resource/Bo%C4%9Fazi%C3%A7i_University
Run Code Online (Sandbox Code Playgroud)
在这里你可以找到实际的标题.
你可以在那里执行我的查询 http://live.dbpedia.org/sparql
PREFIX yago: <http://dbpedia.org/class/yago/>
PREFIX schema: <http://schema.org/>
PREFIX dbpedia: <http://dbpedia.org/>
SELECT ?school
WHERE
{
{ ?school rdf:type schema:EducationalOrganization . }
UNION
{ ?school rdf:type yago:EducationalInstitution108276342 . }
UNION
{ ?school rdf:type yago:College108278169 . }
UNION
{ ?school dbpedia:type dbr:Public_university . }
}
Run Code Online (Sandbox Code Playgroud)
难道我做错了什么?我是否必须对查询进行任何添加才能获得正确的结果?它是否与数据相关(基本上数据是错误的,所以无法做任何事情)?
当我去的时候http://localhost:8890/sparql/,有两个领域:Default Data Set Name (Graph IRI)和query.如何列出我的数据库中所有图形(前一个字段中都有)的内容?该字段不是必需的,我可以只针对所有命名空间运行查询.但我想知道如何列出可用的图表.
我能够运行的唯一非空图是 http://localhost:8890/sparql
例如,在关系数据库环境中,我相信可以从系统表中检索这种信息.
我运行一个查询,我知道应该返回超过 10,000 行Virtuoso,但我只返回 10,000 行。我没有LIMIT在查询末尾使用子句。该数字是默认结果集限制吗?如何覆盖它?
我的查询是:
select distinct ?s { ?s ?p ?o. }
Run Code Online (Sandbox Code Playgroud) 我是sparql领域的初学者.我写了这个查询:
prefix pp: <http://purl.org/dc/elements/1.1/>
select ?title,?autor1, ?autor2
from <http://gutenberg.lib>
where {
?s pp:title ?title.
?s pp:creator ?ID1.
?ID1 ?p ?autor1.
optional{ ?s pp:creator ?ID2.
?ID2 ?p ?autor2.
}
} order by ?s
Run Code Online (Sandbox Code Playgroud)
我根据guttenberg项目的数据运行它.数据格式如下:
S1 pp:title "TITLE11"
S1 pp:creator "CREATOR11"
S1 pp:creator "CREATOR12"
S2 pp:title "TITLE21"
S2 pp:creator "CREATOR21"
S2 pp:creator "CREATOR22"
S2 pp:creator "CREATOR23"
Run Code Online (Sandbox Code Playgroud)
等等
我希望我能得到类似的东西:
TITLE11, CREATOR11, CREATOR11
TITLE11, CREATOR11, CREATOR12
TITLE11, CREATOR12, CREATOR11
TITLE11, CREATOR12, CREATOR12
Run Code Online (Sandbox Code Playgroud)
但我得到了类似的东西:
TITLE11, CREATOR11, CREATOR11
TITLE11, CREATOR12, CREATOR12
Run Code Online (Sandbox Code Playgroud)
所以没有像SQL 这样的笛卡尔积 …