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-proc] Add units to `Parameter` class' `value` attribute #260

Open cgobat opened 1 year ago

cgobat commented 1 year ago

Issue Type Enhancement suggestion

Describe the issue identified The value attribute under the Parameter class is just a simple pds.value type, so it cannot take units. However, oftentimes software parameter values do have units that might be important to specify.

Describe the solution you'd like Define a proc:value attribute that is independent of the pds.value type definition, and use it in Parameter instead, which would enable something like the following:

<proc:Processing_Information>
  ...
  <proc:Process>
    <proc:name>my process name</proc:name>
    <proc:process_owner_name>me</proc:process_owner_name>
    <proc:process_owner_institution_name>my institution</proc:process_owner_institution_name>
    <proc:Software>
      <proc:software_id>my_pixel_scale_calculator</proc:software_id>
      <proc:software_version_id>0.0</proc:software_version_id>
      <proc:Software_Program>
        <proc:Software_Program_Parameters>
          <proc:Parameter>
            <proc:name>my instrument's focal length</proc:name>
            <proc:parameter_type>Input</proc:parameter_type>
            <proc:value unit="mm">1000.0</proc:value>
          </proc:Parameter>
          <proc:Parameter>
            <proc:name>my camera's pixel size</proc:name>
            <proc:parameter_type>Input</proc:parameter_type>
            <proc:value unit="micrometer">4.848</proc:value>
          </proc:Parameter>
          <proc:Parameter>
            <proc:name>my pixel scale</proc:name>
            <proc:parameter_type>Output</proc:parameter_type>
            <proc:value unit="pixel/deg">3600</proc:value>
          </proc:Parameter>
          ...
        </proc:Software_Program_Parameters>
      </proc:Software_Program>
    </proc:Software>
  </proc:Process>
  ...
</proc:Processing_Information>

Describe alternatives you've considered The alternative is to simply omit units from values that should have them.

LDD Dictionary Version N/A

PDS4 IM Version N/A