Replies: 2 comments 6 replies
-
I would actually argue the opposite! Teasing apart, I agree that the
I think it is a shame to restrict annotated node objects that way. Consider the following Turtle*: I would like to have the same ease of use in JSON-LD*: However, this JSON-LD* could easily be misinterpreted as: Moving the For this, the |
Beta Was this translation helpful? Give feedback.
-
|
This seems settled now, so I think we can close this. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
The current version of the spec extends the potential value of
@idto allow an object value, which is treated as an embedded triple, so the value is treated as a node object that can assert a single triple. For example:{ "@context": { "@base": "http://example.org/", "ex": "http://example.org/", "foaf": "http://xmlns.com/foaf/0.1/" }, "@id": { "@id": "bob", "foaf:age": 23 }, "ex:certainty": 0.8 }This is analogous to the Turtle* representation using an embedded triple:
Work in the RDF* group has bifurcated syntax to support PG and SA modes separately, and the above example would be compatible with a Separate Assertion, where the the
<<:bob foaf:age 23>>is not, itself, asserted in the graph. Turtle* (and SPARQL*) now support an annotation mode, where the triple can be both asserted and annotated in a single view:In the past, we discussed adding an
@objectkeyword, which IIRC would have looked something like the following:{ "@context": { "@base": "http://example.org/", "ex": "http://example.org/", "foaf": "http://xmlns.com/foaf/0.1/" }, "@id": "bob", "foaf:age": { "ex:certainty": 0.8, "@object": 23 } }While this seems to share more character with Gremlin syntax, placing the annotation in the middle of the relationship, it is at odds with Turtle*'s annotation syntax. An alternative might look something like the following:
{ "@context": { "@base": "http://example.org/", "ex": "http://example.org/", "foaf": "http://xmlns.com/foaf/0.1/" }, "@id": "bob", "foaf:age": { "@value": 23, "@annotation": { "ex:certainty": 0.8 } } }The restrictions might be the following:
@annotationis interpreted as a node object and must not include an@id.@id.@idmay use the embedded syntax.Beta Was this translation helpful? Give feedback.
All reactions