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

published cubes don't pass validation for schema:publisher, schema:creator nor schema:contributor #1501

Open
1 task
Rdataflow opened this issue Apr 15, 2024 · 7 comments
Assignees
Labels
🐛 bug Something isn't working
Milestone

Comments

@Rdataflow
Copy link
Contributor

published cubes don't pass validation for schema:publisher, schema:creator nor schema:contributor applied by https://github.com/zazuko/cube-link/blob/main/validation/standalone-cube-constraint.ttl

Describe the bug

To Reproduce
Steps to reproduce the behavior:

npx barnard59 cube fetch-metadata --cube https://environment.ld.admin.ch/foen/besch_holz_inst_einheit_weniger4/20 --endpoint https://int.lindas.admin.ch/query | npx barnard59 cube check-metadata --profile https://cube.link/latest/shape/profile-visualize | npx barnard59 shacl report-summary

Observed Violation
Violation of MinCountConstraintComponent: "cube:Cube needs an schema:publisher" with path http://schema.org/publisher at focus node https://environment.ld.admin.ch/foen/besch_holz_inst_einheit_weniger4/20 (source: _:b88_b697)
Violation of MinCountConstraintComponent: "cube:Cube needs an schema:creator" with path http://schema.org/creator at focus node https://environment.ld.admin.ch/foen/besch_holz_inst_einheit_weniger4/20 (source: _:b88_b698)
Violation of MinCountConstraintComponent: "cube:Cube needs an schema:contributor" with path http://schema.org/contributor at focus node https://environment.ld.admin.ch/foen/besch_holz_inst_einheit_weniger4/20 (source: _:b88_b706)

Expected behavior
no violations

cc @ClaudioDiGallo

@Rdataflow Rdataflow added the 🐛 bug Something isn't working label Apr 15, 2024
@Rdataflow
Copy link
Contributor Author

@giacomociti considering

I'd temporarily skip theese 3 predicates by commenting them rather than enforcing them until further clarification

cc @CDiGallo feel free to add your remarks and guidance

@CDiGallo
Copy link
Contributor

CDiGallo commented Apr 16, 2024

Hi
Can we not just decide that we want it and add it as a warning?
So we do not forget.
Also: We propose it here as "optional" -> https://gitlab.ldbar.ch/BAR/governance/-/issues/22

@Rdataflow

@CDiGallo
Copy link
Contributor

or +1 what thomas said

@Rdataflow
Copy link
Contributor Author

whichever @CDiGallo prefers.
nb: @CDiGallo we need to keep in mind the condition in opendata-swiss profile as well
https://github.com/zazuko/cube-link/blob/a9cb254ef6ddaebfdb41aa4261b020cc40e97c67/validation/profile-opendataswiss.ttl#L25-L41
that validation there would fail with the current profile for being Literal while IRI or Blank would be accpepted

@tpluscode tpluscode moved this from Needs triage to Todo (max 9) in Cube Creator Development Apr 17, 2024
@tpluscode tpluscode moved this from Todo (max 9) to Needs triage in Cube Creator Development Apr 17, 2024
@tpluscode tpluscode moved this from Needs triage to Backlog in Cube Creator Development Apr 17, 2024
@tpluscode tpluscode moved this from Backlog to Todo (max 9) in Cube Creator Development Apr 26, 2024
@tpluscode tpluscode added this to the s5.9 milestone May 14, 2024
@giacomociti
Copy link
Contributor

not sure what is the chosen solution then

@giacomociti
Copy link
Contributor

I recap my understanding of the issue:

before publishing a cube, CC checks it with standalone-constraint-constraint (sh:targetClass cube:Constraint)

The online cube validator instead checks cubes with either standalone-cube-constraint, profile-opendataswiss or profile-visualize. Each of these profiles imports standalone-constraint-constraint and adds more shapes:

standalone-cube-constraint adds a shape (sh:targetClass cube:Cube) requiring an IRI value for schema:publisher, schema:creator and schema:contributor.

profile-opendataswiss adds a shape (sh:targetClass dcat:Dataset) requiring dcterms:publisher (IRI or blank foaf:Organization)

profile-visualize additional shapes don't require (yet) any publisher, creator, or contributor.

The problem is that cubes created with CC lack such properties. CC optionally allows setting dcterms:publisher (literal) and dcterms:creator (IRI)

My understanding is that, as a short-term solution, we can treat the missing properties as warnings. Later on, we can enhance CC. But if my understanding is correct, the changes should be applied to standalone-cube-constraint in the cube.link repo.

@giacomociti
Copy link
Contributor

so I changed the severity in cube schema, see it in cube validator

@tpluscode tpluscode moved this from Todo (max 9) to In Progress (max 3) in Cube Creator Development Jun 18, 2024
@tpluscode tpluscode moved this from In Progress (max 3) to Deployed on TEST in Cube Creator Development Jun 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🐛 bug Something isn't working
Projects
Status: Deployed on TEST
Development

No branches or pull requests

4 participants