-
Notifications
You must be signed in to change notification settings - Fork 1
Implement Workflow Retrieval Phase Ruleset #51
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
base: develop
Are you sure you want to change the base?
Conversation
|
I've updated the Workflow Retrieval phase in the spreadsheet. We need to look at the downloaded Workflow RO-Crate, as well as the workflow retrieval object. The existence of this object is only a MAY - but we have a few SHOULD requirements to fulfil if it does exist. I can't see anything within this object which marks it specifically as the downloaded workflow ro-crate - so I think we will have to infer this from the 'sameAs' field. |
douglowe
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Partial review, sorry. I'll try to complete it later today.
rocrate_validator/profiles/five-safes-crate/may/14_workflow_retrieval_phase.ttl
Outdated
Show resolved
Hide resolved
rocrate_validator/profiles/five-safes-crate/may/14_workflow_retrieval_phase.ttl
Outdated
Show resolved
Hide resolved
| sh:minCount 1 ; | ||
| sh:maxCount 1 ; | ||
| sh:datatype xsd:string ; | ||
| sh:minLength 10 ; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think we should specific a minimum length for these strings.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The requirement is that the name MUST be a descriptive, human-readable summary of the download action. I totally agree that 10 characters (or any other number) for minimum length is arbitrary. On the other end this is a baseline rule encouraging users to insert meaningful names rather than, say "XY".
I think we should reach an agreement on this point (@elichad, @douglowe , @alexhambley @stain). Just as a reminder, a minimal length of 10 was already enforced for at least another phase that has been merge into dev.
rocrate_validator/profiles/five-safes-crate/must/14_workflow_retrieval_phase.ttl
Outdated
Show resolved
Hide resolved
rocrate_validator/profiles/five-safes-crate/should/14_workflow_retrieval_phase.ttl
Outdated
Show resolved
Hide resolved
rocrate_validator/profiles/five-safes-crate/should/14_workflow_retrieval_phase.ttl
Outdated
Show resolved
Hide resolved
douglowe
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm happy with this now - other than the minimum length of a string ;-) but we can cover that in the meeting now
|
I can rebase this though - so we don't have the merge conflicts |
cb6e783 to
b836a4b
Compare
…ting SHACL shapes based on redefined rules in excel file. (iii) Added tests to validate SHACL shapes.
b836a4b to
69584f0
Compare
…i) Existence of entity representing the downloaded workflow is now a MAY (before it was a SHOULD).
| ( | ||
| "The entity represented the downloaded workflow is not properly defined in the " | ||
| "RO-Crate and/or it is not referenced by `DownloadAction` --> `result`." | ||
| ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wonder if this is causing the errors for the CI/CD tests - which are complaining about not getting a string literal.
I would replace this code with:
expected_triggered_issues=[
"The entity represented the downloaded workflow is not properly defined in the "
+ "RO-Crate and/or it is not referenced by `DownloadAction` --> `result`."
]
This PR addresses #48.
Rules implemented (so far)
RootDataEntity-->mentionsSHOULD reference theDownloadActionentity, if this exists.DownloadAction-->nameMUST be a human-readable summary of the download action.DownloadActionMAY havestartTimeproperty if action begunDownloadAction-->startTimeMUST follow the RFC 3339 standardDownloadActionSHOULD haveendTimeproperty if action endedDownloadAction-->endTimeMUST follow the RFC 3339 standardDownloadActionSHOULD haveactionStatuspropertyDownloadAction-->actionStatusMUST one of the allowed valuesDownloadAction-->result(i) (ii)sameAsof the entity representing the downloaded workflow MUST point to the same entity asRootDataEntity-->mainEntity(ii)distributionMUST reference the same entity asDownloadAction-->object(ii)(i) The validator will fire up this rule as not met with a MAY whether the user has downloaded the workflow RO-Crate or nor, or whether the Workflow RO-Crate was downloaded in the current RO-Crate or outside of it.
Rules not yet implemented
The following rule was not implemented as a SHACL shape, as it is not clear how this would be done. Also, the rules that are logically subsequent to this one have been implemented assuming the Workflow RO-Crate has indeed been downloaded (this may need to be reconsidered @elichad , @douglowe , @alexhambley)