ro-crate
ro-crate copied to clipboard
Prohibit complex usage of context
I enjoy the flexibility of JSON-LD, but I suspect that a lot of the tooling makes assumptions about structure that we haven't actually documented in the spec. Here are some suggestions that might help provide a simpler encoding format:
- Ban
@contextanywhere except at a top level graph. JSON-LD supports adding@contextalmost anywhere, but this is confusing and complex to parse - Ban any keyword redefinition. JSON-LD 1.1 allows you to, for example:
- Redefine another field to mark
@id, such as{"foo": "@id"}(see 4.2.2.14 in the spec) - Redefine another field to mark
@type, such as{"bar": "@type"}(see 4.2.2.4 in the spec)
- Redefine another field to mark
There are probably some others I haven't thought of yet, but this is a start.
Putting in the v2 milestone for consideration (I agree BTW)