-
Notifications
You must be signed in to change notification settings - Fork 0
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
Instantiate less epo:agentInRole instances #31
Comments
We looked into this, and have found a solution to create AgentInRole (subclass) instances that are reused as values for different We tested this, and it seems to be working. However, as you can see, in such cases the URI generation pattern will become quite complex, and not very intuitive. It will not fall under any of the URI patterns that we have have used so far, and that we documented here. Describing this URI pattern in the documentation will be a challenge, and there is no guarantee that the reader will understand the logic and the need/benefit for why we complicate things. Please advise if we should go ahead and implement this solution, or not (i.e. keep the current simple but clear solution). |
That's great news!, Although the pattern might become more complex, it will result in a smaller, simpler graph that is easier to query and explore through applications. Regarding the documentation I propose we maintain the documentation for the general case, and write down a SHACL document that focuses solely in documenting how URIs are formed for exceptional cases. We can use this document to trace the rationale behind our URI choices.
In the future we can expand this documentation to include patterns for the important classes, and validate URIs. For example, this would document how the ex:Movie URI looks like:
In summary, let's adopt that URI pattern, and create a SHACL document that documents exceptions. Should we put this close to the documentation? |
Relates to special URI template for roles as implemented for gh-31.
Reflects changes in the versioned CN packages with the following commit log messages: Fix UNIX file permissions for CN CM, SHACL, data Fix IRI generation of all SubmissionTerm instances to collapse them Remove unneeded AwardCriterion file Remove some unneeded comments, add some cosmetic fixes Add more version clarifications Add BT-13716-notice ChangeInformation versioned mappings Fix gh-40 add CALENDAR_DAY to custom temporal_unit table Fix gh-31 undesired repeated role instantiation Fix gh-47 SelectionCriterion URI irrelevant name Fix gh-46 missing BT-52 hasSuccessiveReduction Fix gh-43 missing hasMainActivity for Buyer Fix gh-39 unconnected SubmissionTerm triples Fix or remove some unnecessary comments Additionally this commit also updates the CM for v1.9 to bring it up to parity with those of the other versioned packages (v1.3-1.8+1.10).
Reflects changes in the versioned CN packages with the following commit log messages: Fix UNIX file permissions for CN CM, SHACL, data Fix IRI generation of all SubmissionTerm instances to collapse them Remove unneeded AwardCriterion file Remove some unneeded comments, add some cosmetic fixes Add more version clarifications Add BT-13716-notice ChangeInformation versioned mappings Fix gh-40 add CALENDAR_DAY to custom temporal_unit table Fix gh-31 undesired repeated role instantiation Fix gh-47 SelectionCriterion URI irrelevant name Fix gh-46 missing BT-52 hasSuccessiveReduction Fix gh-43 missing hasMainActivity for Buyer Fix gh-39 unconnected SubmissionTerm triples Fix or remove some unnecessary comments Additionally this commit also updates the CM for v1.9 to bring it up to parity with those of the other versioned packages (v1.3-1.8+1.10).
Reflects changes in the versioned CN packages with the following commit log messages: Fix UNIX file permissions for CN CM, SHACL, data Fix IRI generation of all SubmissionTerm instances to collapse them Remove unneeded AwardCriterion file Remove some unneeded comments, add some cosmetic fixes Add more version clarifications Add BT-13716-notice ChangeInformation versioned mappings Fix gh-40 add CALENDAR_DAY to custom temporal_unit table Fix gh-31 undesired repeated role instantiation Fix gh-47 SelectionCriterion URI irrelevant name Fix gh-46 missing BT-52 hasSuccessiveReduction Fix gh-43 missing hasMainActivity for Buyer Fix gh-39 unconnected SubmissionTerm triples Fix or remove some unnecessary comments Additionally this commit also updates the CM for v1.9 to bring it up to parity with those of the other versioned packages (v1.3-1.8+1.10).
Reflects changes in the versioned CN packages with the following commit log messages: Fix UNIX file permissions for CN CM, SHACL, data Fix IRI generation of all SubmissionTerm instances to collapse them Remove unneeded AwardCriterion file Remove some unneeded comments, add some cosmetic fixes Add more version clarifications Add BT-13716-notice ChangeInformation versioned mappings Fix gh-40 add CALENDAR_DAY to custom temporal_unit table Fix gh-31 undesired repeated role instantiation Fix gh-47 SelectionCriterion URI irrelevant name Fix gh-46 missing BT-52 hasSuccessiveReduction Fix gh-43 missing hasMainActivity for Buyer Fix gh-39 unconnected SubmissionTerm triples Fix or remove some unnecessary comments Additionally this commit also updates the CM for v1.9 to bring it up to parity with those of the other versioned packages (v1.3-1.8+1.10).
When dealing with lots, we often encounter multiple
epo:agentInRole
instances for the same agent-role combination.An
epo:AgentInRole
is a construct that represents an Agent playing a role in the context of one or more elements.Instead of having:
We prefer:
This approach is simpler and aligns with the intended use of multiple
epo:contextualizedBy
target values. It is also potentially easier for end users to understand.Although the owl/shape does not explicitly restrict an agent from playing the same role multiple times, this is what was intended during modelling.
This can be implemented with another URI pattern choice, where the URI of agentInRole is a function of the agent URI and the role type (+uri placeholder where the role is played)
If there are nuances I don't see please comment.
The text was updated successfully, but these errors were encountered: