Coder Social home page Coder Social logo

owl2shacl's Introduction

owl2shacl

OWL 2 SHACL conversion rules, adapted from TopQuadrant's original post at https://www.topquadrant.com/from-owl-to-shacl-in-an-automated-way/

These rules can be used by SHACL Play at https://shacl-play.sparna.fr/play/convert to convert an OWL file to SHACL.

This comes in 3 flavors :

  1. open flavor does not close the Shapes and does not verify the domain of properties
  2. semi-closed flavor does verify the domains of the properties in the ontology, but does not close the shapes, leaving open the possibility to have properties of other ontologies in the data.
  3. closed closes all shapes, so does not allow the use of properties outside of the ones declared in the ontology, and closing the shapes verifies that each property is asserted on a valid entity according to its domain declaration

owl2shacl's People

Contributors

tfrancart avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

owl2shacl's Issues

Document different options

Can you please provide a short explanation of what each version (?) does.

Might be able to guess -open and -closed but -semi-closed will need some explanation.

owlAllValuesFrom2shClassOrDatatype references non-existent SPARQLFunction

All 3 shapes graphs reference a sh:SPARQLFunction that doesnt exist (only in the original shapes graph )

  1. https://github.com/sparna-git/owl2shacl/blob/main/owl2sh-closed.ttl#L841
  2. https://github.com/sparna-git/owl2shacl/blob/main/owl2sh-open.ttl#L834
  3. https://github.com/sparna-git/owl2shacl/blob/main/owl2sh-semi-closed.ttl#L836

as such, allValuesFrom restrictions aren't correctly transformed..

Solution:

Use the same approach as used for rdfsRange2shClassOrDatatype also for owlAllValuesFrom2shClassOrDatatype.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.