w3c-cg / awesome-semantic-shapes

A curated list of RDF Shape resources
Other
4 stars 3 forks source link

Have the list described in RDF and generate this README using those RDF descriptions #16

Open tpluscode opened 2 days ago

tpluscode commented 2 days ago

Can I make a somewhat drastic suggestion - have the list described in RDF and generate this README using those RDF descriptions.

Originally posted by @jeswr in https://github.com/w3c-cg/awesome-semantic-shapes/issues/15#issuecomment-2495087213

simonstey commented 14 hours ago

Maybe something along the lines of:

RDF Representation ```ttl @prefix schema: . @prefix sh: . @prefix shex: . @prefix rdf: . a schema:ItemList ; schema:name "Awesome Semantic Shapes" ; schema:description "A curated list of Semantic Shapes resources. Contributions welcome!" ; schema:itemListElement [ schema:position 1 ; schema:name "SHACL Validators" ; schema:itemListElement [ schema:position 1 ; schema:name "Apache Jena SHACL" ; schema:url ; schema:image ; schema:description "Supports SHACL Core, SHACL-SPARQL; docs; Apache-2.0 license; Java." ; ], [ schema:position 2 ; schema:name "RDF4J SHACL Engine" ; schema:url ; schema:image ; schema:description "Supports SHACL Core (without some property paths, see 5.0.3 improvements), SHACL-SPARQL, incremental validation; docs; BSD-3-Clause license; Java." ; ], [ schema:position 3 ; schema:name "TopBraid SHACL API" ; schema:url ; schema:image ; schema:description "Supports SHACL Core, SHACL-SPARQL, SHACL rules; based on Jena; BSD-3-Clause license; Java." ; schema:itemListElement [ schema:position 1 ; schema:name "RDF validator" ; schema:url ; schema:description "The EU Interoperability Test Bed (ITB) playground based on TQ API; validate any RDF with SHACL Shapes." ; ], [ schema:position 2 ; schema:name "SHACL shapes validator" ; schema:url ; schema:description "The EU Interoperability Test Bed (ITB) playgrounds based on TQ API; validate SHACL Shapes itself." ; ], [ schema:position 3 ; schema:name "Sparna SHACL playground" ; schema:url ; schema:description "Free online suite of tools from Sparna to work with SHACL; based on TQ API." ; ] ; ], [ schema:position 4 ; schema:name "TopBraid SHACL API Extended" ; schema:url ; schema:image ; schema:description "Fork of TopBraid SHACL API + added SHACL-JS based on GraalVM Polyglot; docs; BSD-3-Clause license; Java." ; ], [ schema:position 5 ; schema:name "shacl-js" ; schema:url ; schema:image ; schema:description "SHACL API; Apache license; JavaScript. Recommends migration to rdf-validate-shacl." ; schema:itemListElement [ schema:position 1 ; schema:name "playground" ; schema:url ; schema:description "Browser-based testbed." ; ] ; ], [ schema:position 6 ; schema:name "rdf-validate-shacl" ; schema:url ; schema:image ; schema:description "Supports SHACL Core; pure JavaScript validator on top of the RDFJS stack; MIT license; JavaScript." ; schema:itemListElement [ schema:position 1 ; schema:name "playground" ; schema:url ; ]; ], [ schema:position 7 ; schema:name "shacl-engine" ; schema:url ; schema:image ; schema:description "Supports SHACL Core, SHACL-SPARQL; A fast engine for data provided as RDF/JS objects; MIT license; JavaScript." ; schema:itemListElement [ schema:position 1 ; schema:name "playground" ; schema:url ; schema:description "Browser-based testbed." ; ], [ schema:position 2 ; schema:name "rdf-ext-cli" ; schema:url ; schema:description "Command line tool for validation. Data and shapes can be given as file, URL, or SPARQL endpoint + query." ; ]; ], [ schema:position 8 ; schema:name "SHACL for Ruby" ; schema:url ; schema:image ; schema:description "A pure-Ruby library for working with the Shape Constraint Language to validate the shape of RDF graphs; BSD-3-Clause license; Ruby." ; ], [ schema:position 9 ; schema:name "maplib" ; schema:url ; schema:image ; schema:description "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." ; ] ; ], [ schema:position 2 ; schema:name "ShEx Validators" ; schema:itemListElement [ schema:position 1 ; schema:name "Apache Jena ShEx" ; schema:url ; schema:image ; schema:description "Supports ShEx, ShExC; not supported semantic actions, EXTERNAL; docs; Apache-2.0 license; Java." ; ], [ schema:position 2 ; schema:name "shexSpec/shex.js" ; schema:url ; schema:image ; schema:description "JavaScript implementation of Shape Expressions; MIT license; JavaScript." ; schema:itemListElement [ schema:position 1 ; schema:name "playground" ; schema:url ; schema:description "Browser-based testbed." ; ] ; ], [ schema:position 3 ; schema:name "ShEx-validator" ; schema:url ; schema:image ; schema:description "Standalone Node module with a command line interface; MIT license; JavaScript. Built on top of ShExDemo." ; schema:itemListElement [ schema:position 1 ; schema:name "Validata" ; schema:url ; schema:description "Web-based UI to validate RDF against ShEx schemas; MIT license; JavaScript." ; ], [ schema:position 2 ; schema:name "playground1" ; schema:url ; ], [ schema:position 3 ; schema:name "playground2" ; schema:url ; ] ; ] ; ], [ schema:position 3 ; schema:name "Shapes Discovery Tools" ; schema:itemListElement [ schema:position 1 ; schema:name "RDFminer" ; schema:url ; schema:description "Web application to automatically discover SHACL shapes representative of an RDF data graph, by Wimmics; CECILL-C license; Java." ; ], [ schema:position 2 ; schema:name "SHACL Discovery Service" ; schema:url ; schema:description "Example implementation of a discovery service for SHACL shapes/shape groups; MIT license; PHP." ; ], [ schema:position 3 ; schema:name "Shapes of You index" ; schema:url ; schema:description "SPARQL queries, OWL/SKOS vocabularies, SHACL/ShEx shapes, indexed from public git repositories; MIT license; Typescript, Python." ; ] ; ], [ schema:position 4 ; schema:name "Shapes Collections" ; schema:itemListElement [ schema:position 1 ; schema:name "schema.org Shapes" ; schema:url ; schema:description "Schema.org, converted to SHACL by TopQuadrant." ; ] ; ], [ schema:position 5 ; schema:name "Shape Conversion Tools" ; schema:itemListElement [ schema:position 1 ; schema:name "ShacShifter" ; schema:url ; schema:image ; ], [ schema:position 2 ; schema:name "SHACL To JSON Schema" ; schema:url ; schema:image ; ] ; ], [ schema:position 6 ; schema:name "Shape Generators" ; schema:itemListElement [ schema:position 1 ; schema:name "owl2shacl" ; schema:url ; schema:description "OWL-to-SHACL conversion rules." ; ] ; ], [ schema:position 7 ; schema:name "Shape-based Query Generators" ; schema:itemListElement [ schema:position 1 ; schema:name "shape-to-query" ; schema:url ; schema:image ; ] ; ], [ schema:position 8 ; schema:name "Shape Editors, Visualizations" ; schema:itemListElement [ schema:position 1 ; schema:name "Allotrope Shape Editor" ; schema:url ; schema:description "The Shape Editor supports editing of shacl and shaclc files; Apache-2.0 license; Java." ; ] ; ], [ schema:position 9 ; schema:name "Declarative UIs" ; schema:description "Data viewers/Editors based on shapes." ; schema:itemListElement [ schema:position 1 ; schema:name "shaperone" ; schema:url ; schema:image ; ] ; ], [ schema:position 10 ; schema:name "IDE support" ; schema:itemListElement [ schema:position 1 ; schema:name "Linked Data Extension" ; schema:url ; schema:description "VS Code Extension for editing RDF files with embedded SHACL validator and SPARQL engine." ; ], [ schema:position 2 ; schema:name "SHACL Language Server" ; schema:url ; schema:description "A VS Code extension providing language intelligence (diagnostics, hover tooltips, etc.) for SHACL." ; ], [ schema:position 3 ; schema:name "Mentor RDF for VS Code" ; schema:url ; schema:description "Code editing support for RDF, RDFS, OWL, SKOS, SHACL and SPARQL." ; ] ; ], [ schema:position 11 ; schema:name "Books" ; schema:itemListElement [ schema:position 1 ; schema:name "Validating RDF Data (2018)" ; schema:url ; schema:description "The SHACL and ShEx book." ; ] ; ], [ schema:position 12 ; schema:name "Tutorials" ; schema:itemListElement [ schema:position 1 ; schema:name "Shapes applications and tools: ISWC'20 Tutorial" ; schema:url ; schema:description "Main tutorial." ; ] ; ], [ schema:position 13 ; schema:name "Talks and Presentations" ; schema:itemListElement [ schema:position 1 ; schema:name "The Many Shapes of SHACL by Holger Knublauch" ; schema:url ; schema:description "LOTICO Talk, 18 Jun 2020." ; ], [ schema:position 2 ; schema:name "One Ontology, One Data Set, Multiple Shapes with SHACL by Tara Raafat" ; schema:url ; schema:description "Connected Data London, 2019." ; ], [ schema:position 3 ; schema:name "An Overview of SHACL Shapes Constraint Language: Part 2" ; schema:url ; schema:description "TopQuadrant, 2017." ; ], [ schema:position 4 ; schema:name "An Overview of SHACL Shapes Constraint Language" ; schema:url ; schema:description "TopQuadrant, 2017." ; ] ; ], [ schema:position 14 ; schema:name "Specifications" ; schema:itemListElement [ schema:position 1 ; schema:name "SHACL W3C Recommendations & Notes" ; schema:itemListElement [ schema:position 1 ; schema:name "Shapes Constraint Language (SHACL)" ; schema:url ; schema:description "W3C Recommendation, 20 July 2017." ; ], [ schema:position 2 ; schema:name "SHACL Advanced Features" ; schema:url ; schema:description "W3C Working Group Note, 08 June 2017." ; ], [ schema:position 3 ; schema:name "SHACL JavaScript Extensions" ; schema:url ; schema:description "W3C Working Group Note, 08 June 2017." ; ], [ schema:position 4 ; schema:name "SHACL Test Suite and Implementation Report" ; schema:url ; schema:description "W3C Document 01 July 2019." ; ], [ schema:position 5 ; schema:name "SHACL Use Cases and Requirements" ; schema:url ; schema:description "W3C Working Group Note 20 July 2017." ; ] ; ], [ schema:position 2 ; schema:name "SHACL Community Group Latest Drafts & Notes" ; schema:itemListElement [ schema:position 1 ; schema:name "SHACL 1.2 Core" ; schema:url ; ], [ schema:position 2 ; schema:name "SHACL 1.2 SPARQL Extensions" ; schema:url ; ], [ schema:position 3 ; schema:name "SHACL Advanced Features 1.1" ; schema:url ; ], [ schema:position 4 ; schema:name "SHACL Compact Syntax" ; schema:url ; ], [ schema:position 5 ; schema:name "SHACL JavaScript Extensions" ; schema:url ; ] ; ], [ schema:position 3 ; schema:name "SHACL-related specifications" ; schema:itemListElement [ schema:position 1 ; schema:name "The Shape Topologies algorithm" ; schema:url ; ], [ schema:position 2 ; schema:name "DASH Data Shapes" ; schema:url ; schema:description "Platform-independent extensions of SHACL for common tasks. Stuff that could become an official standard in the future." ; ] ; ], [ schema:position 4 ; schema:name "ShEx" ; schema:itemListElement [ schema:position 1 ; schema:name "Shape Expressions Language 2.1" ; schema:url ; schema:description "Final Community Group Report, 8 October 2019." ; ], [ schema:position 2 ; schema:name "ShEx Primer" ; schema:url ; schema:description "Draft Community Group Report, 7 December 2022." ; ], [ schema:position 3 ; schema:name "ShEx Text Suite" ; schema:url ; schema:description "Version next@1.0.2, last release 5 October 2018." ; ], [ schema:position 4 ; schema:name "Recommended Practice for Standard for Shape Expression Schemas" ; schema:url ; schema:description "IEEE Computer Society P3330/D3, Draft 9 October 2024. Next-version spec with EXTENDS keyword." ; ], [ schema:position 5 ; schema:name "ShEx Primer" ; schema:url ; schema:description "Primer with EXTENDS keyword, Draft Community Group Report 25 May 2022." ; ] ; ] ; ] . ```

or maybe represented as https://schema.org/SoftwareSourceCode / https://schema.org/CreativeWork with triples like:

https://schema.org/isAccessibleForFree and https://schema.org/dateModified ?