Skip to content

Commit fb5a8c6

Browse files
authored
rename and refine the tone in the core and extension log
1 parent 07e0752 commit fb5a8c6

2 files changed

Lines changed: 203 additions & 105 deletions

logs/2026-04-log-t2-core-and-extension-a-design-principle-for-ifid-taxonomy.qmd

Lines changed: 0 additions & 105 deletions
This file was deleted.
Lines changed: 203 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,203 @@
1+
---
2+
title: "Core and Extension: How IFID Draws the Line on What an Ingredient Record Must Contain"
3+
description: "Every ingredient in Indian packaged food can be listed dozens of different ways across brands, regions, and languages. IFID builds a shared reference record that holds this identity stable — and this log explains why that record has a fixed part and an open surface, and what that design decision means for anyone who works with food ingredient data in India."
4+
date: 2026-04-05
5+
author:
6+
- name: Lalitha A R
7+
affiliation: iSRL
8+
orcid: 0009-0001-7466-3531
9+
email: lalithaar.research@gmail.com
10+
corresponding: true
11+
categories: [design-principles, ifid]
12+
tags: [core-extension, ifid, ingredient-identity, food-labelling, FSSAI, Indian-food-data]
13+
keywords:
14+
- ingredient identity India
15+
- packaged food labelling FSSAI
16+
- food data infrastructure
17+
- ingredient record design
18+
- Indian food ecosystem
19+
- food label standards India
20+
status: draft
21+
license: "CC BY 4.0"
22+
citation: true
23+
open-graph:
24+
title: "Core and Extension: How IFID Draws the Line on What an Ingredient Record Must Contain"
25+
description: "IFID builds a shared reference record for packaged food ingredients in India. This log explains why that record has a fixed part and an open surface — and what that means for consumers, practitioners, media, and regulators."
26+
image: ""
27+
twitter-card:
28+
title: "Core and Extension: How IFID Draws the Line on What an Ingredient Record Must Contain"
29+
description: "Same ingredient, fifty different names across Indian packaged food labels. IFID is building the reference layer that holds identity stable — here's the design decision that makes it extensible without breaking."
30+
card-style: summary
31+
---
32+
33+
## The problem this design principle is solving
34+
35+
Pick up any packaged food in India. The ingredient list on the back is a legal
36+
declaration — FSSAI requires it, and manufacturers must comply. But read the
37+
same ingredient across fifty products from fifty manufacturers, and you will
38+
find the same substance listed under dozens of different names.
39+
40+
Refined wheat flour. Maida. Wheat flour (refined). Atta (refined).
41+
42+
The substance is the same. The label is not.
43+
44+
This is not a labelling quirk or a compliance failure. It is the structural
45+
condition of the Indian packaged food market: a vast, multilingual, regionally
46+
fragmented ecosystem where the same ingredient accumulates names across
47+
languages, regional conventions, brand preferences, and transliteration choices.
48+
The result is that no one — not a consumer reading a label, not a journalist
49+
investigating a product category, not a regulator auditing a supply chain, not a
50+
researcher analysing 2,000 SKUs — can currently look across labels and say with
51+
confidence: these are the same thing.
52+
53+
IFID is building the reference layer that makes that possible. It is a shared
54+
identity record for each ingredient in Indian packaged food — a stable anchor
55+
that connects the variant names, spellings, and declarations that currently vary
56+
by brand, region, and language.
57+
58+
This log explains one foundational design decision in how that record is built:
59+
why the record has a **fixed part** and an **open surface**, and what each of
60+
those parts is for.
61+
62+
---
63+
64+
## Why this decision matters beyond the lab
65+
66+
The question of what goes into an ingredient record and what doesn't sounds
67+
like an internal technical choice. It is not. It shapes who can use IFID, for
68+
what, and without waiting for anyone's permission.
69+
70+
Consider who has a stake in ingredient identity in India:
71+
72+
**A consumer** reading the back of a biscuit packet wants to know whether the
73+
ingredient listed as "emulsifier 322" is derived from soy — because she has a
74+
soy allergy and FSSAI's allergen declaration rules are not always followed
75+
consistently. The name on the label does not help her. A stable, cross-
76+
referenced identity record would.
77+
78+
**A journalist** investigating a product category — say, ultra-processed snacks
79+
marketed to children — needs to be able to identify which ingredients recur
80+
across brands, what their regulatory status is, and whether their presence is
81+
disclosed consistently. Right now, the name variation across labels makes this
82+
comparison almost impossible to do at scale.
83+
84+
**A practitioner** — a clinical dietitian, a food technologist, a procurement
85+
manager at a hospital canteen — needs to know what an ingredient is, not just
86+
what it is called. They may also need to attach their own data to that
87+
identity: glycaemic index values, sodium content per serving, allergen
88+
cross-reactivity information. That annotation work depends on having a stable
89+
identity to attach it to.
90+
91+
**A regulator** needs to know whether the declarations on a label — allergen
92+
status, veg/non-veg marking, source qualifiers — correspond to what domestic
93+
law requires, and whether the same ingredient is being declared consistently
94+
across manufacturers. That verification work requires a reference, not just a
95+
list of whatever names happened to appear on labels.
96+
97+
All of these people are working in the same ecosystem. None of their needs are
98+
identical. The design question is: what does the shared record contain, and what
99+
does each user bring on their own?
100+
101+
---
102+
103+
## The design: a fixed part and an open surface
104+
105+
Every ingredient record in IFID has two parts.
106+
107+
### The fixed part
108+
109+
The fixed part holds what every legitimate use of the record requires:
110+
111+
- The **canonical name** for the ingredient, and the variant strings that refer
112+
to it across labels, languages, and regional conventions
113+
- The **source** of the ingredient
114+
- The **legal declarations** that FSSAI mandates — allergen status, veg/non-veg
115+
marking, and any source qualifiers required under applicable regulation
116+
117+
This part is defined by IFID and does not change based on who is using the
118+
record. It is what makes the record a reference rather than just another label.
119+
120+
The specific values recognised within each of these fields — for example, how
121+
allergen status is determined, what counts as a valid veg/non-veg declaration,
122+
which source qualifiers are mandatory under which conditions — are determined
123+
through systematic analysis of each ingredient category, with FSSAI regulations
124+
as the governing reference. Those analyses are recorded as separate logs and
125+
linked here as they are completed.
126+
127+
### The open surface
128+
129+
The open surface is everything else. It is not maintained by IFID. It is
130+
maintained by whoever needs it — and they do not need IFID's permission to
131+
build it.
132+
133+
A research group studying diet and chronic disease adds glycaemic index values.
134+
A clinical dietary programme adds sodium content per standard serving. A food
135+
technology team adds fermentation pathways. A sustainability researcher adds
136+
carbon intensity estimates. A consumer rights organisation adds their own
137+
compliance-tracking flags.
138+
139+
Each of these users attaches their information to the stable record beneath.
140+
They do not redefine what the record is. The identity holds.
141+
142+
::: {.column-margin}
143+
**The same pattern in software**
144+
145+
Web frameworks have used this design for decades. React ships with component
146+
rendering and state management; everything else — routing, form handling, data
147+
fetching — is a package you bring in. Django's ORM and URL routing are core;
148+
authentication backends, payment integrations, and admin themes are installed
149+
as apps.
150+
151+
The shared logic: the framework defines a stable object and leaves the surface
152+
open for extension. Downstream developers attach to that surface without
153+
modifying the object itself.
154+
155+
IFID follows the same pattern. The ingredient record is the stable object. The
156+
open surface is yours to extend.
157+
:::
158+
159+
---
160+
161+
## Why the fixed part must stay bounded
162+
163+
If the fixed part tries to account for every possible use, it becomes unusable
164+
for any of them.
165+
166+
A record that simultaneously carries clinical dietary metadata, environmental
167+
impact data, religious compliance tags, and sports-nutrition ratios has no
168+
coherent identity. It becomes a database of everything anyone might ever want
169+
to know about an ingredient — which means it is no longer a reference, it is
170+
a project that can never be finished.
171+
172+
The boundary also protects downstream users from a different risk: dependence.
173+
If the open surface is well-documented and genuinely open, a research group or
174+
a media organisation can add their own layer without waiting for IFID to expand.
175+
The reference record does not become their bottleneck. They build when they are
176+
ready, on a foundation that is already stable.
177+
178+
---
179+
180+
## What this means if your work involves ingredient identity in India
181+
182+
If you are doing any of the following, this design decision is directly
183+
relevant to you:
184+
185+
- Comparing ingredient declarations across brands or product categories
186+
- Verifying whether what a label says matches what domestic law requires
187+
- Investigating how the same substance is named, disclosed, or obscured across
188+
the Indian packaged food market
189+
- Building a nutrition, compliance, or procurement tool that needs to identify
190+
ingredients consistently
191+
- Reporting on food labelling, food safety, or food policy in India
192+
193+
IFID's fixed record gives you a stable identity to work from. The open surface
194+
means you bring your own layer — your own values, your own flags, your own
195+
analysis — without needing to alter what the record is.
196+
197+
What the record contains in its fixed part, category by category, is being
198+
determined now. The allergen analysis, the veg/non-veg declaration framework,
199+
the source qualifier mapping — each of these is a separate body of work, linked
200+
here as it is completed.
201+
202+
This log records the design principle that governs all of it: the record has a
203+
fixed part and an open surface, and the open surface is open by design.

0 commit comments

Comments
 (0)