- library
- semweb
- rdf_db.pl -- Core RDF database
- rdf_cache.pl -- Cache RDF triples
- rdfs.pl -- RDFS handling
- rdf_persistency.pl -- RDF persistency plugin
- rdf_litindex.pl -- Search literals
- rdf_ntriples.pl -- Process files in the RDF N-Triples format
- rdf11.pl -- RDF 1.1 API
- sparql_client.pl -- SPARQL client library
- turtle.pl -- Turtle: Terse RDF Triple Language
- rdf_turtle_write.pl -- Turtle - Terse RDF Triple Language writer
- rdf_http_plugin.pl -- RDF HTTP Plugin
- rdf_library.pl -- RDF Library Manager
- rdf_zlib_plugin.pl -- RDF compressed-data plugin
- semweb
- rdf_find_literal(+Spec, -Literal) is nondet
- rdf_find_literals(+Spec, -Literals) is det
- Find literals in the RDF database matching Spec. Spec is defined
as:
Spec ::= 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)
andstem(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.
- To be done
- - Exploit ordering of numbers and allow for > N, < N, etc.