Scientific data
Data needs its context
Models, validation and documentation are designed together.
Describe before transforming
A value is not always enough to describe an observation. We also need to understand what it measures, its unit, the conditions of collection and its relationships with other information. Those details determine how it can be interpreted.
In a scientific system, the data model makes part of that context explicit. It organises information and provides a common foundation for the tools that exchange it.
Separating structure from domain rules
Checking that a file has the expected structure is a first step. Domain rules come next: consistency between fields, expected values and constraints associated with an observation. Separating these checks helps produce clearer validation messages.
Teams should be able to trace a rule from its documentation to its implementation. That connection makes corrections and future changes easier to understand.
Supporting change
When a model evolves, migration deserves as much attention as the new structure. It is necessary to understand what can be transformed, what requires a decision and what must be retained to explain the results.
This is why I treat models, checks and documentation as different parts of the same system.