Versioned Data‑Model Model for New Apps

Hi everyone,

While working on some new Solid‑based apps, I've noticed we spend a fair
bit of time reverse‑engineering each other's data. A small convention could
make that easier:

---

Proposal

1. Each new app should publish a short note describing its data model
  (a README section, SHACL shape, example, JSON Schema etc.).

2. Add a semantic‑version tag to that note:
  * 0.0.x  experimental; feel free to break things
  * 0.1.0  aiming for interop; try not to break existing data
  * 1.0.0  stable; other apps can rely on it

3. After that, follow normal semver: bump MINOR for non‑breaking tweaks,
  MAJOR for breaking ones.

---

Why bother?

* Allows developers to get started in 20 minutes, and prototype quickly.
* Makes pods understandable even if the original app is offline.
* Lets other developers build integrations instead of work‑arounds.
* Provides a clean upgrade path when fields eventually change.

---

I think this keeps overhead low (just a few lines of text) while giving the
community a shared signal about stability.

Does this sound reasonable?  Happy to adjust details or write it up more
formally if there's interest.

Best
Melvin

Received on Saturday, 28 June 2025 09:50:51 UTC