- From: Vagif Abilov <vagif.abilov@gmail.com>
- Date: Tue, 1 Jul 2014 13:20:02 +0200
- To: public-hydra@w3.org
- Message-ID: <CA+xi7+0Ghx_NsNug_eonvLUL4rAHG3YPCNLmcgDOM=rdiTosag@mail.gmail.com>
Hello, We have a small issue with serializing as JSON-LD a document that contain an indexed collection in case the collection is empty but we would the element to be part of the document. This is our context definition: "@context": { "@base": "http://mabridge01/", "bridge": "https://confluence.nrk.no/display/RED/Ordbok#", "schema": "http://schema.org/", "jobId": "bridge:jobId", "data": { "@id": "bridge:data", "@container": "@index" } } This is an example of a document with non-empty collection that is correctly serialized: { "@id": "http://mabridge01/api/v1/systems/bridge/jobs/statuses/123", "jobId": "123", "data": {"a":"b" ,"b":"b"} } Resulting compacted JSON-LD (I removed context for clarity): { "@id": "api/v1/systems/bridge/jobs/statuses/123", "data": { "a": "b", "b": "b" }, "jobId": "123" } And here's an example with an empty collection: { "@id": "http://mabridge01/api/v1/systems/bridge/jobs/statuses/123", "jobId": "123", "data": {} } Resulting compacted JSON-LD (with context removed): { "@id": "api/v1/systems/bridge/jobs/statuses/123", "bridge:data": [], "jobId": "123" } As you see, as long as "data" element contains an empty object (or list, I also tried that), it is not serialized as a dictionary, i.e. an indexed collection. So there is no way to include in a document an empty container of a type @index (unless its value is set to "null" but then it will be removed from the resulting document). Is there a way to represent an empty indexed container? Thanks in advance Vagif
Received on Tuesday, 1 July 2014 11:20:29 UTC