Re: Any way to enforce constraints at assertion-time?

2019-08-13 Thread Holger Knublauch
To avoid misunderstandings, the TopBraid SHACL API is alive and well, and has recently seen a new maven central release. I would encourage its use over the SPIN API as there is nothing in SPIN that couldn't be handled equally well in SHACL, yet SHACL is a W3C recommendation. It is already

Re: Any way to enforce constraints at assertion-time?

2019-08-13 Thread Jeff Lerman
Thanks Martynas. For my purposes, the test would have to apply to the state of the whole DB after aplication of the UPDATE. The idea is to provide a way to guarantee that the graph never violates some (small) set of constraints, which necessarily includes preventing any changes that would cause

Re: Any way to enforce constraints at assertion-time?

2019-08-13 Thread Martynas Jusevičius
Jeff, re. constraint validation during update -- it's not something I've tried, but I think it should be doable depending on whether your constraint can solely run on the request body, or does it need to check against the state of the whole DB. In the first case it might be possible to implement

Re: Any way to enforce constraints at assertion-time?

2019-08-13 Thread Jeff Lerman
Thanks all. To acknowledge some points: 1. Yes, OWL rules per se aren’t meant as constraints. Nonetheless, constraints against a graph can be useful, and enforcement at assertion-time for some (sub)set of those can also be useful. 2. Notwithstanding the fact that it’s valid (and even

Re: Any way to enforce constraints at assertion-time?

2019-08-13 Thread Martynas Jusevičius
You could also SPARQL as SPIN constraints: https://www.w3.org/Submission/spin-modeling/#spin-constraints Can be implemented using SPIN API: https://github.com/spinrdf/spinrdf On Tue, Aug 13, 2019 at 4:07 PM Andy Seaborne wrote: > > > > On 13/08/2019 06:31, Lorenz Buehmann wrote: > > The rules

Re: Any way to enforce constraints at assertion-time?

2019-08-13 Thread Andy Seaborne
On 13/08/2019 06:31, Lorenz Buehmann wrote: The rules in Jena are not meant to be constraints. there are constraint language for RDF like SHACL, SHEX - there is(was?) as SHACL API from TopQuadrant [1] but even better, Andy has implemented something in that direction quite recently [2]. I'm

Re: Any way to enforce constraints at assertion-time?

2019-08-13 Thread Dave Reynolds
On 13/08/2019 04:09, Jeff Lerman wrote: Is there any way, with Jena (either the distributed version or via any additional software anyone is aware of) to implement enforcement of constraints on assertions, at the time of assertion? Nothing built in. The reasoners do support a validation method

Re: Any way to enforce constraints at assertion-time?

2019-08-12 Thread Lorenz Buehmann
The rules in Jena are not meant to be constraints. there are constraint language for RDF like SHACL, SHEX - there is(was?) as SHACL API from TopQuadrant [1] but even better, Andy has implemented something in that direction quite recently [2]. I'm sure he can tell you more about the current status

Any way to enforce constraints at assertion-time?

2019-08-12 Thread Jeff Lerman
Is there any way, with Jena (either the distributed version or via any additional software anyone is aware of) to implement enforcement of constraints on assertions, at the time of assertion? In particular, it’d be very helpful to be able to protect the graph(s) from any assertion that breaks the