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-rings] Create class for attributes that are not currently members of any class #267

Open matthewtiscareno opened 7 months ago

matthewtiscareno commented 7 months ago

Issue Type Enhancement

Describe the issue identified (if applicable) Some attributes are not currently members of any class. These are used as column headers in data products, but not in labels.

Describe the solution you'd like Create a Column_Headers class, gather into it those attributes that are not otherwise in a class.

Describe alternatives you've considered The status quo is an alternative. The only problem with the status quo is that a Warning is created for attributes that are not members of a class.

matthewtiscareno commented 7 months ago

One concern about the proposed solution is that, if the proposed class consisted simply of attributes that are not members of any other class, then users might conclude that attributes that are not in the proposed class cannot be used as column headers, which is not necessarily true.

Conversely, if we tried to maintain all possible column headers as members of this class, regardless of whether they are also members of another class, that would be an unreasonable burden on the steward.

mit3ch commented 7 months ago

It has been a while, but as I recall, the reason Jordan proposed the class was to provide a hook to enable the registry to be able to incorporate the metadata in our metadata files. He couldn’t make it work with column names that were ‘naked’ attributes.

mit3ch commented 3 weeks ago

I'd prefer to see this as "Create a class for all rings attributes which are used as table column headers".

The purpose of this class is to provide a home for column headers, not just orphans; although, I believe I all of the current set of orphans are column headers, the set of orphans may not constitute a comprehensive set of column headers.

At a minimum this class would include all attributes that are not currently members of any class, having first verified that each is at least a creditable potential column header. (It's possible that one or more may not meet that criteria, and should be removed.)

matthewtiscareno commented 3 weeks ago

@mit3ch: My concern with this approach is that it creates an obligation for future stewards to always remember to put an attribute into that class if it might ever be used as a column header.

My preference would be not to create that expectation, but let's discuss on our next telecon.