From 576b4711e5979849e82983be6685ac1990fcd0df Mon Sep 17 00:00:00 2001 From: Jesse Wright <63333554+jeswr@users.noreply.github.com> Date: Thu, 21 Nov 2024 17:45:06 +0000 Subject: [PATCH 1/4] feat: add [rudof](https://rudof-project.github.io/rudof/cli_usage/convert.html) Recently presented by @labra at ISWC! --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index 77165ed..abcc285 100644 --- a/README.md +++ b/README.md @@ -29,6 +29,7 @@ Semantic shapes are frequently described using the SHACL or ShEx language. ## SHACL Validators +- [rudof](rudof) [![Latest Version](https://img.shields.io/crates/v/rudof-cli.svg)](https://crates.io/crates/rudof-cli) [![PyPI](https://img.shields.io/pypi/v/pyrudof)](https://pypi.org/project/pyrudof/) [![rudof](https://github.com/rudof-project/rudof/actions/workflows/ci.yml/badge.svg)](https://github.com/rudof-project/rudof/actions/workflows/ci.yml) [![dependency status](https://deps.rs/repo/github/rudof-project/rudof/status.svg)](https://deps.rs/repo/github/rudof-project/rudof) is a library that implements [Shape Expressions](https://shex.io/), [SHACL](https://www.w3.org/TR/shacl/), [DCTAP](https://www.dublincore.org/specifications/dctap/) and other technologies in the [RDF](https://www.w3.org/RDF/) ecosystem. The library is implemented in [Rust](https://www.rust-lang.org/) and it also provides Python bindings. - [Apache Jena SHACL](https://github.com/apache/jena/tree/main/jena-shacl) Maven Central Version Maven Central Last Update - Supports SHACL Core, SHACL-SPARQL; [docs](https://jena.apache.org/documentation/shacl/index.html); `Apache-2.0` license; `Java`. - [RDF4J SHACL Engine](https://github.com/eclipse-rdf4j/rdf4j/tree/main/core/sail/shacl) Maven Central Version Maven Central Last Update - Supports SHACL Core (without some property paths, see [5.0.3 improvements](https://github.com/Sveino/Inst4CIM-KG/issues/95#issuecomment-2437819932)), SHACL-SPARQL, incremental validation; [docs](https://rdf4j.org/documentation/programming/shacl/); `BSD-3-Clause` license; `Java`. - [TopBraid SHACL API](https://github.com/TopQuadrant/shacl) Maven Central Version Maven Central Last Update - Supports SHACL Core, SHACL-SPARQL, SHACL rules; based on Jena; `BSD-3-Clause` license; `Java`. @@ -48,6 +49,7 @@ Semantic shapes are frequently described using the SHACL or ShEx language. ## ShEx Validators +- [rudof](rudof) [![Latest Version](https://img.shields.io/crates/v/rudof-cli.svg)](https://crates.io/crates/rudof-cli) [![PyPI](https://img.shields.io/pypi/v/pyrudof)](https://pypi.org/project/pyrudof/) [![rudof](https://github.com/rudof-project/rudof/actions/workflows/ci.yml/badge.svg)](https://github.com/rudof-project/rudof/actions/workflows/ci.yml) [![dependency status](https://deps.rs/repo/github/rudof-project/rudof/status.svg)](https://deps.rs/repo/github/rudof-project/rudof) is a library that implements [Shape Expressions](https://shex.io/), [SHACL](https://www.w3.org/TR/shacl/), [DCTAP](https://www.dublincore.org/specifications/dctap/) and other technologies in the [RDF](https://www.w3.org/RDF/) ecosystem. The library is implemented in [Rust](https://www.rust-lang.org/) and it also provides Python bindings. - [Apache Jena ShEx](https://github.com/apache/jena/tree/main/jena-shex) Maven Central Version Maven Central Last Update - Supports ShEx, ShExC; not supported semantic actions, EXTERNAL; [docs](https://jena.apache.org/documentation/shex/); `Apache-2.0` license; `Java`. - [shexSpec/shex.js](https://github.com/shexjs/shex.js) NPM Version GitHub last commit - JavaScript implementation of Shape Expressions; `MIT` license; `JavaScript`. - [playground](http://rawgit.com/shexSpec/shex.js/master/doc/shex-simple.html) - Browser-based testbed. @@ -68,6 +70,7 @@ Semantic shapes are frequently described using the SHACL or ShEx language. ## Shape Conversion Tools +- [rudof](https://rudof-project.github.io/rudof/cli_usage/convert.html) [![Latest Version](https://img.shields.io/crates/v/rudof-cli.svg)](https://crates.io/crates/rudof-cli) [![PyPI](https://img.shields.io/pypi/v/pyrudof)](https://pypi.org/project/pyrudof/) [![rudof](https://github.com/rudof-project/rudof/actions/workflows/ci.yml/badge.svg)](https://github.com/rudof-project/rudof/actions/workflows/ci.yml) [![dependency status](https://deps.rs/repo/github/rudof-project/rudof/status.svg)](https://deps.rs/repo/github/rudof-project/rudof) supports conversion between different RDF Data modeling technologies using the `convert` command. - [ShacShifter](https://github.com/AKSW/ShacShifter) GitHub last commit ☠️ - Shape shifter from SHACL to other formats (currently RDForms); `GPL-3.0` license; `Python`. - [SHACL To JSON Schema](https://github.com/comake/shacl-to-json-schema) NPM Version GitHub last commit - SHACL-to-JSON-Schema translator; `Typescript`. From c4275a56bb87dab715c45cb9b5467675836c1031 Mon Sep 17 00:00:00 2001 From: Jesse Wright <63333554+jeswr@users.noreply.github.com> Date: Thu, 21 Nov 2024 18:42:20 +0000 Subject: [PATCH 2/4] Update README.md Co-authored-by: Ted Thibodeau Jr --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index abcc285..47eec87 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ Semantic shapes are frequently described using the SHACL or ShEx language. ## SHACL Validators -- [rudof](rudof) [![Latest Version](https://img.shields.io/crates/v/rudof-cli.svg)](https://crates.io/crates/rudof-cli) [![PyPI](https://img.shields.io/pypi/v/pyrudof)](https://pypi.org/project/pyrudof/) [![rudof](https://github.com/rudof-project/rudof/actions/workflows/ci.yml/badge.svg)](https://github.com/rudof-project/rudof/actions/workflows/ci.yml) [![dependency status](https://deps.rs/repo/github/rudof-project/rudof/status.svg)](https://deps.rs/repo/github/rudof-project/rudof) is a library that implements [Shape Expressions](https://shex.io/), [SHACL](https://www.w3.org/TR/shacl/), [DCTAP](https://www.dublincore.org/specifications/dctap/) and other technologies in the [RDF](https://www.w3.org/RDF/) ecosystem. The library is implemented in [Rust](https://www.rust-lang.org/) and it also provides Python bindings. +- [rudof](rudof) [![Latest Version](https://img.shields.io/crates/v/rudof-cli.svg)](https://crates.io/crates/rudof-cli) [![PyPI](https://img.shields.io/pypi/v/pyrudof)](https://pypi.org/project/pyrudof/) [![rudof](https://github.com/rudof-project/rudof/actions/workflows/ci.yml/badge.svg)](https://github.com/rudof-project/rudof/actions/workflows/ci.yml) [![dependency status](https://deps.rs/repo/github/rudof-project/rudof/status.svg)](https://deps.rs/repo/github/rudof-project/rudof) is a library that implements [Shape Expressions](https://shex.io/), [SHACL](https://www.w3.org/TR/shacl/), [DCTAP](https://www.dublincore.org/specifications/dctap/), and other technologies in the [RDF](https://www.w3.org/RDF/) ecosystem. The library is implemented in [Rust](https://www.rust-lang.org/) and also provides Python bindings. - [Apache Jena SHACL](https://github.com/apache/jena/tree/main/jena-shacl) Maven Central Version Maven Central Last Update - Supports SHACL Core, SHACL-SPARQL; [docs](https://jena.apache.org/documentation/shacl/index.html); `Apache-2.0` license; `Java`. - [RDF4J SHACL Engine](https://github.com/eclipse-rdf4j/rdf4j/tree/main/core/sail/shacl) Maven Central Version Maven Central Last Update - Supports SHACL Core (without some property paths, see [5.0.3 improvements](https://github.com/Sveino/Inst4CIM-KG/issues/95#issuecomment-2437819932)), SHACL-SPARQL, incremental validation; [docs](https://rdf4j.org/documentation/programming/shacl/); `BSD-3-Clause` license; `Java`. - [TopBraid SHACL API](https://github.com/TopQuadrant/shacl) Maven Central Version Maven Central Last Update - Supports SHACL Core, SHACL-SPARQL, SHACL rules; based on Jena; `BSD-3-Clause` license; `Java`. From e856a1feffab5cee15d45c4e00da36ab8b8872a4 Mon Sep 17 00:00:00 2001 From: Jesse Wright <63333554+jeswr@users.noreply.github.com> Date: Thu, 21 Nov 2024 18:42:27 +0000 Subject: [PATCH 3/4] Update README.md Co-authored-by: Ted Thibodeau Jr --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 47eec87..e676fe2 100644 --- a/README.md +++ b/README.md @@ -49,7 +49,7 @@ Semantic shapes are frequently described using the SHACL or ShEx language. ## ShEx Validators -- [rudof](rudof) [![Latest Version](https://img.shields.io/crates/v/rudof-cli.svg)](https://crates.io/crates/rudof-cli) [![PyPI](https://img.shields.io/pypi/v/pyrudof)](https://pypi.org/project/pyrudof/) [![rudof](https://github.com/rudof-project/rudof/actions/workflows/ci.yml/badge.svg)](https://github.com/rudof-project/rudof/actions/workflows/ci.yml) [![dependency status](https://deps.rs/repo/github/rudof-project/rudof/status.svg)](https://deps.rs/repo/github/rudof-project/rudof) is a library that implements [Shape Expressions](https://shex.io/), [SHACL](https://www.w3.org/TR/shacl/), [DCTAP](https://www.dublincore.org/specifications/dctap/) and other technologies in the [RDF](https://www.w3.org/RDF/) ecosystem. The library is implemented in [Rust](https://www.rust-lang.org/) and it also provides Python bindings. +- [rudof](rudof) [![Latest Version](https://img.shields.io/crates/v/rudof-cli.svg)](https://crates.io/crates/rudof-cli) [![PyPI](https://img.shields.io/pypi/v/pyrudof)](https://pypi.org/project/pyrudof/) [![rudof](https://github.com/rudof-project/rudof/actions/workflows/ci.yml/badge.svg)](https://github.com/rudof-project/rudof/actions/workflows/ci.yml) [![dependency status](https://deps.rs/repo/github/rudof-project/rudof/status.svg)](https://deps.rs/repo/github/rudof-project/rudof) is a library that implements [Shape Expressions](https://shex.io/), [SHACL](https://www.w3.org/TR/shacl/), [DCTAP](https://www.dublincore.org/specifications/dctap/), and other technologies in the [RDF](https://www.w3.org/RDF/) ecosystem. The library is implemented in [Rust](https://www.rust-lang.org/) and also provides Python bindings. - [Apache Jena ShEx](https://github.com/apache/jena/tree/main/jena-shex) Maven Central Version Maven Central Last Update - Supports ShEx, ShExC; not supported semantic actions, EXTERNAL; [docs](https://jena.apache.org/documentation/shex/); `Apache-2.0` license; `Java`. - [shexSpec/shex.js](https://github.com/shexjs/shex.js) NPM Version GitHub last commit - JavaScript implementation of Shape Expressions; `MIT` license; `JavaScript`. - [playground](http://rawgit.com/shexSpec/shex.js/master/doc/shex-simple.html) - Browser-based testbed. From e7551b41823b6c35fe2491c487165104eef62cab Mon Sep 17 00:00:00 2001 From: Jesse Wright <63333554+jeswr@users.noreply.github.com> Date: Fri, 22 Nov 2024 20:31:33 +0000 Subject: [PATCH 4/4] chore: style fixesq Resolves issues from https://github.com/w3c-cg/awesome-semantic-shapes/issues/15 --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index e676fe2..a7645f5 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,6 @@ Semantic shapes are frequently described using the SHACL or ShEx language. ## SHACL Validators -- [rudof](rudof) [![Latest Version](https://img.shields.io/crates/v/rudof-cli.svg)](https://crates.io/crates/rudof-cli) [![PyPI](https://img.shields.io/pypi/v/pyrudof)](https://pypi.org/project/pyrudof/) [![rudof](https://github.com/rudof-project/rudof/actions/workflows/ci.yml/badge.svg)](https://github.com/rudof-project/rudof/actions/workflows/ci.yml) [![dependency status](https://deps.rs/repo/github/rudof-project/rudof/status.svg)](https://deps.rs/repo/github/rudof-project/rudof) is a library that implements [Shape Expressions](https://shex.io/), [SHACL](https://www.w3.org/TR/shacl/), [DCTAP](https://www.dublincore.org/specifications/dctap/), and other technologies in the [RDF](https://www.w3.org/RDF/) ecosystem. The library is implemented in [Rust](https://www.rust-lang.org/) and also provides Python bindings. - [Apache Jena SHACL](https://github.com/apache/jena/tree/main/jena-shacl) Maven Central Version Maven Central Last Update - Supports SHACL Core, SHACL-SPARQL; [docs](https://jena.apache.org/documentation/shacl/index.html); `Apache-2.0` license; `Java`. - [RDF4J SHACL Engine](https://github.com/eclipse-rdf4j/rdf4j/tree/main/core/sail/shacl) Maven Central Version Maven Central Last Update - Supports SHACL Core (without some property paths, see [5.0.3 improvements](https://github.com/Sveino/Inst4CIM-KG/issues/95#issuecomment-2437819932)), SHACL-SPARQL, incremental validation; [docs](https://rdf4j.org/documentation/programming/shacl/); `BSD-3-Clause` license; `Java`. - [TopBraid SHACL API](https://github.com/TopQuadrant/shacl) Maven Central Version Maven Central Last Update - Supports SHACL Core, SHACL-SPARQL, SHACL rules; based on Jena; `BSD-3-Clause` license; `Java`. @@ -46,10 +45,10 @@ Semantic shapes are frequently described using the SHACL or ShEx language. - [rdf-ext-cli](https://github.com/rdf-ext/rdf-ext-cli) - Command line tool for validation. Data and shapes can be given as file, URL, or SPARQL endpoint + query. - [SHACL for Ruby](https://github.com/ruby-rdf/shacl) 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](https://github.com/DataTreehouse/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](https://github.com/DataTreehouse/maplib/blob/main/lib/shacl/src/lib.rs) says `unimplemented!("Contact Data Treehouse to try")` +- [rudof](https://rudof-project.github.io/rudof/) [![Latest Version](https://img.shields.io/crates/v/rudof-cli.svg)](https://crates.io/crates/rudof-cli) [![PyPI](https://img.shields.io/pypi/v/pyrudof)](https://pypi.org/project/pyrudof/) GitHub Release Date is a library that implements ShEx, SHACL, [DCTAP](https://www.dublincore.org/specifications/dctap/), and other technologies in the RDF ecosystem. The library is implemented in [Rust](https://www.rust-lang.org/) and also provides Python bindings. ## ShEx Validators -- [rudof](rudof) [![Latest Version](https://img.shields.io/crates/v/rudof-cli.svg)](https://crates.io/crates/rudof-cli) [![PyPI](https://img.shields.io/pypi/v/pyrudof)](https://pypi.org/project/pyrudof/) [![rudof](https://github.com/rudof-project/rudof/actions/workflows/ci.yml/badge.svg)](https://github.com/rudof-project/rudof/actions/workflows/ci.yml) [![dependency status](https://deps.rs/repo/github/rudof-project/rudof/status.svg)](https://deps.rs/repo/github/rudof-project/rudof) is a library that implements [Shape Expressions](https://shex.io/), [SHACL](https://www.w3.org/TR/shacl/), [DCTAP](https://www.dublincore.org/specifications/dctap/), and other technologies in the [RDF](https://www.w3.org/RDF/) ecosystem. The library is implemented in [Rust](https://www.rust-lang.org/) and also provides Python bindings. - [Apache Jena ShEx](https://github.com/apache/jena/tree/main/jena-shex) Maven Central Version Maven Central Last Update - Supports ShEx, ShExC; not supported semantic actions, EXTERNAL; [docs](https://jena.apache.org/documentation/shex/); `Apache-2.0` license; `Java`. - [shexSpec/shex.js](https://github.com/shexjs/shex.js) NPM Version GitHub last commit - JavaScript implementation of Shape Expressions; `MIT` license; `JavaScript`. - [playground](http://rawgit.com/shexSpec/shex.js/master/doc/shex-simple.html) - Browser-based testbed. @@ -57,6 +56,7 @@ Semantic shapes are frequently described using the SHACL or ShEx language. - [Validata](https://github.com/HW-SWeL/Validata) GitHub last commit ☠️ - Web-based UI to validate RDF against ShEx schemas; `MIT` license; `JavaScript`. - [playground1](http://hw-swel.github.io/Validata/) (HW-SWeL) - [playground2](https://www.w3.org/2015/03/ShExValidata/) (W3C) +- [rudof](https://rudof-project.github.io/rudof/) [![Latest Version](https://img.shields.io/crates/v/rudof-cli.svg)](https://crates.io/crates/rudof-cli) [![PyPI](https://img.shields.io/pypi/v/pyrudof)](https://pypi.org/project/pyrudof/) GitHub Release Date is a library that implements ShEx, SHACL, [DCTAP](https://www.dublincore.org/specifications/dctap/), and other technologies in the RDF ecosystem. The library is implemented in [Rust](https://www.rust-lang.org/) and also provides Python bindings. ## Shapes Discovery Tools @@ -70,9 +70,9 @@ Semantic shapes are frequently described using the SHACL or ShEx language. ## Shape Conversion Tools -- [rudof](https://rudof-project.github.io/rudof/cli_usage/convert.html) [![Latest Version](https://img.shields.io/crates/v/rudof-cli.svg)](https://crates.io/crates/rudof-cli) [![PyPI](https://img.shields.io/pypi/v/pyrudof)](https://pypi.org/project/pyrudof/) [![rudof](https://github.com/rudof-project/rudof/actions/workflows/ci.yml/badge.svg)](https://github.com/rudof-project/rudof/actions/workflows/ci.yml) [![dependency status](https://deps.rs/repo/github/rudof-project/rudof/status.svg)](https://deps.rs/repo/github/rudof-project/rudof) supports conversion between different RDF Data modeling technologies using the `convert` command. - [ShacShifter](https://github.com/AKSW/ShacShifter) GitHub last commit ☠️ - Shape shifter from SHACL to other formats (currently RDForms); `GPL-3.0` license; `Python`. - [SHACL To JSON Schema](https://github.com/comake/shacl-to-json-schema) NPM Version GitHub last commit - SHACL-to-JSON-Schema translator; `Typescript`. +- [rudof](https://rudof-project.github.io/rudof/cli_usage/convert.html) [![Latest Version](https://img.shields.io/crates/v/rudof-cli.svg)](https://crates.io/crates/rudof-cli) [![PyPI](https://img.shields.io/pypi/v/pyrudof)](https://pypi.org/project/pyrudof/) GitHub Release Date supports conversion between different RDF Data modeling technologies using the `convert` command. ## Shape Generators