Consistency Review: Standardize column specifications for correction charges
Closed this issue · 1 comments
Documents:
- Spreadsheet: #547 Corrections
- Folder: #547 Corrections-handling (inside of Consistency Review / V1.1 folder)
- Issue: #547 Consistency Review: Standardize column specifications for correction charges
Description
Review and align how we specify Corrections across the specification. Address nullability and value ranges of metric columns.
1. Nullability
In the case of CommitmentDiscountQuantity, we specified the following:
… CommitmentDiscountQuantity MAY be negative if ChargeClass is "Correction"….
Meanwhile, for other columns (e.g., costs, quantities, units), we allowed null values for Corrections. For instance:
… It MUST NOT be null when ChargeClass is not "Correction"…
2. Value ranges of metric columns
While we were explicit in CommitmentDiscountQuantity about expecting positive values and allowing negative values for Corrections, we didn’t explicitly address negative values in other metric columns. (We assumed it was understood that quantities and costs can only be negative in the case of Correction charges and must be non-negative for non-Correction charges.)
Briefly discuss whether this should be applied consistently across the specification.
Proposed Approach
Standardize the specifications, i.e. allow nulls in the case of corrections for all columns except cost metrics, and explicitly define value ranges for all metrics, for the following columns:
- PricingUnit
- ConsumedUnit
- CommitmentDiscountUnit
- PricingQuantity
- ConsumedQuantity
- CommitmentDiscountQuantity
- ListCost
- ContractedCost
- ListUnitPrice
- ContractedUnitPrice
GitHub Issue or Reference
Issue #542
Context
No response
Data Submission for Discussion
No response
Action items from TF-1 call on Sep 24:
- [TF1-#547 ] Irena, @ijurica : Prepare a PR addressing corrections in metric columns, including standardizing null value handling, and submit it for review within 30 hours.
- [TF1-#547 ] Chris, @cnharris10 & Alex, @ahullah: Assist Irena in reviewing the proposed PR before the next members’ meeting.