.
This commit is contained in:
@@ -4,7 +4,7 @@ use oxigraph::store::Store;
|
||||
use crate::error;
|
||||
use crate::rdf::vocab::owl;
|
||||
|
||||
pub fn same_as(store: Store) -> error::Result<Store> {
|
||||
pub fn same_as(store: &mut Store) -> error::Result<()> {
|
||||
let additional_quads = store
|
||||
.quads_for_pattern(None, Some(owl::SAME_AS), None, None)
|
||||
.filter_map(Result::ok)
|
||||
@@ -42,11 +42,11 @@ pub fn same_as(store: Store) -> error::Result<Store> {
|
||||
if new_size > old_size {
|
||||
same_as(store)
|
||||
} else {
|
||||
Ok(store)
|
||||
Ok(())
|
||||
}
|
||||
}
|
||||
|
||||
pub fn super_classes(dataset: &mut Dataset) {
|
||||
pub fn super_classes(store: &mut Store) -> error::Result<()> {
|
||||
let query = SparqlEvaluator::new()
|
||||
.parse_query(
|
||||
r#"PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
|
||||
@@ -61,7 +61,7 @@ CONSTRUCT {
|
||||
.expect("Unable to parse superclass query");
|
||||
|
||||
let mut additional_quads = Dataset::new();
|
||||
if let QueryResults::Graph(graph) = query.on_queryable_dataset(&*dataset).execute().unwrap()
|
||||
if let QueryResults::Graph(graph) = query.on_store(&store).execute().unwrap()
|
||||
{
|
||||
additional_quads.extend(graph.filter_map(Result::ok).map(|triple| {
|
||||
Quad::new(
|
||||
@@ -73,12 +73,14 @@ CONSTRUCT {
|
||||
}));
|
||||
}
|
||||
|
||||
let old_size = dataset.len();
|
||||
dataset.extend(&additional_quads);
|
||||
let new_size = dataset.len();
|
||||
let old_size = store.len()?;
|
||||
store.extend(&additional_quads)?;
|
||||
let new_size = store.len()?;
|
||||
|
||||
if new_size > old_size {
|
||||
super_classes(dataset)
|
||||
super_classes(store)
|
||||
} else {
|
||||
Ok(())
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user