Skip to content

Soil methods 2.1.0#23

Open
crakerb-ship-it wants to merge 8 commits intomainfrom
Soil-Methods-2.1.0
Open

Soil methods 2.1.0#23
crakerb-ship-it wants to merge 8 commits intomainfrom
Soil-Methods-2.1.0

Conversation

@crakerb-ship-it
Copy link
Copy Markdown
Contributor

Pull Request: Modus Soil Method List v2.0.3 → v2.1.0

Summary

This release converts the Modus Soil Method list from its v2.0.3 published state to v2.1.0. The primary change is a systematic harmonization of reporting units, method names, reagent notation, and controlled vocabulary across all soil, manure, and plant tissue methods. The list structure expands to carry both the legacy codes (now marked SUPERSEDED) alongside new CANDIDATE replacement codes to support a clean supersession chain for implementers.

Row counts:

Status v2.0.3 v2.1.0
VALID 673 263
CANDIDATE 410
SUPERSEDED 23 433
RETIRED 154 154
INVALID 16 22
Total 866 1,287

The reduction in VALID rows and growth in SUPERSEDED/CANDIDATE rows reflects the UoM harmonization described below — each affected row is superseded by a CANDIDATE replacement pending final code assignment by Agrisemantics.

The supersession table (Working file tab) now carries 1,855 SOIL entries

The published code suppression lookup file (Modus2 Soil Code Supersession.xlsx) has been updated in tandem — see Suppression File Updates below.


Changes by Category

1. Reporting Unit Harmonization — mg/kg and ppm → % (major change)

All active methods previously reporting in mg/kg or ppm have been superseded by CANDIDATE replacements using percent (%) as the reporting unit, with UoM Code prcnt, QUDT Code PERCENT, and QUDT URI http://qudt.org/vocab/unit/PERCENT.

410 VALID rows superseded; 410 CANDIDATE replacement rows added.

409 rows were mg/kg or ppm → %; one additional row (TN_004, nitrogen total via ion exchange resin) was converted from an imperial unit (lb/ac/day) to the SI equivalent.

Affected analytes (64 total): ACE nitrogen (soil protein index), aluminum, amino nitrogen, ammonium-nitrogen, antimony, arsenic, available water holding capacity, barium, beta-glucosidase, boron, cadmium, calcium, carbon, Carbon Mineralization Potential, cation exchange capacity, chloride, chromium, cobalt, copper, dissolved organic nitrogen (DON), iron, lead, lithium, magnesium, manganese, mercury, molybdenum, nickel, nitrate-nitrogen, nitrite-nitrogen, nitrogen mineralization rate, nitrogen total inorganic, particulate organic matter (53–2000 µm), permanganate-oxidizable carbon (POXC), pH, phosphate, phospholipid fatty acid (PLFA), phosphomonoesterase, phosphorus (and all phosphorus sub-analytes), potassium (and total potassium), potentially mineralizable nitrogen, selenium, silicon, silver, sodium, soluble salts, strontium, sulfate-sulfur, sulfur, tin, urea, water extractable nitrogen (WEN), water extractable organic nitrogen (WEON), water-soluble organic carbon (WSOC), zinc.

Each superseded code maps to its CANDIDATE replacement in the supersessions table with Change Reason: "Mass-per-mass/ppm harmonization to percent."

2. Analyte Name Correction — nitrogen, total kjeldahl → nitrogen, total

13 rows had the analyte name nitrogen, total kjeldahl corrected to nitrogen, total. Kjeldahl is the extraction method, not a property of the analyte itself. The Kjeldahl method name is retained in the Common Method Name column.

As part of this correction, TKN_001–007 were superseded by TN_006–011 (analyte code and name corrected, the new % CANDIDATE codes under the corrected TN analyte code prefix, Methods TKN_002 and TKN_005 removed as duplicates). The full supersession chain is recorded in the supersession table.

3. Method Name Standardization

Microwave digestion (205 rows): Method names normalized to a consistent form:

  • Microwave Digestion Open VesselMicrowave-Assisted Acid Digestion, Open Vessel
  • Microwave Digestion Closed VesselMicrowave-Assisted Acid Digestion, Closed Vessel
  • Related variants (Microwave Assisted, Microwave-Assisted Digestion, etc.) aligned to the same canonical form

Combustion methods (10 rows): Aligned to Dry Combustion; prior variants Combustion and Oxygen Combustion superseded.

Kjeldahl/wet digestion (3 rows): wet digestion - kjeldahlKjeldahl

Oven drying: Method name consolidated to Oven Drying; temperature and hold condition detail (e.g., 105 C, 105 C, constant weight) moved to the Extraction reagents/formulation column.

Muffle furnace: Casing and format aligned; temperature (550 C) retained in method name.

4. Instrument Clarification

ICP → ICP-OES (44 rows): Instrument field entries of ICP updated to ICP-OES where the specific technique was unambiguous.

Instrument separator standardized (201 rows): Multi-instrument entries using a slash separator (ICP-OES / AAS) changed to comma separator (ICP-OES, AAS) for consistency across matrices.

Instrument name fixes:

  • Infrared gas analyzer( IRGA)Infrared gas analyzer (IRGA) (12 rows, spacing)
  • Diff - Conductivity and Dif-Cond variants → Diffusion Conductivity (4 rows)
  • VisualObservation (2 rows, CV alignment)

5. Reagent/Formulation Notation

