SHACL with remote repositories? #4905
-
Hi there, is there any way to use SHACL validation if my repository is not running in the same Java VM or more generally, not on the same machine? If my understanding is right, it only works with the SAILS API which in turn is meant to only work locally. I am using halyard-star (https://github.com/pulquero/Halyard/tree/latest) (running in a docker container with multiple hbase nodes) which does seem to have a SAILS implementation but if that is only running local on the remote process... meh. Thank you in advance |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 2 replies
-
This is correct. Our SHACL implementation is designed to work as a protective layer on top of another sail to ensure that no changes to the database can violate the constraints of the shapes. It needs the sail to implement the NotifyingSail interface for this to work. Recently we have implemented support for validating data that is stored in an existing database, without support for incremental validation. This still uses the Sail interface, but in theory it could work on the federation sail. I think performance would probably be quite bad though. An alternative is to copy all your data into a ShaclSail with a MemoryStore or NativeStore to validate your data. You set up a script to run this process in the night or over the weekend if you have a lot of data. |
Beta Was this translation helpful? Give feedback.
This is correct. Our SHACL implementation is designed to work as a protective layer on top of another sail to ensure that no changes to the database can violate the constraints of the shapes. It needs the sail to implement the NotifyingSail interface for this to work.
Recently we have implemented support for validating data that is stored in an existing database, without support for incremental validation. This still uses the Sail interface, but in theory it could work on the federation sail. I think performance would probably be quite bad though.
An alternative is to copy all your data into a ShaclSail with a MemoryStore or NativeStore to validate your data. You set up a script to run th…