Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

implement semantic validation #4

Open
grindhold opened this issue Sep 24, 2016 · 5 comments
Open

implement semantic validation #4

grindhold opened this issue Sep 24, 2016 · 5 comments

Comments

@grindhold
Copy link
Member

No description provided.

@grindhold grindhold self-assigned this Sep 24, 2016
@grindhold grindhold added this to the 0.1 release milestone Sep 24, 2016
@akuckartz
Copy link

Please define "semantic validation".

@grindhold
Copy link
Member Author

grindhold commented Sep 24, 2016

checking if the values that are supplied actually make sense. for example:
if a OParl.System has a valid license, and a subordinated OParl.Paper has not, this is valid, because according to the spec the System-license applies to all its subordinates. The other way round it's also okay. But it's not okay if neither have a license.
Checking wheter there is a endDate that is older than the same objects startDate which is also pretty invalid - except when we want to cover time-travelling politicians in the future™.
Checking wheter the classification fields contain the values that are recommended in the spec.

I want three levels of violation

  • INFO -> something is valid by the spec but common sense says that there is something not cool here
  • WARNING -> something that has been recommended in the spec is missing
  • ERROR -> something violates the spec

I want some more sophisticated validation than what a simple library call to a JSONSchema library could do. Thus the split into syntactic checking and semantic validation. Ruling out common human mistakes.

@akuckartz
Copy link

Such constraints potentially can be specified using Shapes Constraint Language (SHACL). Further links at OpenGovLD/specs#137.

@grindhold
Copy link
Member Author

This sounds like linking against libxml2 which I'd prefer to avoid. I also don't really care about things that can "potentially" be specified at the moment. I rather care about things that have been specified. Such things are better discussed at OParl/spec, I presume.

@akuckartz
Copy link

Some of your own examples violate common sense but not necessarily the specification.

@eFrane eFrane modified the milestones: 0.1, 0.3 Nov 1, 2017
@eFrane eFrane added the backlog label Feb 7, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

3 participants