NASA-PDS / pds4-information-model

The software tools and data necessary for generating the Information Model including PDS4 ontology, data, and information model.
https://nasa-pds.github.io/pds4-information-model/
Other
9 stars 6 forks source link

IMTool Refactoring - Phase 2 - Move deprecated values to Protege ontology file #428

Closed jshughes closed 2 years ago

jshughes commented 2 years ago

Phase 2 of Issue 306 - Refactor Class information from config to Data Dictionary - This phase focuses on moving deprecation information from the code to the Protege ontology. Also the version identifier for classes and attributes are being moved to the ontology file.

jpl-jengelke commented 2 years ago

@jshughes: Please provide a list of the deprecated values that should have been removed/changed per the spec of this ticket and #306. That information is unavailable as of now. Thank you.

viviant100 commented 2 years ago

@jpl-jengelke we went over the latest spec (v1.8) at last meeting:

jshughes commented 2 years ago

@jpl-jengelke The list of deprecated values did not change. The list was simply integrated into the ontology through the addition of the isDeprecated flag. Each class, attribute, and permissible value definition now includes the isDeprecated flag. This flag is set to true or false accordingly. Testing that the number of deprecated values did not change could be difficult. One way would be to compare the number of deprecated values before the change, e.g., V1H00 against those after the change, e.g., V1I00. The deprecated value are listed in both the IM Spec and the Data DIctionary documents.

jpl-jengelke commented 2 years ago

Thanks. Basically, it appears the JSON file must be checked to verify the isDeprecated flag is set for the previously annotated deprecated items from the IM Spec/DD. Also, the schema file should report attribute '<attribute>' is deprecated for each deprecated item. As a sanity check the 1H00 spec should not show isDeprecated flags whereas the 1I00 spec should include those.

@jshughes Where may I find OWL or TTL files that indicate this change, should those files exist?

rchenatjpl commented 2 years ago

Hi, @jshughes , if we're testing this, what differences are we supposed to see, and in what file(s)? Thanks

jordanpadams commented 2 years ago

@rchenatjpl @jshughes @tloubrieu-jpl added the skip-i&t label. This is refactoring of code. If all regression tests pass, we are good

jpl-jengelke commented 2 years ago

The test for this has to look at the Protege ontology files:

  1. isDeprecated should be added to all the attributes in the file.
  2. Classes should be presented with isInactive and isDeprecated flags.

Files are named, dd11179_Gen_210503.pins and dd11179_Gen.pins but generally have the dd11179 value in their names.

jpl-jengelke commented 2 years ago

@jordanpadams How may I help recognize refactoring earlier in the process if there is no better way to test?

jordanpadams commented 2 years ago

@jpl-jengelke these should be tagged with task and skip-i&t labels, but looks like they were missed.

In general if it is not a bug and there are no success criteria, ask the dev team for more info