280 rows updated to standardize chemical notation in the Extraction reagents/formulation column:

  • Spelled-out reagent names replaced with standard abbreviations: e.g., Nitric acid, perchloric acidHNO3, HClO4; Sulfuric Acid Digest / CatalystH2SO4 / Catalyst
  • solution suffix dropped where redundant (e.g., KCl solutionKCl)
  • Hot modifier moved to parenthetical: e.g., Hot KClKCl (Hot)
  • Value–unit spacing normalized: e.g., 2M KCl2 M KCl
  • Water naming consolidated: DI water, distilled water, deionized waterDeionized Water
  • Oxygen symbol: OxygenO2

6. Bray P2 Extraction Time Correction

2 rows (Bray P1/P2 soil phosphorus methods): Extraction time corrected from 5 min to 15 min per the referenced method.

7. Controlled Vocabulary Alignment

All rows validated and corrected against approved CVs for:

  • Status: VALID, INVALID, RETIRED, SUPERSEDED, CANDIDATE
  • Acceptance: OFFICIAL, PROVISIONAL, EXPERIMENTAL, PROPRIETARY
  • Observation Category: MEASURED, CALCULATED, OBSERVED
  • Matrix: SOIL

Corrections included resolving CALULATED/CALULATIONCALCULATION, ActiveVALID, and several misclassified DUPLICATE entries resolved to RETIRED or CANDIDATE as appropriate.

8. NH4N Retirements

3 rows (NH4N_001, NH4N_003, NH4N_005): Retired. ISE-based ammonium methods without the required NaOH treatment step were removed from the active list; the correctly specified method (ISE + NaOH) is retained as VALID.

9. Timestamp Standardization

All Row Added Date and Row Changed Date values updated to ISO 8601 UTC noon format (YYYY-MM-DDT12:00:00Z).

10. QUDT URI and UoM Code Columns Added

UoM Code, QUDT Code, and QUDT URI columns added across all rows. Values sourced from the QUDT ontology (http://qudt.org/vocab/unit/).


Corrections to Existing Codes (v2.1.0 additional tweaks)

Duplicate code corrections

The following codes were identified as duplicates and corrected:

Code Analyte Previous Status New Status Notes
L_MODV2_SOIL_CAMGBS_001 base saturation - Ca:Mg VALID INVALID Duplicate of CAMGBS_002; superseded by CAMGBS_002
L_MODV2_SOIL_CAMGBS_002 base saturation - Ca:Mg INVALID VALID Correct entry
L_MODV2_SOIL_CAMGRATIO_001 Ca:Mg ratio RETIRED INVALID Duplicate code; replaced by CAMGRATIO_002/003/004
L_MODV2_SOIL_MNZNRATIO_001 Mn:Zn ratio RETIRED INVALID Duplicate code; replaced by MNZNRATIO_002/003

New RETIRED rows added for properly identified Ca:Mg ratio methods (CAMGRATIO_002, 003, 004) and Mn:Zn ratio methods (MNZNRATIO_002, 003).

PINDEX analyte correction

L_MODV2_SOIL_PINDEX_001 and PINDEX_002 had the analyte incorrectly recorded as potassium index. Corrected to phosphorus index. Measurement method, extraction basis, and UoM fields also corrected to reflect the calculated nature of this index. Both rows remain INVALID.

Analyte name refinements

  • potentially mineralizable nitrogenpotentially mineralizable nitrogen (PMN) for POTMN_002 and POTMN_003
  • total organic carbon:total nitrogentotal organic carbon: total nitrogen (spacing) for TOCTN_001

TDN supersession

L_MODV2_SOIL_TDN_001 (water extractable organic nitrogen, Slurry method, mg/kg) superseded under the UoM harmonization. CANDIDATE replacement pending code assignment.



Suppression File Updates

Modus2 Soil Code Supersession.xlsx updated from 612 entries to 1,031 entries.

Prior state: 589 V1→V2 mappings, 23 V2→V2 mappings (STCM→CMP renaming and TKN_001–007→TN_006–09 chain from a prior release).

  • 409 UoM-harmonization pairs: Each VALID mg/kg code superseded in this release maps to its CANDIDATE % replacement. Covers all 64 affected analytes.
  • 7 TKN analyte-code correction chain entries: TKN_008–014 → TN_006–009
  • 1 TIN UoM harmonization: TIN_001 (mg/kg) → TIN_002 (%).
  • 5 other V2→V2 corrections: CAMGBS_001 → CAMGBS_002 (duplicate correction), KNARATIO_001 → KNARATIO_003, PZNRATIO_001 → PZNRATIO_003 (invalid code redirections), and 2 additional V1 GWC codes (S-0.3BAR.14, S-15BAR.14) that were not previously in the file.

Historical corrections applied to existing entries:

  • 1 duplicate removed: S-K-W20:1.04 appeared twice with the same target (K_017); one copy deleted.
  • 3 invalid entries removed: The Working file Supersessions tab had placeholder entries for KMGBS_001 → KMGBS_003/004/005, but those target codes were never created in the Methods sheet (KMGBS_001 remains VALID). Entries removed.

Suppression chain notes:

  • V1 TIN code (S-TIN.19) resolves via: S-TIN.19 → TIN_001 → TIN_002.

Open Items

  • All CANDIDATE rows (410) have v2 codes assigned. Status remains CANDIDATE pending formal Agrisemantics review and promotion to VALID.
  • 182 rows across all methods are missing citation links and will be updated in a future release as reference PDFs are organized.
  • Calculation-based methods (66 rows) have Calculation in the Extraction Time field; this will be addressed in a separate review.
  • Several UoM's do not exist in QUDT, these will be updated from "Needs QUDT Discussion" to new UoM code once PR's are complete with QUDT.

@crakerb-ship-it crakerb-ship-it marked this pull request as ready for review April 5, 2026 14:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Cross matrix description alignment Align to QUDT UoM codes following ADAPT UoM consistency

1 participant