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

Removal of errant concept owl:ontologyIRI #491

Closed
11 tasks done
ajnelson-nist opened this issue Oct 20, 2022 · 2 comments · Fixed by #492
Closed
11 tasks done

Removal of errant concept owl:ontologyIRI #491

ajnelson-nist opened this issue Oct 20, 2022 · 2 comments · Fixed by #492
Labels
Milestone

Comments

@ajnelson-nist
Copy link
Contributor

ajnelson-nist commented Oct 20, 2022

Background

Issue 488 noted that a non-existent OWL concept was introduced. This came in during implementation of the UCO shapes-based OWL review mechanism of Issue 437.

This Issue is a bug fix, in terms of semantic impact to UCO. There is no negative semantic impact, and an error found when using UCO's OWL shapes to review any non-UCO ontology using owl:versionIRI is fixed. However, it is being posted for discussion and a fast-track vote due to a non-trivial revision to the tests around owl:imports and owl:incompatibleWith.

This Issue also happens to be a discussion starter for how to handle deprecating concept IRIs, as some of the shapes defined to review owl:ontologyIRI are now moot.

Requirements

Requirement 1

All IRI-structured references to owl:ontologyIRI need to be stricken from UCO and its tests.

Requirement 2

Concepts that are reduced to "Stub" concepts, not intended for users to encounter or use, must remain in UCO until at least the next major version.

Aside: An expected discussion point - should deprecated concept IRIs always be removed in the next major version, or the following major version? I.e. 2.0.0 or 3.0.0 here? Or, should they be retained forever?

Risk / Benefit analysis

Benefits

  • Fixes a bug based on an errant concept.
  • Removes errant complaints against all other ontologies using owl:versionIRI.

Risks

  • Tests exercising the non-concept owl:ontologyIRI require significant revision to meet the same objectives indicated from the OWL specifications.

Competencies demonstrated

Competency 1

owl:imports can import ontologies either by their ontology IRI, or their owl:versionIRI value. Similarly, owl:incompatibleWith can designate incompatibilities by ontology IRI or owl:versionIRI value. Incompatibility warnings should be raised whenever an owl:Ontology is recognized either by a node's rdf:type designation or being the subject of a owl:versionIRI triple, where the object of that triple is a noted incompatibility anywhere in the graph.

Competency Question 1.1

What owl:imports incompatibity patterns are tested now?

Result 1.1

See this figure (probably best-viewed downloaded and un-zoomed), an illustration of owl_incompatibleWith_shape_PASS.ttl in the linked Pull Request:

owl_incompatibleWith_shape_PASS

Roughly each graph, except for two of them, introduces a test complication over the just-prior graph when viewing from left to right. Colors indicate: red for incompatibility designations, and gray for version-related concepts.

Examples 1 and 6 are expected to not trigger any import-incompatibility warnings. Each other graph in that illustration is expected to trigger a warning. These expectations are encoded in a unit test under tests/shapes/examples_uco_owl/.

The figure was generated by import_closure.py, provided in the CASE-Examples-QC repository.

