Skip to content

w3c-cg/awesome-semantic-shapes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Awesome Semantic Shapes Awesome

A curated list of Semantic Shapes resources. Contributions welcome! Please, read the Contribution Guidelines first.

Semantic shapes enable you to validate RDF graphs against a set of conditions. Semantic shapes can also be viewed as a description of data graphs that satisfy these conditions. Such descriptions may be used for a variety of purposes besides validation, including user interface building, code generation, and data integration. Semantic shapes are frequently described using the SHACL or ShEx language.

Contents

SHACL Validators

Software tools or libraries, sorted by programming language.

  • Apache Jena SHACL Maven Central Version Maven Central Last Update - Supports SHACL Core, SHACL-SPARQL; docs; Apache-2.0 license; Java.
  • RDF4J SHACL Engine Maven Central Version Maven Central Last Update - Supports SHACL Core (without some property paths, see 5.0.3 improvements), SHACL-SPARQL, incremental validation; docs; BSD-3-Clause license; Java.
  • TopQuadrant SHACL API Maven Central Version Maven Central Last Update 💰 - Supports SHACL Core, SHACL-SPARQL, SHACL rules; based on Jena; BSD-3-Clause license; Java.
  • TopBraid SHACL API Extended GitHub Release GitHub Release Date - Fork of TopBraid SHACL API + added SHACL-JS based on GraalVM Polyglot; docs; BSD-3-Clause license; Java.
  • shacl-js GitHub Release Date - SHACL API; Apache license; JavaScript. Recommends migration to rdf-validate-shacl. ☠️.
  • rdf-validate-shacl NPM Version GitHub Release Date - Supports SHACL Core; pure JavaScript validator on top of the RDFJS stack; MIT license; JavaScript.
  • shacl-engine NPM Version GitHub last commit - Supports SHACL Core, SHACL-SPARQL; A fast engine for data provided as RDF/JS objects; MIT license; JavaScript.
    • playground - Browser-based testbed.
    • rdf-ext-cli - Command line tool for validation. Data and shapes can be given as file, URL, or SPARQL endpoint + query.
  • SHACL for Ruby Gem Version GitHub last commit - A pure-Ruby library for working with the Shape Constraint Language to validate the shape of RDF graphs; BSD-3-Clause license; Ruby.
  • maplib - High-performance RDF knowledge graph construction, SHACL validation and SPARQL-based enrichment. Apache-2.0 license. Rust, Python. But SHACL is not open source yet: lib/shacl/src/lib.rs says unimplemented!("Contact Data Treehouse to try")
  • rudof Latest Version PyPI GitHub Release Date is a library that implements ShEx, SHACL, DCTAP, and other technologies in the RDF ecosystem. The library is implemented in Rust and also provides Python bindings.

ShEx Validators

Software tools or libraries, sorted by programming language.

  • Apache Jena ShEx Maven Central Version Maven Central Last Update - Supports ShEx, ShExC; not supported semantic actions, EXTERNAL; docs; Apache-2.0 license; Java.
  • shexSpec/shex.js NPM Version GitHub last commit - JavaScript implementation of Shape Expressions; MIT license; JavaScript.
  • ShEx-validator GitHub last commit ☠️ - Standalone Node module with a command line interface; MIT license; JavaScript. Built on top of ShExDemo
  • rudof Latest Version PyPI GitHub Release Date is a library that implements ShEx, SHACL, DCTAP, and other technologies in the RDF ecosystem. The library is implemented in Rust and also provides Python bindings.

Shapes Discovery Tools

Shapes Collections

  • schema.org Shapes - Schema.org, converted to SHACL by TopQuadrant.
  • Europarl Shapes - Application profiles for European Parliament & all related dataset-specific profiles.

Shape Conversion Tools

  • ShacShifter GitHub last commit ☠️ - Shape shifter from SHACL to other formats (currently RDForms); GPL-3.0 license; Python.
  • SHACL To JSON Schema NPM Version GitHub last commit - SHACL-to-JSON-Schema translator; Typescript.
  • rudof Latest Version PyPI GitHub Release Date supports conversion between different RDF Data modeling technologies using the convert command.
  • SHACL Play! JSON-LD context Version GitHub Release Date - SHACL-to-JSON-LD context generator; Java.

Shape Generators

Shape-based Query Generators

Shape Editors, Visualizations

  • Allotrope Shape Editor - The Shape Editor supports editing of shacl and shaclc files; Apache-2.0 license; Java.
  • SHACL Play! Tools - Edit & visualize SHACL; LGPL-3.0 license license; Java.
    • SHACL in Excel - A SHACL editor from Excel.
    • SHACL documentation - A documentation generator to print an application profile specified in SHACL.
    • UML diagrams - A diagram generator to display an application profile specified in SHACL.

Declarative UIs

Data viewers/Editors based on shapes.

  • shaperone NPM Version GitHub Release Date - SHACL Shapes Form generator; docs; MIT license; Typescript.
  • Sparnatural Version GitHub Release Date - Visual knowledge graph explorer with SPARQL, in the browser, configurable with SHACL; docs; LGPL-3.0 license license; Typescript.

IDE support

  • Linked Data Extension - VS Code Extension for editing RDF files with embedded SHACL validator and SPARQL engine.
  • SHACL Language Server - A VS Code extension providing language intelligence (diagnostics, hover tooltips, auto-completion, etc.) for W3C standard SHACL via the Language Server Protocol.
  • Mentor RDF for VS Code - Code editing support for RDF, RDFS, OWL, SKOS, SHACL and SPARQL.
  • SHACLC Language Server (source) - A VS Code extension providing language intelligence (diagnostics, hover tooltips, auto-completion, etc.) for CG standard SHACL Compact Syntax via the Language Server Protocol. MIT License.
  • RDF and SPARQL - IntelliJ plugin with editor support for ShEx Compact syntax and SHACL validation.

Books

Tutorials

Talks and Presentations

Specifications

Legend

  • ☠️ : Each one denotes 5 years since last update (e.g., ☠️☠️☠️ denotes 15 years).
  • 💰 : Denotes closed source commercial software.

Releases

No releases published

Packages

No packages published