Documentation Configurable

The data model

A classic data model describes nouns: it knows what a product, a pharmacy, a batch is. It knows nothing about what is done with them. The Medelu data layer is designed to hold the decisions too, not just the data.

Three families of elements

  • Objects: what we are talking about. Product · substance · box · batch · pharmacy · stock position · supplier · delivery · recall · unmet demand · shortage event · geographic zone.
  • Links: facts in their own right, not technical joins. The product contains the substance · the pharmacy holds a position · the position concerns a batch · the recall targets a batch · the unmet demand feeds a signal · the signal sits in a zone.
  • Verbs: through which a professional changes the state of the world. Confirm availability · reserve · request a transfer · flag a supply tension · request a pharmacist's validation · open a recall circuit · notify the pharmacies concerned.
A verb is not a button. It carries who has the right to trigger it, which conditions must be satisfied before submission is even possible, what it changes, what it triggers next, and the trace it leaves. As long as a condition fails, the action cannot be submitted: the control is structural, not declarative.

An open architecture, governed locally

Open data plane: open formats, access through a standardised interface, no lock-in. Security and governance are not a separate layer: role, tagging, purpose, logging, provenance and residency run through the whole, from the data to the application. These capabilities are configurable, around each pharmacy's systems; they do not describe an infrastructure already deployed.