Hi

trying to execute a SHACL rule that preserves all the triples during a 
replace _except_ the ontology object and its properties

This gives me the expected results when executed against the target graph..

CONSTRUCT {
    ?s ?p ?o
}
WHERE { ?this a owl:Ontology .
    ?s ?p ?o FILTER ( ?s != ?this )
}

but when I run it as a SHACL rule as below it returns nothing - other rules 
are running OK..

is there some internal logic that stops it looking at owl:Ontology nodes 
when executing rules?  (or a better way of doing this : noting I have a 
"replace=true" on rule execution because normally i want to, this is a rule 
i want to use to override that behaviour )

:copy_graph
  rdf:type sh:NodeShape ;
  rdfs:label "copy original graph" ;
  sh:targetClass owl:Ontology ;
  sh:rule :SPARQLRule_1 ;
.


:SPARQLRule_1
  rdf:type sh:SPARQLRule ;
  rdfs:label "copy original graph" ;
  sh:construct """CONSTRUCT {
    ?s ?p ?o
}
WHERE {
    ?s ?p ?o FILTER ( ?s != ?this )
}""" ;
.

-- 
You received this message because you are subscribed to the Google Groups 
"TopBraid Suite Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/topbraid-users/e90378c0-5f5a-4d6d-9567-c5bcdfbe4de8%40googlegroups.com.

Reply via email to