
rdf_litindex.pl -- Search literalsThis module finds literals of the RDF database based on words, stemming and sounds like (metaphone). The normal user-level predicate is
rdf_set_literal_index_option(+Options:list)true, print progress messages while building the
index tables.self (execute in the same thread), thread(N) (execute
in N concurrent threads) or default (depends on number
of cores).
rdf_find_literal(+Spec, -Literal) is nondet
rdf_find_literals(+Spec, -Literals) is detSpec ::= and(Spec,Spec) Spec ::= or(Spec,Spec) Spec ::= not(Spec) Spec ::= sounds(Like) Spec ::= stem(Like) % same as stem(Like, en) Spec ::= stem(Like, Lang) Spec ::= prefix(Prefix) Spec ::= between(Low, High) % Numerical between Spec ::= ge(High) % Numerical greater-equal Spec ::= le(Low) % Numerical less-equal Spec ::= Token
sounds(Like) and stem(Like) both map to a disjunction. First we
compile the spec to normal form: a disjunction of conjunctions
on elementary tokens. Then we execute all the conjunctions and
generate the union using ordered-set algorithms.
Stopgaps are ignored. If the final result is only a stopgap, the predicate fails.
rdf_token_expansions(+Spec, -Extensions)
rdf_delete_literal_index(+Type)
rdf_tokenize_literal(+Literal, -Tokens) is semidet
rdf_stopgap_token(-Token) is nondetexclude_from_index(token, Token) is truedefault_stopgap(Token) is true
rdf_literal_index(+Type, -Index) is dettoken map maps tokens to full
literal texts.stem map maps stemmed to full tokens.metaphone map maps phonetic
keys to tokens.The following predicates are exported, but not or incorrectly documented.
rdf_find_literals(Arg1, Arg2)