# Development

**URL:** https://odm.discourse.group/c/development/12.md

[Latest](https://odm.discourse.group/latest.md) · [Categories](https://odm.discourse.group/categories.md) · [Tags](https://odm.discourse.group/tags.md)

---

## [About the Development category](https://odm.discourse.group/t/about-the-development-category/87)

<div class="topic-metadata">

**Author:** [@dmanuel](https://odm.discourse.group/u/dmanuel)\
**Replies:** 0

</div>

Welcome to the discussion about new ODM versions. Version 2 is currently in Release Candidate 2. Use the #V2-RC2 tag to discuss the RC2.

---

## [Version 3 Ultra-Minimal Structure and Template](https://odm.discourse.group/t/version-3-ultra-minimal-structure-and-template/185)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 13\
**Last updated:** [October 16, 2026, 1:50pm UTC](https://odm.discourse.group/t/version-3-ultra-minimal-structure-and-template/185 "2026-10-16T13:50:04Z")

</div>

For the launch of version 3 of the ODM, we are planning on also launching an ultra-minimal structure and template. The goal for this is to cut away everything that’s not essential so that users can get started in under a…

---

## [Dealing with multiple values when mapping from multivalued source to singlevalued ODM column](https://odm.discourse.group/t/dealing-with-multiple-values-when-mapping-from-multivalued-source-to-singlevalued-odm-column/181)

<div class="topic-metadata">

**Author:** [@martinwellman](https://odm.discourse.group/u/martinwellman)\
**Replies:** 1\
**Last updated:** [October 8, 2026, 2:48pm UTC](https://odm.discourse.group/t/dealing-with-multiple-values-when-mapping-from-multivalued-source-to-singlevalued-odm-column/181 "2026-10-08T14:48:18Z")

</div>

When mapping from a source dataset to ODM there is often a case where the source dataset has a multivalued slot that we map to a singlevalued ODM slot. For example, when mapping from PHA4GE to ODM v2/v3, we map from “env…

---

## [New Parts Needed to Monitor for 'Hantavirus'?](https://odm.discourse.group/t/new-parts-needed-to-monitor-for-hantavirus/187)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 1\
**Last updated:** [July 7, 2026, 4:56pm UTC](https://odm.discourse.group/t/new-parts-needed-to-monitor-for-hantavirus/187 "2026-07-07T16:56:35Z")

</div>

As linked in this new GitHub Issue, we’re wondering if there are users who are performing this kind of surveillance, and if so what kind of targets/parts would need to be added to support this? We’re keen to add function…

---

## [Ontology references in ODM](https://odm.discourse.group/t/ontology-references-in-odm/196)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 0\
**Last updated:** [June 30, 2026, 10:19pm UTC](https://odm.discourse.group/t/ontology-references-in-odm/196 "2026-06-30T22:19:33Z")

</div>

We have had some succession using the PHES-ODM Search Model Context Protocol (MCP) and the ontology mapping tool that @dmanuel developed, to improve the ontology linkages within the PHES-ODM to better support controlled …

---

## [Site Level as new header in Sites table?](https://odm.discourse.group/t/site-level-as-new-header-in-sites-table/184)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 1\
**Last updated:** [January 5, 2026, 9:56pm UTC](https://odm.discourse.group/t/site-level-as-new-header-in-sites-table/184 "2026-01-05T21:56:47Z")

</div>

So in chatting with some of the folks at PHAC (@NHizon @janet.lin ), they highlighted that there is a feature that would be helpful to them given an issue they’re having with sites. I’ll try to summarize the issue here, …

---

## [New Wide Rules - AND vs OR, Tagging Related Attributes](https://odm.discourse.group/t/new-wide-rules-and-vs-or-tagging-related-attributes/186)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 3\
**Last updated:** [November 10, 2025, 2:52pm UTC](https://odm.discourse.group/t/new-wide-rules-and-vs-or-tagging-related-attributes/186 "2025-11-10T14:52:54Z")

</div>

@martinwellman has been working hard on building out the tool to automate transformation from wide to long data in ODM. For this process we’ve been using example data from the EU4S program, which use a ODM wide format. T…

---

## [Duplication in Mapping](https://odm.discourse.group/t/duplication-in-mapping/182)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 0\
**Last updated:** [July 21, 2025, 5:49pm UTC](https://odm.discourse.group/t/duplication-in-mapping/182 "2025-07-21T17:49:15Z")

</div>

@martinwellman has been working on developing the mapping tool to move PHA4GE data into ODM format. The current alpha version is working well, and I’ve reviewed the outputs, and they are quite clean. Where we encounter …

---

## [Hierarchy for enumerations](https://odm.discourse.group/t/hierarchy-for-enumerations/180)

<div class="topic-metadata">

**Author:** [@martinwellman](https://odm.discourse.group/u/martinwellman)\
**Replies:** 4\
**Last updated:** [July 21, 2025, 4:52pm UTC](https://odm.discourse.group/t/hierarchy-for-enumerations/180 "2025-07-21T16:52:50Z")

</div>

In ODM v2/v3 there is currently no hierarchy for the values that a categorical/enum slot can take on. Below is an example of a hierarchy for the enum values in the “collection device” slot in PHA4GE, which is categorical…

---

## [New Table Proposal: Public Health Actions Table](https://odm.discourse.group/t/new-table-proposal-public-health-actions-table/176)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 6\
**Last updated:** [June 23, 2025, 9:47pm UTC](https://odm.discourse.group/t/new-table-proposal-public-health-actions-table/176 "2025-06-23T21:47:49Z")

</div>

While we’re in the business of adding new tables for the next release, we decided there may be one more table that would be worth potentially adding. This table’s development partially came from trying the address the ma…

---

## [Additional fields? Or how best to capture diverse European data](https://odm.discourse.group/t/additional-fields-or-how-best-to-capture-diverse-european-data/175)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 9\
**Last updated:** [February 20, 2025, 8:54pm UTC](https://odm.discourse.group/t/additional-fields-or-how-best-to-capture-diverse-european-data/175 "2025-02-20T20:54:50Z")

</div>

The data structure that @Sorin has created for European Data based off the ODM is great and maps with relative ease. There are (of course) a few sticky areas. Wide format problems: There are five fields which Sorin has…

---

## [Wide-naming exceptions - when one value is pre-populated](https://odm.discourse.group/t/wide-naming-exceptions-when-one-value-is-pre-populated/174)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 1\
**Last updated:** [January 30, 2025, 5:44pm UTC](https://odm.discourse.group/t/wide-naming-exceptions-when-one-value-is-pre-populated/174 "2025-01-30T17:44:37Z")

</div>

Hey folks - I’m working on generating some wide names for the current structure for how the European Wastewater Observatory will ingest wastewater surveillance data from member states. Shout out to @Sorin for making this…

---

## [Calculations, Normalizations, and Math Protocols](https://odm.discourse.group/t/calculations-normalizations-and-math-protocols/168)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 5\
**Last updated:** [January 30, 2025, 5:40pm UTC](https://odm.discourse.group/t/calculations-normalizations-and-math-protocols/168 "2025-01-30T17:40:47Z")

</div>

On yesterday’s working group call, there was discussion around how best to report normalization of single measures. This revived previous discussions about the possibility of recording calculation methods (likely separat…

---

## [Data Quality Flag for Mapped data?](https://odm.discourse.group/t/data-quality-flag-for-mapped-data/171)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 3\
**Last updated:** [December 19, 2024, 9:36pm UTC](https://odm.discourse.group/t/data-quality-flag-for-mapped-data/171 "2024-12-19T21:36:51Z")

</div>

I bit of a one-off thought, but I was wondering what people thought about creating a data quality flag for mapped data. The idea came to me because as I have been developing the “translation keys” for mapping between th…

---

## [Protocol Relationship: V1 \<--\> V2](https://odm.discourse.group/t/protocol-relationship-v1-v2/170)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 4\
**Last updated:** [November 4, 2024, 2:25pm UTC](https://odm.discourse.group/t/protocol-relationship-v1-v2/170 "2024-11-04T14:25:52Z")

</div>

@martinwellman has been working hard on harnessing some of the existing infrastructure for linkml and their “linkml-map” library to do mapping from ODM to and from other data models. It has been quite successful, and has…

---

## [License extra option](https://odm.discourse.group/t/license-extra-option/167)

<div class="topic-metadata">

**Author:** [@wastewater\_belgium](https://odm.discourse.group/u/wastewater_belgium)\
**Replies:** 3\
**Last updated:** [October 30, 2024, 10:17am UTC](https://odm.discourse.group/t/license-extra-option/167 "2024-10-30T10:17:59Z")

</div>

Hi, I would maybe also add the following licenses as option: ccbyncsa40 - Deed - Attribution-NonCommercial-ShareAlike 4.0 International - Creative Commons ccbync40 - Deed - Attribution - Utilisation non commerciale 4.…

---

## [Geotype - WKT - Polygons](https://odm.discourse.group/t/geotype-wkt-polygons/169)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 1\
**Last updated:** [October 4, 2024, 4:17am UTC](https://odm.discourse.group/t/geotype-wkt-polygons/169 "2024-10-04T04:17:55Z")

</div>

It was brought up today at the working group meeting that it might be beneficial to have the geotype header in the polygons table standardized. Currently, the only two geography types that can be specified are “sewer sh…

---

## [Archiving Data/Breaking Data Changes](https://odm.discourse.group/t/archiving-data-breaking-data-changes/155)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 3\
**Last updated:** [June 13, 2024, 9:17pm UTC](https://odm.discourse.group/t/archiving-data-breaking-data-changes/155 "2024-06-13T21:17:09Z")

</div>

Another issue brought up in the Thursday meeting is the issue around population reporting, updating that, and how older data is conserved after updates. Specifically, let’s say we have a polygon or site with a populatio…

---

## [NWSS Major Lab Method - Comparable Field](https://odm.discourse.group/t/nwss-major-lab-method-comparable-field/154)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 1\
**Last updated:** [May 16, 2024, 10:17pm UTC](https://odm.discourse.group/t/nwss-major-lab-method-comparable-field/154 "2024-05-16T22:17:00Z")

</div>

This is a topic that has been brought up at a few times in the last two working group meetings, but it centres around how best to map the “major\_lab\_method” field in NWSS to the ODM, and/or whether a similar field should…

---

## [Hexagonal modelling for filling in the polygon blanks](https://odm.discourse.group/t/hexagonal-modelling-for-filling-in-the-polygon-blanks/148)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 2\
**Last updated:** [February 27, 2024, 5:42pm UTC](https://odm.discourse.group/t/hexagonal-modelling-for-filling-in-the-polygon-blanks/148 "2024-02-27T17:42:46Z")

</div>

In discussions with some collaborators in Japan, it was brought up that there are some issues around having polygon information be openly available. We’ve already been encountering this a little bit with transforming Ott…

---

## [langID and ISO 639 codes](https://odm.discourse.group/t/langid-and-iso-639-codes/147)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 0\
**Last updated:** [February 13, 2024, 9:47pm UTC](https://odm.discourse.group/t/langid-and-iso-639-codes/147 "2024-02-13T21:47:09Z")

</div>

@Sorin brought this up at last week’s working group meeting that there was some duplication of values/redundancy across the languages table. Particularly the lang column and some of the ISO 639 code columns. the descrip…

---

## [Development of a GPTs](https://odm.discourse.group/t/development-of-a-gpts/144)

<div class="topic-metadata">

**Author:** [@dmanuel](https://odm.discourse.group/u/dmanuel)\
**Replies:** 2\
**Last updated:** [November 13, 2023, 1:56pm UTC](https://odm.discourse.group/t/development-of-a-gpts/144 "2023-11-13T13:56:51Z")

</div>

I’ve started to create a GPT for the ODM. ChatGPT - PHES ODM Comprehensive Guide It is in the early stages. Currently, the model has the key documentation loaded (see below). I haven’t yet started the configuration or t…

---

## [Standard Curves (for 'Master Curves')](https://odm.discourse.group/t/standard-curves-for-master-curves/141)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 2\
**Last updated:** [November 4, 2023, 6:16pm UTC](https://odm.discourse.group/t/standard-curves-for-master-curves/141 "2023-11-04T18:16:42Z")

</div>

Building off the conversation started by @NHizon this morning, I want to try to describe the issue with standard curves, one of the proposed solutions, and where there may still be some gaps. Given the volume of samples…

---

## [Tidying Groups/Classes in line with Organism Information](https://odm.discourse.group/t/tidying-groups-classes-in-line-with-organism-information/140)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 8\
**Last updated:** [November 3, 2023, 10:21pm UTC](https://odm.discourse.group/t/tidying-groups-classes-in-line-with-organism-information/140 "2023-11-03T22:21:25Z")

</div>

Carrying some discussion that started over on this post. It sounds like we might want to keep organism information exclusively in groups. If so, however, we would need to tidy up some measures and classes, because right…

---

## [NWSS to ODM Mapping - Issues & Questions](https://odm.discourse.group/t/nwss-to-odm-mapping-issues-questions/130)

<div class="topic-metadata">

**Author:** [@matthomson](https://odm.discourse.group/u/matthomson)\
**Replies:** 3\
**Last updated:** [June 19, 2023, 10:04pm UTC](https://odm.discourse.group/t/nwss-to-odm-mapping-issues-questions/130 "2023-06-19T22:04:47Z")

</div>

I have a good chunk of the work and the planning now done for how mapping would be done from NWSS to ODM, though acquiring NWSS-formatted data to test this is still on my to-do list. With that said, here is a a (non-exh…

---

## [Airports and airplanes - how to record data in ODM v2](https://odm.discourse.group/t/airports-and-airplanes-how-to-record-data-in-odm-v2/97)

<div class="topic-metadata">

**Author:** [@dmanuel](https://odm.discourse.group/u/dmanuel)\
**Replies:** 0\
**Last updated:** [January 5, 2023, 4:53pm UTC](https://odm.discourse.group/t/airports-and-airplanes-how-to-record-data-in-odm-v2/97 "2023-01-05T16:53:45Z")

</div>

What are the options for recording data for airports and airplanes? Good question! ODM v2 has robust support to record wastewater surveillance data in airports, terminals, gates, and planes. Use this topic a general dis…

---

## [Make mandatory fields clear on the ERD](https://odm.discourse.group/t/make-mandatory-fields-clear-on-the-erd/92)

<div class="topic-metadata">

**Author:** [@dmanuel](https://odm.discourse.group/u/dmanuel)\
**Replies:** 2\
**Last updated:** [December 20, 2022, 9:34pm UTC](https://odm.discourse.group/t/make-mandatory-fields-clear-on-the-erd/92 "2022-12-20T21:34:39Z")

</div>

Make the mandatory field clear as possible. We can do this by: In the ERD, make the mandatory fields bold or a distinct color. In templates, make the header a distinct color. In the documentation (in progress), identi…

---

## [ODM version 2.0 Release Candidate 2](https://odm.discourse.group/t/odm-version-2-0-release-candidate-2/91)

<div class="topic-metadata">

**Author:** [@dmanuel](https://odm.discourse.group/u/dmanuel)\
**Replies:** 0\
**Last updated:** [December 5, 2022, 12:51am UTC](https://odm.discourse.group/t/odm-version-2-0-release-candidate-2/91 "2022-12-05T00:51:32Z")

</div>

Welcome to a discussion about the ODM RC2. RC2 represents all the planned additions and changes to version 2 (and quite a bit more than we initially planned). We are reviewing the RC2 in stages. Stage 1 Finalize all t…
