pds-data-dictionaries / PDS4-LDD-Issue-Repo

Issue repository for tracking all PDS4 Discipline Dictionary-related issues, new feature requests, and releases.
Apache License 2.0
2 stars 1 forks source link

[ldd-clps] Repeated metadata across dictionaries #281

Open rgdeen opened 6 months ago

rgdeen commented 6 months ago

The CLPS dictionary contains several attributes, such as mission_phase_name and various forms of spacecraft_clock, that are already in the Mission (msn:) discipline dictionary. This effectively prevents search tools from presenting these multimission concepts to the user and breaks best-practices for data mining. The msn: dictionary should be used instead for these items.

It is possible, and a good idea, for the CLPS LDD schematron to limit the valid values of e.g. msn:mission_phase_name for CLPS. This is legal, and anticipated by the PDS IM design. So you can get full validation of CLPS-specific values here without repeating the keywords.

With a separate set of attributes, multimission search tools cannot present common concepts such as these to the user in a unified way, which will reduce user functionality and increase confusion. From a user standpoint, you want to search on "mission phase name". The specific values for each mission do not matter at this level, and it is not hard to mine the data for all available values to populate a pick list. Users will be confused if presented with mission phase name in both the MSN and CLPS dictionaries (and potentially dozens of others). Which do they use? Ideally the search tool would unify these fields. But that is not scalable. If every mission redefines these concepts, how are tools supposed to know that these are in fact the same concept? They cannot, in any kind of general way.

A foundational point of the PDS IM is to facilitate sharing of attributes like this across domains (ask Steve Hughes). The definitions do not have to be identical - there are methods to specify definition "nuances" for each mission that are extensively used by the Mars surface missions. The fact that the concept is the same means the attribute (or class) should be shared.

I would like to hear what the perceived advantages of a separate attribute are in cases like this... I certainly see none, so please enlighten me. Thanks.