No description
  • JavaScript 99.5%
  • HTML 0.5%
Find a file
Stephan Heunis f270305312 fix objectKeysToNull is not defined issue, and update tests
This issue was not picked up in testing, so extra tests were added to test
the 'clearSubject' function, which calls objectKeysToNull. A test for
removeSubject was also missing, and added here.
2025-05-19 16:24:43 +02:00
.github/workflows add github action workflow that runs tests on merge to main and PRs 2025-03-11 00:19:47 +01:00
public/tests v0.0.1 of source code and tests for shacl-tulip 2025-03-10 23:32:43 +01:00
src fix objectKeysToNull is not defined issue, and update tests 2025-05-19 16:24:43 +02:00
tests fix objectKeysToNull is not defined issue, and update tests 2025-05-19 16:24:43 +02:00
.gitignore v0.0.1 of source code and tests for shacl-tulip 2025-03-10 23:32:43 +01:00
index.html v0.0.1 of source code and tests for shacl-tulip 2025-03-10 23:32:43 +01:00
LICENSE adds license and elementary readme 2025-03-11 00:11:52 +01:00
package-lock.json Get ready for publishing 2025-04-10 09:57:35 +02:00
package.json Updates error handling and request responses 2025-04-29 16:53:38 +02:00
README.md Add funding acknowledgements to README 2025-04-23 09:56:51 +02:00
vite.config.mjs config cleanup 2025-03-11 00:42:02 +01:00

shacl-tulip

Like "shacl-vue-lib".

This is the main library behind shacl-vue.

Usage

Install from npm

npm install shacl-tulip

Install from latest source code

Clone the source code:

git clone https://github.com/psychoinformatics-de/shacl-tulip.git <path>

Install the library into your virtual environment and project:

npm install --save <path>

Using shacl-tulip

Import and use shacl-tulip in your JavaScript code, for example:

import { ShapesDataset} from 'shacl-tulip'

let shapesDS = new ShapesDataset();
const fileUrl = 'https://concepts.datalad.org/s/things/v1.shacl.ttl';
// Listen for and act on the 'graphLoaded' event
shapesDS.addEventListener('graphLoaded', (event) => {
    console.log('Shapes graph fully loaded:', event.detail)
    console.log(shapesDS.data.propertyGroups)
    console.log(shapesDS.data.nodeShapes)
    console.log(shapesDS.data.nodeShapeNames)
    console.log(shapesDS.data.nodeShapeNamesArray)
    console.log(shapesDS.data.nodeShapeIRIs)
    console.log(shapesDS.data.prefixes)
    console.log(shapesDS.data.serializedGraph)
    console.log(shapesDS.data.graphLoaded)
    console.log(shapesDS.data.prefixesLoaded)
    console.log(shapesDS.data.graph)
    console.log(shapesDS.data.graph.size)
});
// Load the RDF
shapesDS.loadRDF(fileUrl);

See here for all shacl-tulip exports, and inspect the class code for class-specific functionality.

Acknowledgements

This work was funded, in part, by

  • Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) under grant TRR 379 (546006540, Q02 project)
  • Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) under grant SFB 1451 (431549029, INF project)
  • MKW-NRW: Ministerium für Kultur und Wissenschaft des Landes Nordrhein-Westfalen under the Kooperationsplattformen 2022 program, grant number: KP22-106A