assemblee-virtuelle / assemblee-virtuelle/semapps
Data validation with ShEx and/or SHACL
- Dominant language
- TypeScript
- Stars
- 103
- Forks
- 14
- Avg merge
- 1m
- Merged PRs (30d)
- 2
Description
There are two standards to validate semantic data:
- [SHACL](https://www.w3.org/TR/shacl/)
- [ShEx](https://shex.io/)
Having read a full book on the subject, it appears ShEx is much more readable so I think we should implement this standard first, eventually adding support for SHACL later.
Proposed implementation:
- Allow to define a ShEx shape for each LDP container
- Create a `ShExMiddleware` for Moleculer, which validate resources posted or modified in this container
- If the validation fails, return directly a 400-type error
Reference JS library: https://github.com/shexjs/shex.js
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the linked ShEx and SHACL standards and the referenced shex.js library, then locate the LDP container handling and Moleculer middleware entry points. Done means containers can define ShEx shapes, modified or posted resources are validated, and failures return a 400-type error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100