Closed siuc-nate closed 2 months ago
@excelsior @edgarf this impacts the Credential Finder and a publishing project happening now. The project is publishing ceterms:WorkRole links via ceasn:skillembodied, ceasn:abilityembodied, ceasn:knowledgembodied to ceasn:Competency and ceterms:WorkRole links via ceterms:hasTask to ceterms:Task.
@siuc-nate There is no such resource on production:
https://credentialengineregistry.org/envelopes/ce-b9d3dcf6-7df3-4c60-9586-632811e30915 https://credentialengineregistry.org/resources/ce-b9d3dcf6-7df3-4c60-9586-632811e30915
I couldn't find any publishing attempts in the logs, are you sure it was published in the first place?
However, the competency framework exists on sandbox, and its description set is present there.
My mistake, it is on sandbox.
However, the description set is missing connections coming from work roles and tasks:
For example: https://sandbox.credentialengineregistry.org/ce-registry/resources/ce-df599242-27ef-4a0c-bc33-f16ce2fb4f83 This work role references one of the competencies in that framework via the ceasn:skillEmbodied property.
Per our meeting, it looks like this is due to the range of the knowledge/skill/abilityEmbodied properties being xsd:anyURI and thus getting ignored by the description set precalculation code. The planned fix is to update the code to check the domain of URLs that are values for properties with a range of xsd:anyURI and, if they match the domain the registry software is running on (in whichever environment it is running), then treat them as resources (otherwise ignore them as it does today).
Somewhat related: https://github.com/CredentialEngine/Schema-Development/issues/812 https://github.com/CredentialEngine/Schema-Development/issues/822
@siuc-nate Unfortunately, the suggested approach is considerably slower than using the schemas only. Would it possible to change ceasn:skillEmbodied
's schema:rangeIncludes
to have actual domains instead of xsd:anyURI
?
Alternatively, can you provide the mappings you're interested in, so I can include them manually?
We've had an ongoing issue for this one where we've been discussing changing the ranges of those properties here: https://github.com/CredentialEngine/Schema-Development/issues/812
The relevant properties are:
And the range they would (should?) have would be ceasn:Competency
These paths have been added:
ceasn:CompetencyFramework < ceasn:isPartOf < ceasn:Competency > ceasn:abilityEmbodied > ceasn:Competency
ceasn:CompetencyFramework < ceasn:isPartOf < ceasn:Competency > ceasn:knowledgeEmbodied > ceasn:Competency
ceasn:CompetencyFramework < ceasn:isPartOf < ceasn:Competency > ceasn:skillEmbodied > ceasn:Competency
The missing description sets are available on sandbox now, not on production yet. Is there anything else that should be added?
We also need similar paths with the following starting points:
e.g.:
> ceasn:abilityEmbodied > ceasn:Competency
> ceasn:abilityEmbodied > ceasn:Competency > ceasn:isPartOf > ceasn:CompetencyFramework
> ceasn:abilityEmbodied > ceasn:Competency > ceasn:isMemberOf > ceterms:Collection
> ceasn:abilityEmbodied > ceasn:Competency < ceterms:hasMember < ceterms:Collection
> ceasn:abilityEmbodied > ceasn:Competency < ceterms:proxyFor < ceterms:hasMember < ceterms:Collection
If I query for work roles for the above framework, I get back results.
However, the description set for the framework does not contain these work roles.
{
"@type": "ceterms:WorkRole",
"ceasn:skillEmbodied": {
"ceasn:isPartOf": {
"ceterms:ctid": "ce-b9d3dcf6-7df3-4c60-9586-632811e30915"
}
}
}
@siuc-nate The missing description set were regenerated on both production and sandbox.
Thanks. I see the work roles in the description set now.
This competency framework is missing a description set: ce-b9d3dcf6-7df3-4c60-9586-632811e30915