-
Notifications
You must be signed in to change notification settings - Fork 34
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
Issue 541: Add Event #542
Issue 541: Add Event #542
Conversation
Added new core:Event class with appropriate SHACL shapes Added new core:eventType property Added new core:eventContext property Added new core:eventAttribute property
This should have targeted |
@sbarnum , FYI - To prevent premature merges, PRs are left in Draft form until the passing Solutions Approval vote is logged. |
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 interpret an Event as something that expands and/or develops over time, a Perdurant. Furthermore, in the definition of the UcoObject I cannot find any reference to something that is not an Endurant.
In this interpretation we do realize, don't we, that by subclassing the Event from the UcoObject we cannot make a distinction anymore between Endurants and Perdurants, let alone make them disjoint?! In my professional opinion, such distinction is a necessary feature for an interoperability standard to provide.
As the ontologist in CDO, I don't approve of this design.
A simple resolution would be to subclass the Event from the UcoThing, like the UcoObject and UcoInherentCharacterizationThing, and make those three disjoint from each other.
Hmm. I definitely chose 'develop' as the target as I had to change it from the default of 'master'. |
To honor Alex's request to keep this level of discussion on the issue rather than the PR I will wait until Paul moves his comments over to the issue before responding there. |
Which I did, with appropriate apologies 😊 |
Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
References: * #541 Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
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.
My review remarks have been addressed.
@plbt5 , I am "Dismissing"---using the GitHub interface terminology---your blocking review on this PR, because:
So, for the sake of this PR, I believe your remarks have been sufficiently addressed. I'm merging the PR now in acknowledgement of the Solutions Approval vote having been logged. |
Review matters are addressed on corresponding Issue and Issue 544.
In an OWL-only sense, the ontology portion of this patch could have been accomplished by adding one triple to `action:Action`. For the sake of symmetry and explicitness, `core:Event` also picked up the `owl:disjointWith` statement. To satisfy OWL syntactic requirements, a stub reference to `action:Action` was added, as was done for `types:Dictionary` for Issue 541 (discussed in PR 542). To enforce disjointedness with SHACL, a new independent shape is added, `action:Action-disjointWith-Event-shape`. The shape is spelled using an anonymous node shape to avoid a multiple-inheritance issue: * SHACL syntactically requires the subject of a triple with `sh:not` as predicate be a blank node. * Separately, SHACL also only permits a shape to have up to one triple with `sh:not` as predicate. Hence, if the `action.ttl` file were included twice in some graph, SHACL-SHACL validation would fail, because the identically-written blank nodes that are `sh:not` objects would not resolve to the same node. Using an anonymous wrapping `sh:NodeShape` avoids this issue. (Multiple inheritance would now cause some redundant processing to occur, but SHACL-SHACL validation would pass.) A follow-on patch will regenerate Make-managed files. References: * #563 * #542 * https://www.w3.org/TR/shacl/#shacl-shacl Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
In an OWL-only sense, the ontology portion of this patch could have been accomplished by adding one triple to `action:Action`. For the sake of symmetry and explicitness, `core:Event` also picked up the `owl:disjointWith` statement. To satisfy OWL syntactic requirements, a stub reference to `action:Action` is added, as was done for `types:Dictionary` for Issue 541 (discussed in PR 542). To enforce disjointedness with SHACL, a new independent shape is added, `action:Action-disjointWith-Event-shape`. A follow-on patch will regenerate Make-managed files. EDIT 2023-11-22: An initial version of this patch included an inlined anonymous `sh:NodeShape`. I now believe the scenario that shape mitigates (multi-import of a shapes graph leading to SHACL-scoped syntax errors) is unlikely, and I also saw that the noted rationale around `sh:not` was confused with another predicate (`sh:inversePath`). References: * #563 * #542 Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
This Pull Request resolves all requirements of Issue #541 .
Coordination
develop
unstable
branch (fd8e56c
)unstable
branch tracking UCO'sunstable
as submodule (7adb16d
)