- From: Markus Lanthaler <markus.lanthaler@gmx.net>
- Date: Thu, 29 Sep 2011 11:01:05 +0200
- To: <public-linked-json@w3.org>
- Cc: "'Gregg Kellogg'" <gregg@kellogg-assoc.com>
> Yes, each object can have it's own context. OK.. We should mention this in the spec. I will prepare something. > I also suggested using an > array notation to allow a give object to have multiple contexts, which > could allow a remote context and an in-line. For example, the in-line > could be used to specify @language. Right, you proposed the following form: { "@context": [ "/api/context.json", { "@language": "en" } ], "@subject": ... } I think that's quite a nice approach.. I see only one issue with it. People could start doing something like: { "@context": [ "/api/context.json", { "xy": "..a..", "@language": "en" }, { "xy": "..b..", "@language": "de" } ], "@subject": ... } As we generally say that arrays are unordered in JSON-LD we have no way to resolve this conflict. Saying that in this case the order of the elements matters wouldn't be a very elegant solution. Thus, the approach suggested by Niklas: { "@context": { "@import": "/api/context.json", "@language": "en", "@base": "http://example.org/" } "@subject": ... } or Ivan: { "@importcontext": "http:...", "@context": { ... } } might be easier to understand. We might even generalize Niklas' approach and say that @import can be used to import both context and instance documents. Then we could have something like { "@import": "my-big-context.jsonld", "@context": { "@language": "en" }, "name": "Markus Lanthaler", "knows": [ { "name": Gregg Kellog", "@import": "/details/gregg.jsonld" } } } But this might go too far... -- Markus Lanthaler @markuslanthaler
Received on Thursday, 29 September 2011 09:01:36 UTC