如何在 GraphDB lucene 索引之上计算 lucene FuzzyQuery?

How compute lucene FuzzyQuery on top GraphDB lucene index?

GraphDB 支持 FTS Lucene 插件来构建 RDF 'molecule' 以高效地索引文本。但是,当您正在搜索的单词中出现拼写错误(拼写错误)时,Lucene 将不会检索结果。我想知道是否有可能在 FTS 的 GraphDB 中的 Lucene 索引之上实现基于 Damerau-Levenshtein 算法的 FuzzyQuery。这样,即使单词拼写不正确,您也可以根据编辑距离相似性获得更多 'closed' 个单词的列表。

这是我为索引 WordNet RDF 中的 NounSynset 标签而创建的索引。

PREFIX wn20schema: <http://www.w3.org/2006/03/wn/wn20/schema/>
INSERT DATA {
    luc:index luc:setParam "uris" .
    luc:include luc:setParam "literals" .
    luc:moleculeSize luc:setParam "1" .
    luc:includePredicates luc:setParam "http://www.w3.org/2000/01/rdf-schema#label" .
    luc:includeEntities luc:setParam wn20schema:NounSynset.
    luc:nounIndex luc:createIndex "true".
}

当运行查询时

select * where {
    {?id luc:nounIndex "credict"}
    ?id luc:score ?score.  
}

结果为空,我想至少得到单词"credit",因为编辑距离是1。

谢谢!!!

如果您使用 ~,它应该会给您一个模糊匹配。