[W.I.P.] Comments and Annotations#317
Conversation
|
@migom6 Great progress on the data model! :) @BigBlueHat: As a contributor to the spec, do you have any comments on this structure? As each comment/annotation needs to be addressable separately, it is not practical to put both comments as items into the same annotation, right? Ideally each annotation's body is a separate comment? @tilgovi
@blahah also faced some issue but worked around it with https://github.com/WorldBrain/direct-linking-client Thanks folks for your input! |
|
@oliversauter "@context": "http://www.w3.org/ns/anno.jsonld", "id": "12345, "type": "Annotations", "body": { "type" : "Comments", "selector": {} //this will depend upon the implementation of annotations / otherwise skip "text": "this a is comment", "created_At": "", "modified_At": "" }, "target": { "pageid": "page/Z29vZ2xlLmNvbS9pbnRsL2VuX3VrL2Nocm9tZQ%3D%3D", "uri": "http://abc.xyz/index.html", "parent_id": 56789 //for nested comments (one level nesting only) } |
|
@oliversauter @poltak |
|
@migom6 have you seen the post I made in the #intros channel yesterday about the structure of the proposal? I would recommend starting on this and then we'll work through it together. |
|
@oliversauter yes, I have seen it and I am almost done with my proposal 😃. |
|
@oliversauter |
|
Great, thanks for that :) I gave you some feedback in the document. |
The Web Annotation Data Model is built on JSON-LD and consequently will allow you to have separate reference-able bodies and targets within the same Annotation. Here's a cleaned up version of the above: {
"@context": "http://www.w3.org/ns/anno.jsonld",
"id": "...needs to be a URL or URN of some kind...not just a number",
"type": "Annotation",
"body": [
{
"id": "#annoBody-125879234",
"type": "TextualBody",
"value": "this is comment1",
"created": "",
"modified": ""
},
{
"id": "#annoBody-1252asdf234",
"type": "TextualBody",
"value": "this is comment2",
"created": "",
"modified": ""
}
],
"target": {
"source": "http://abc.xyz/index.html",
"selector": {}
}
}There are lots of changes in here, so be sure it give it a read through with a copy of the Web Annotation Data Model handy. Hope it helps get you started! |
|
Oh, and if you use hypothes.is as a "study partner" be sure to use the (mostly) standards compliant variation of each annotation: https://hypothes.is/api/annotations/mnc4BuDqEee56KODnVrTAw.jsonld Sadly, their search endpoint does not (yet) return AnnotationCollection objects (as it should to be fully standards compliant), nor do they link to the standards-based representation from their search results endpoint (ex: https://hypothes.is/api/search?user=bigbluehat). However, you can add |
|
I would only add that the decision to have multiple annotations with one body or one annotation with multiple bodies is use case specific. If the intention is to model a single annotation activity, use a single annotation with one or more bodies. If the intention is to model multiple, independent annotation activities, use multiple annotations. Keep in mind that the annotation is the bearer of provenance: who and when. |
|
Hey! @BigBlueHat thanks for everything.
^ This is a great hack 😸 |
|
@tilgovi @BigBlueHat I want to start contributing to your repo! Any suggestions? |
|
thanks @BigBlueHat and @tilgovi for your input here. @tilgovi so do I understand correctly?:
|
You have to think about your own user activities and flows. If the user makes reference to the same source/selector on multiple different occasions (times) then these might be different annotations. It is best probably to think about the annotation as an activity / action.
Definitely. However, advanced modeling of annotation does not preclude bodies having their own authorship. Some annotation uses are about stating the relationship between two resources. If I link two articles together that could be an annotation even if I did not author either article. Once again, annotation is a record of the act of annotating. The common case of note-taking is a simultaneous production of body and annotation, but not every one is. So, if you say "by multiple authors" think about who is creating the annotation as data, not necessarily who is creating the commentary. |
|
Closing this now, due to the work done by @digi0ps on the Comments/Annotations. |
|
Thanks @migom6 for your application and tackling this issue! |
|
Thanks for the great time! |
This PR aims to solve the issue #301.
Progress till now:
Discussion and finalisation on the data mode is required before implemention
I faced some problems with annotatorjs , the release version 1.2.x had documentation only on how to save via REST, I tried going through the sc. The pre release version 2.x had a problem while loading the "ui.main" module. We need to discuss on how to implement annotations (or we can use other libraries)