0

我想使用 lucene 和 jena 对 dbpedia 的子集(我在 tdb 商店中有)执行全文搜索。

String TDBDirectory = "path" ;
Dataset dataset = TDBFactory.createDataset(TDBDirectory) ;

但不是所有资源,只是标题。我认为通过仅在所需的三元组上创建索引,我可以执行更快的搜索。例如

<http://de.dbpedia.org/resource/Gurke> <http://www.w3.org/2000/01/rdf-schema#label> "Gurke"@de .

在这里,我想搜索“Gurke”,但除了具有#label 属性的三元组之外,不搜索任何其他三元组。所以我的问题是如何使用#label 属性构建索引并仅搜索三元组?我已经看过http://jena.sourceforge.net/ARQ/lucene-arq.html但它不够详细或对我来说太难了。

4

1 回答 1

1

http://jena.sourceforge.net/是 Jena 的老家——该项目现在是http://jena.apache.org/(您是如何找到那个旧页面的?)

该项目最近推出了 LARQ 的替代品。

http://jena.apache.org/documentation/query/text-query.html

这现在是主要代码库的一部分。它将与 2.10.2 版本一起发布 - 目前您必须使用来自https://repository.apache.org/content/repositories/snapshots/org/apache/jena/的开发版本。您要么需要使用 Fuseki,要么将其添加为项目的依赖项。

这个新的文本搜索子系统与 TDB 和 Fuseki 一起工作得更好。

于 2013-06-15T10:12:41.550 回答