- From: Robert Sanderson <azaroth42@gmail.com>
- Date: Mon, 27 Oct 2014 08:04:19 -0700
- To: Jacob Jett <jgjett@gmail.com>
- Cc: Paolo Ciccarese <paolo.ciccarese@gmail.com>, W3C Public Annotation List <public-annotation@w3.org>
- Message-ID: <CABevsUGBj_DGGk7r3HTERgT=0N7S8UVG1FBPvzdO25SRhqJSMQ@mail.gmail.com>
Actually in JSON-LD the serialization would be identical, regardless of whether it's an rdf:List or multiple triples with the same predicate. It would also be identical to the oa:List serialization. Composite with multiple oa:item predicates: { "@type": "oa:Composite", "oa:item": [item1, item2, item3] } Composite with oa:members predicate with a range of rdf:List: { "@type": "oa:Composite", "oa:members": [item1, item2, item3] } And for comparison, oa:List with oa:members predicate: { "@type": "oa:List", "oa:members" : [item1, item2, item3] } As Stian says, it's the semantics that the class embues on the membership list. I would even go so far as to say that the use of rdf:List is better than multiple predicates as the membership is closed rather than allowing the potential for other oa:item triples to be added to the Choice/Composite/List after the fact. Rob On Mon, Oct 27, 2014 at 6:07 AM, Jacob Jett <jgjett@gmail.com> wrote: > Hi Paolo, > > How are we to express the oa:Composite entity in JSON-LD? It's nothing > like a list entity and I'm pretty confidant that expressing it as an array > is not the correct way to express it. > > Regards, > > Jacob > > > On Mon, Oct 27, 2014 at 7:39 AM, Paolo Ciccarese < > paolo.ciccarese@gmail.com> wrote: > >> Dear all, >> in the process of defining the first draft of the model, the plan emerged >> in the last call is to (i) start from the Community draft ( >> http://www.openannotation.org/spec/core/), (ii) get rid of the SPARQL >> queries and (iii) replace the turtle with JSON-LD. >> >> Also, after the email discussions, the current orientation is to >> >> 1) replace the Choice/Composite/List constructs with one simple >> list-based construct as follows: >> { >> "@type": "oa:List", >> "members": ["eg:target1", "eg:target2", "eg:target3"] >> } >> >> Choice as list of descending priority >> >> { >> "@type" : "oa:Choice", >> "members": ["eg:option1", "eg:option2", "eg:option3"] >> } >> >> 2) Replace ContentAsText with something like: >> { >> "@type": "oa:Content", >> "value": "I love this book!", >> "format": "text/plain", >> "language": "en" >> } >> >> Where: >> * rdf:value -- for recording the content (required) >> * dc:format -- for the media type of the content (optional) >> * dc:language -- for the language of the content (optional) >> >> Content encoded using UTF-8. >> >> See you tomorrow for further discussions, >> Paolo >> >> >> > > -- Rob Sanderson Technology Collaboration Facilitator Digital Library Systems and Services Stanford, CA 94305
Received on Monday, 27 October 2014 15:04:52 UTC