ultimately, what I'd like is that if "the application" lives off-chain while "the data" lives on-chain, applications should be able to introspect the data to know whether they can operate on it. This would allow standards to emerge.
You could definitely get that through structured JSON and it seems like some usages of ethscriptions are going down this path currently. Unfortunately, this means that you can't really have portions of your application on-chain though, since reading JSON from any EVM-compatible language would be prohibitively expensive