packages-semweb
packages-semweb copied to clipboard
The SWI-Prolog RDF store
`rdf_load/[1,2]` performs IRI normalization before sending an HTTP request. IRI normalization introduces unnecessary percent escaping that is not supported by all servers, occasionally resulting in unsuccessful requests. Reproducible case: ```...
When loading RDF data from serialization formats supporting RDF datasets (Trig, N-Quads), some RDF triples belong to a specified RDF graph or to the default graph (if not graph is...
`rdf_load` has a `format` method that can load RDF formats when the appropriate module is imported/'used'. `rdf_save` does not have this option and requires individual predicates to be called, e.g....
Allow RDF data from multi-graph sources (e.g. Trig, N-Quads) to be loaded into a single RDF graph, i.e. disregarding the named graphs / default graph distinction in source.
`rdf_literal_value/2` treats decimal numbers as floats: ``` prolog ?- rdf_literal_value(literal(type(xsd:decimal,'0.99999999999999999')), X). X = 1.0. ``` Prolog supports rationals that can accurately represent decimal numbers, as used by [plXsd](https://github.com/wouterbeek/plXsd): ``` prolog...
RDF statistics does not show the correct number of graphs in case a graph is unloaded. Reproduce: ``` prolog ?- use_module(library(semweb/rdf_db)). true. ?- rdf_create_graph(test). true. ?- rdf_unload_graph(test). true. ?- rdf_statistics(graphs(N))....
If rdf_make/0 is used with persistency enabled, the reload will try to delete the journal. It should close the journal first to avoid a permission error on Windows.