What goes with what for text search? Parameters? Waldo? Lucene?

Hi,

After having used CONTAINS and REGEX, for selecting resources based on string properties, I am now trying to improve my queries speed using the Stardog search indexes and capabilities. However, there are different parameters and sometime Waldo is mentionned or Lucene is as the syntax to use.

What goes with what? And where can we find the syntax to use in SPARQL for each case?

In Stardog Studio, there are 3 parameters that we can set:

(1) Semantic Search: seems to correspond to the search.enabled parameter.
(2) Search Wildcard: seems to correspond to search.wildcard.search.enabled parameter.
(3) Search Default Limit: seems to correspond to search.default.limit

Also, can we use reasoning for text search no matter what indexes we have or syntax we use?

I am using the following documentation. Is there anything else I should refer to?

https://www.stardog.com/docs/#_search

https://www.stardog.com/blog/augmenting-search/

http://lucene.apache.org/core/5_3_0/queryparser/org/apache/lucene/queryparser/classic/package-summary.html#package_description

Thanks
Daniel

After having used CONTAINS and REGEX, for selecting resources based on string properties, I am now trying to improve my queries speed using the Stardog search indexes and capabilities. However, there are different parameters and sometime Waldo is mentionned or Lucerne is as the syntax to use.

What goes with what? And where can we find the syntax to use in SPARQL for each case?

Waldo is the name of the Stardog module that implements the text search functionality using Lucene. There is no separate syntax for Waldo, you can use the Lucene syntax for search strings.

In Stardog Studio, there are 3 parameters that we can set:

(1) Semantic Search : seems to correspond to the search.enabled parameter.
(2) Search Wildcard : seems to correspond to search.wildcard.search.enabled parameter.
(3) Search Default Limit : seems to correspond to search.default.limit

The only effect config parameters have on the search syntax is by default search.wildcard.search.enabled is set to false and you cannot have wildcard at the beginning of a search string, e.g. *suffix is not allowed. These queries are expensive to evaluate and disabled by default in Lucene as well. But if you really need such queries and the performance is acceptable then you can enable the option and run such queries.

Also, can we use reasoning for text search no matter what indexes we have or syntax we use?

Yes, reasoning and text search can be combined together.

Best,
Evren

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.