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

As a namespace steward, I want to provide a more specific definition/nuance for a generic attribute #469

Open
jordanpadams opened this issue Apr 25, 2022 · 5 comments

Comments

@jordanpadams
Copy link
Member

jordanpadams commented Apr 25, 2022

💪 Motivation

...so that I can give a mission- or discipline- specific definition for a particular cross-referenced/re-usable attribute.

Example 1: where a mission needs to provide a more specific definition for a generic Discipline Namespace attribute spacecraft_clock_start from the Mission Information Commons namespace

Example 2: a Discipline Namespace is looking to re-use a class and accompanying attributes from another namespace, how do I provide nuanced definitions for those classes and attributes.

📖 Additional Details

We need to document and create easy mechanisms to provide:

  1. More specific definitions within an IngestLDD when cross-referencing a class/attribute
  2. More specific definitions within a Mission Namespace to enable sufficient documentation within that namespace.

⚖️ Acceptance Criteria

Given
When I perform
Then I expect

⚙️ Engineering Details

@jordanpadams jordanpadams changed the title As a namespace developer, I want to provide a more specific definition/nuance for a generic attribute As a namespace steward, I want to provide a more specific definition/nuance for a generic attribute Apr 26, 2022
@jordanpadams jordanpadams removed the B13.0 label Feb 3, 2023
@github-project-automation github-project-automation bot moved this to Release Backlog in EN Portfolio Backlog Nov 20, 2023
@github-project-automation github-project-automation bot moved this to Release Backlog in B14.1 Dec 5, 2023
@jordanpadams
Copy link
Member Author

Related SCR: See https://github.com/NASA-PDS/PDS4-CCB/issues/12

@jordanpadams jordanpadams moved this from ToDo to 🧊 Icebox in EN Portfolio Backlog May 23, 2024
@jordanpadams jordanpadams moved this from 🧊 Icebox to ToDo in EN Portfolio Backlog May 23, 2024
@tloubrieu-jpl
Copy link
Member

New inputs from Bob Deen on that.

@jordanpadams jordanpadams removed this from B14.1 Jun 11, 2024
@github-project-automation github-project-automation bot moved this to Release Backlog in B15.0 Jun 11, 2024
@tloubrieu-jpl
Copy link
Member

@jshughes we need to better define an achievable scope for this ticket.

@jshughes
Copy link
Collaborator

jshughes commented Sep 2, 2024

@jordanpadams @tloubrieu-jpl @rsjoyner
Using GPT4o, we now have prototype code that reads and parses B. Deen's Nuance spreadsheet and writes a PDS4 <Term_Map_SKOS> to an XML file . This class contains a simple list of <Terminological_Entry_SKOS> class members. Each line of the spreadsheet generates one to six <Terminological_Entry_SKOS> entries, one for each nuance mapping to a single PDS4 attributes. The missions are currently CADRE, M20. MSAM, MSL, NSYT, and VGR. To make the XML file available to the system one possibility would be something like a Product_Ancillary / Stream_Text. However, "XML" is not currently allowed.

Comments and suggestions are welcome.

Example: The first line of the nuance spreadsheet produces the following xml. The nuance is COORDINATE_SYSTEM_INDEX. The PDS4 attribute is index_value_number.

    <Terminological_Entry_SKOS>
        <identifier>271b39f3-dfbd-4cd2-8a1b-54a385131b42</identifier>
        <registration_authority>PDS4</registration_authority>
        <namespace_id>geom</namespace_id>
        <steward_id>pds</steward_id>
        <title>COORDINATE_SYSTEM_INDEX</title>
        <description>null</description>
        <skos_relation_name>closeMatch</skos_relation_name>
        <model_object_id>index_value_number</model_object_id>
        <model_object_type>Nuance</model_object_type>
    </Terminological_Entry_SKOS>

@jordanpadams
Copy link
Member Author

@jshughes looks great! glad we have some code to generate something for us.

I assume all of this information is what is needed in order to capture this within the IM, but how can we abstract this away from the LDD stewards so they can provide this information within an IngestLDD?

I am thinking something like:

    <DD_Attribute>
        <name>geom.index_value_number</name>
        ...
        <DD_Attribute_SKOS>
            <title>COORDINATE_SYSTEM_INDEX</title>
            <skos_relation_name>closeMatch</skos_relation_name>
            <model_object_type>Nuance</model_object_type>
            <!-- etc -->
    </DD_Attribute>

Also, how can we add more information about the type of nuance? For instance, this is a "synonym" nuance where it is the VICAR keyword equivalent vs. a description nuance vs. a mission-specific enumeration (e.g. mission_phase_name values for a specific mission)?

@jordanpadams jordanpadams added B15.1 and removed B15.0 labels Sep 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: ToDo
Status: Release Backlog
Development

No branches or pull requests

3 participants