Solution suggestion

  • Strike all references to owl:ontologyIRI from uco-owl shapes.
  • Strike all references to owl:ontologyIRI from each UCO ontology file.
  • For any shapes rendered wholly moot by removal of owl:ontologyIRI, retain their IRIs, but:
    • Reduce their type to sh:Shape (instead of sh:NodeShape or sh:PropertyShape);
    • Comment they are deprecated;
    • Comment they will be removed in UCO 2.0.0. (Or, if the OC prefers, UCO 3.0.0.)
  • Re-construct OWL incompatibleWith test cases using a more methodical pattern, spelling nodes by grouping. (This is what's illustrated under competency question result 1.1.)
  • Make other revisions to uco-owl unit tests necessary to accommodate the ontology IRI being what owl:ontologyIRI errantly tried to represent.

Coordination

  • Tracking in Jira ticket OC-275
  • Administrative review completed, proposal announced to Ontology Committees (OCs) on 2022-10-26
  • Solution announced to OCs on 2022-10-26
  • Decision recorded on whether concept IRIs should be deleted in some next major version
  • Solutions Approval to be discussed in OC meeting, 2022-11-17
  • Solutions Approval vote occurred, passing, on 2022-11-17
  • Solutions development phase completed.
  • UCO implementation merged into develop
  • CASE implementation merged into develop
  • Milestone linked
  • Documentation logged in pending UCO release page
  • Documentation logged in pending CASE release page
@ajnelson-nist ajnelson-nist added this to the UCO 1.0.1 milestone Oct 20, 2022
ajnelson-nist added a commit that referenced this issue Oct 20, 2022
This patch cuts the reference to the non-existent concept ontologyIRI.
It is part of a larger patch series excising this concept, and is
separated out to lighten later patch review.

A follow-on patch will regenerate Make-managed files.

References:
* #491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
ajnelson-nist added a commit that referenced this issue Oct 20, 2022
References:
* #491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
ajnelson-nist added a commit that referenced this issue Oct 20, 2022
No effects were observed on Make-managed files.

References:
* #491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
ajnelson-nist added a commit that referenced this issue Oct 20, 2022
No other effects were observed on Make-managed files.

References:
* #491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
ajnelson-nist added a commit that referenced this issue Oct 20, 2022
No effects were observed on Make-managed files.

References:
* #491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
ajnelson-nist added a commit that referenced this issue Oct 20, 2022
This patch revises shapes, ontologies, and tests so CI should not have
an interruption in passing.

A follow-on patch will regenerate Make-managed files.

References:
* #491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
ajnelson-nist added a commit that referenced this issue Oct 20, 2022
References:
* #491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
ajnelson-nist added a commit that referenced this issue Oct 20, 2022
This patch revises shapes, ontologies, and tests so CI should not have
an interruption in passing.

A follow-on patch will regenerate Make-managed files.

References:
* #491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
ajnelson-nist added a commit that referenced this issue Oct 20, 2022
References:
* #491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
@ajnelson-nist ajnelson-nist linked a pull request Oct 20, 2022 that will close this issue
11 tasks
ajnelson-nist added a commit to casework/CASE that referenced this issue Oct 21, 2022
No effects were observed on Make-managed files.

This patch is done separately from removal of owl:ontologyIRI to show
that the tests have no negative impact when the (nonexistent) concept is
used in CASE.

References:
* ucoProject/UCO#491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
ajnelson-nist added a commit to casework/CASE that referenced this issue Oct 26, 2022
No effects were observed on Make-managed files.

References:
* ucoProject/UCO#491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
ajnelson-nist added a commit to casework/CASE-Examples that referenced this issue Nov 3, 2022
No effects were observed on Make-managed files.

References:
* ucoProject/UCO#491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
ajnelson-nist added a commit to casework/casework.github.io that referenced this issue Nov 3, 2022
A follow-on patch will regenerate Make-managed files.

References:
* ucoProject/UCO#491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
ajnelson-nist added a commit to casework/casework.github.io that referenced this issue Nov 3, 2022
References:
* ucoProject/UCO#491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
@ajnelson-nist
Copy link
Contributor Author

For THIS proposal, we will erase the IRIs for the ontology IRI tests.

ajnelson-nist added a commit that referenced this issue Nov 17, 2022
Per Ontology Committees meeting, 2022-11-17.  The shape
`uco-owl:ontologyIRI-nodeKind-shape` will never be satisfiable, and the
shape has not been deployed via the documentation site, so those present
decided this was safe to delete.

These shapes are not enforceable with an ontology mechanism with UCO's
current implementation language. They would have to be enforced by some
downstream tool (such as a SHACL validator that loads and compares
isolated graphs' ontology declarations), or by UCO switching to being a
quads-based ontology rather than triples.

* `uco-owl:ontologyIRI-ontology-uniqueness-shape`
* `uco-owl:ontologyIRI-versionIRI-uniqueness-shape`

References:
* #491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
@ajnelson-nist
Copy link
Contributor Author

During this morning's meeting, the rationales for deleting the deprecated IRIs in this PR were:

  • These IRIs do not pertain to OWL classes. They are instead shapes scoped to tests that turned out to be impossible to satisfy while UCO is a triples-based ontology.
  • The errant shapes have not been deployed to the documentation site. (Which, yes, is an issue that still has the maintainers' attention.)

With likelihood-near-0 of a UCO consumer to ever be affected by deleting these shapes, this commit deletes them rather than deprecating them.

ajnelson-nist added a commit to casework/CASE that referenced this issue Nov 18, 2022
References:
* ucoProject/UCO#491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
ajnelson-nist added a commit to casework/CASE-Corpora that referenced this issue Dec 9, 2022
A follow-on patch will regenerate Make-managed files.

References:
* ucoProject/UCO#491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
ajnelson-nist added a commit to casework/CASE-Corpora that referenced this issue Dec 9, 2022
References:
* ucoProject/UCO#491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
ajnelson-nist added a commit to casework/CASE-Corpora that referenced this issue Feb 10, 2023
As part of testing UCO Issue 491, I had developed a script to visualize
the transitive closure `owl:imports`.  The script resided in the
CASE-Examples-QC repository for reference, but was not operationalized.
Part of the documentation for CASE-Corpora is set to include a
visualization of the transitive closure of its various SHACL shape
graphs and upstream ontologies, so this patch migrates the script.

This file was migrated from the CASE-Examples-QC repository, commit:
de5d00d6933ed92309323a04f0d6b8f432715a63

References:
* https://github.com/ajnelson-nist/CASE-Examples-QC/
* ucoProject/UCO#491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
ajnelson-nist added a commit to fabrizio-turchi/CASE-Mapping-Python that referenced this issue Apr 19, 2024
No effects were observed on Make-managed files.

References:
* ucoProject/UCO#491

Signed-off-by: Alex Nelson <alexander.nelson@nist.gov>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant