-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Annotation updated timestamp #96
Comments
+1. This is quite a standard thing to do |
In progress on the spec side: w3c/web-annotation#96
This issue and #21 are buzzing in my head as I discuss (im)mutability with @jbenet and others working on @ipfs. If/as we discuss "distributed annotation" such that they may be "birthed" offline and later appear on the public web, we face several issues concerning identity and change over time. If I create an annotation in my browser, what URI does it get (see #21)? If I send it into the world and multiple copies of it are made, would it matter if I later changed the original and recorded a Wouldn't it be better to distribute a new annotation which references the original via a predecessor-version or So...I'm OK having the Actually...this text box is a great example. It does store The value of Fun problem. 😄 Hopefully that stream of consciousness is helpful. 😉 What I'm thinking now:
😖 Certainly this is simpler when you can only append in the first place. 😉 k. Someone else chime in before I think myself back through the loop. 🔁 |
So, our spec (and most other W3C specs, I'd reckon) use the From a protocol and data model perspective this seems prudent for use with Such that I could do the following:
and then...
Maybe that's a bit nuts. 😄 In this case, When replaced, the
Too crazy? 😸 |
I would really advise against using HTTP for naming anything (ids) that is meant to work across locations, meaning if an annotation can be made in a host (perhaps disconnected) and then served by a variety of other hosts, it is best to use a URI of some sort. In IPFS, I would use either a keypair (naming the object as |
So, one option would be to use a UUID (as @timbl suggested at TPAC), but use it as the However, if we require (I know, I know...) a {
"id": "...uuid...",
"type": "Annotation",
"via": "http://annotation-server.example/~bigbluehat/...uuid...",
"target": "http://example.com/"
} Before publication it would be just the Here's via's definition from RFC4287:
A copy made by @jbenet in IPFS +/- some additional statements could then look like: {
"id": "...uuid...",
"type": "Annotation",
"via": [
"http://annotation-server.example/~bigbluehat/...uuid...",
"https://ipfs.io/ipfs/...ipfs hash of annotation content, public key, etc..."
],
"target": "http://example.com/"
} Annotation systems (offline web browsers, ebook readers, etc) could make Web Annotations, and publish them later. Obviously this is beginning to effect protocol topics...so, tagging it that way also. |
We are getting into similar discussions in the publishing IG re publications. Influenced by that discussion, I wonder: why do we need that 'via'? If we adopt the approach of (conceptually) separating the ID and the locator, then we can simply say
If an application wants to have something reflecting provenance, it can use provenance related vocabularies. We should not dictate that. Just a thought… Ivan
Ivan Herman, W3C |
Some design considerations I'd like to propose, based on the above discussions:
Thus, along with #21, we can fulfill these with iana:via and dcterms:modified. We might consider using |
@azaroth42 given those statements, should we consider this as a possible "offline-first" annotation?
Note the lack of Does that seem like a plausible path? My concern is having a "cloud requirement" for the initiating act of annotating--by which I mean a sign-up process to some service "on the Web" which will give the annotator a "namespace" in which to create (future-use-ready) dereferencable URLs...but at the cost of the sign-up, terms of service, pre-annotation process requirement, etc, etc. My hope is to find a path where, me and my offline machine can make annotations with the same requirements as me and my book. If I have a "highlighter," I can annotate. No additional storage space or permission required. If we can come up with a way to do that and create a dereferencable |
My only comment is that we should not cast in concrete the usage of UUID. It should be something generic, allowing for URN/URI-s as well. Although not really relevant for annotations, but communities may have their own identifier schemes (in the case of publishing people may want to use ISBNs or DOIs, all of these have URN/URI equivalents).
Ivan Herman, W3C |
Discussed on the call: this issue is closed per http://www.w3.org/2015/11/18-annotation-irc#T16-28-42 on the original request; the discussion on the identifiers should move over to issue #21 |
To avoid mandating a versioning system, we should allow the description of resources that are modified in place. Thus the current 'created' time may be insufficient, and we should thus allow 'modified' as well.
Proposal:
dcterms:modified
(json-ld:modified
) as a property, with the value being an ISO8601 timestamp for when the resource was most recently modifiedThe text was updated successfully, but these errors were encountered: