繁体   English   中英

SPARQL查询猫头鹰文件

[英]SPARQL QUERY OWL FILE

我可以问您一个关于本体的SPARQL查询吗。 我有一个family.owl文件是protege 3.4与数据的本体构建:

Lan haschild Tuấn, 
Tùng haschild Tuấn.

我在网站(http://www-sop.inria.fr/edelweiss/software/corese/v2_4_0/manual/index.php#coreseapi)上使用Java和CORESE API来查询上述family.owl。 使用以下SPARQL查询:

PREFIX fm:< http://www.owl-ontologies.com/Ontology1287989576.owl#>

SELECT ?child
WHERE 
{ 
  fm:Lan fm:haschild ?child 
} 

结果为Tuấn(真实结果必须为Tuấn)

如果将“ where”子句替换为: WHERE { fm:Tùng fm:haschild ?child }则结果为空(真实结果必须为Tuấn)

我知道字符串“Tùng”和“Tuấn”的错误结果。 该字符串具有字符unicodeù,ấ

您能否让我在CORESE API中使用Unicode字符来使用sparql查询猫头鹰文件。

一个可能的解决方案是转义URI,而不是:

fm:Tùng --> fm:T%C3%B9ng

fm:Tuấn --> fm:Tu%E1%BA%A5n

如果以这种方式创建数据,则应该不会有问题。 建议不要在URIS中带有重音,因此人们倾向于出于这个原因对URI进行编码/转义,并且大多数语言都具有对URI进行编码的库。 例如在Python中就像...

>>> import urllib
>>> urllib.quote("Tùng")
'T%C3%B9ng'
>>> urllib.quote("Tuấn")
'Tu%E1%BA%A5n'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM