Индекс GraphDB Lucene — как исключить URI свойств из результатов поиска?

#lucene #graphdb

#lucene #graphdb

Вопрос:

Похоже, что по умолчанию индекс Lucene, который индексирует «uri», будет индексировать как узлы, так и свойства. Как свойства могут быть исключены из результатов поиска?

В документации показана настройка:

 luc:exclude luc:setParam "bnode".
 

Однако его единственными допустимыми значениями являются «literal», «bnode» и «uri». Как можно исключить URI свойств? (они не являются чем-то, что могло бы заинтересовать поиск).

Ответ №1:

Я предполагаю, что вы используете https://graphdb.ontotext.com/documentation/standard/full-text-search.html и не https://graphdb.ontotext.com/documentation/standard/lucene-graphdb-connector.html ?

Документ не показывает то, что вы показываете выше, но показывает

 luc:exclude luc:setParam "hello.*"
 

что означает «исключить строки, соответствующие регулярному выражению».

Какие вещи для индексации контролируются

 luc:include luc:setParam "literal" # literal, uri, centre
 

Если я правильно понимаю, вы хотите индексировать URI узлов, но не URI исходящих свойств? Тогда ответ будет зависеть от типа молекулы, которую вы пересекаете.

  • luc:include luc:setParam "literal centre" будет индексироваться только URI центрального узла, что, вероятно, то, что вы хотите
  • с luc:excludePredicates помощью вы можете перечислить все свойства, которые хотите исключить, но это также приведет к удалению узлов, которые они достигают…