Summary
As a data user searching the PDS Registry API, I want to be able to query and filter on XML attribute values from PDS4 labels (e.g., xsi:nil="true", nilReason, unit, and other PDS4-defined attributes), so that search results can make use of all metadata present in a label — not just element text content.
Motivation
PDS4 labels encode metadata in both element text content and XML attributes. Harvest currently drops all XML attributes during indexing, so no attribute-based metadata is searchable. Examples of metadata lost today:
xsi:nil="true" / nilReason — no way to find products with nil field values or filter by nil reason.
unit on measurement elements — no way to search or filter by unit of measure.
- Any other PDS4 discipline or mission dictionary attributes on elements.
This gap affects data discoverability and correctness for search clients and downstream pipelines. It is directly relevant to the PDS4 CCB discussion in NASA-PDS/PDS4-CCB#95, but applies broadly beyond nil alone.
Proposed Solution
Once Harvest indexes XML attributes as companion fields (see companion issue NASA-PDS/registry-loader#92), the registry-api should:
- Expose XML attribute fields in the API response payload so clients can see them alongside element values.
- Support querying and filtering on attribute fields using the existing query syntax.
- Ensure nil state is clearly represented so clients can distinguish "nil by declaration" from "not present" or "empty".
The exact API query syntax and response representation should be determined during design.
Additional Context
🦄 Related requirements
NASA-PDS/registry-loader#92
For Internal Dev Team To Complete
⚙️ Engineering Details
To be completed by engineering team
🎉 Integration & Test
To be completed by engineering team
Summary
As a data user searching the PDS Registry API, I want to be able to query and filter on XML attribute values from PDS4 labels (e.g.,
xsi:nil="true",nilReason,unit, and other PDS4-defined attributes), so that search results can make use of all metadata present in a label — not just element text content.Motivation
PDS4 labels encode metadata in both element text content and XML attributes. Harvest currently drops all XML attributes during indexing, so no attribute-based metadata is searchable. Examples of metadata lost today:
xsi:nil="true"/nilReason— no way to find products with nil field values or filter by nil reason.uniton measurement elements — no way to search or filter by unit of measure.This gap affects data discoverability and correctness for search clients and downstream pipelines. It is directly relevant to the PDS4 CCB discussion in NASA-PDS/PDS4-CCB#95, but applies broadly beyond nil alone.
Proposed Solution
Once Harvest indexes XML attributes as companion fields (see companion issue NASA-PDS/registry-loader#92), the registry-api should:
The exact API query syntax and response representation should be determined during design.
Additional Context
🦄 Related requirements
NASA-PDS/registry-loader#92
For Internal Dev Team To Complete
⚙️ Engineering Details
To be completed by engineering team
🎉 Integration & Test
To be completed by engineering team