Re: [web-annotation] Definition of specific resources: @Type

hi @iherman @csarven,

Now I understand your concern. And I would add to it, that the 
annotation applications work a kind of "write once - read many" 
scenario. If publishing here, means creation, and consumption means 
read, I would like to mention that the worflow actually includes more 
actions and processing needs to happen at each of them.
Typically, there is a client application implementing the user 
interface and and a server that stores and publishes annotations, and 
them there might be more clients consuming (reading) the annotations. 
(for reference you can see the following presentation: 
http://de.slideshare.net/antoineisaac/modelling-and-exchanging-annotations-swib15
 )

So ... I'm writing this, becasue it is important to understand how a 
typical environment looks like and how the resposabilities are 
separated between the User Informantion, Client Application and 
Server:
1. The user should select and annotation editor and provide only his 
relevant knowledge (e.g. select a resource and write a text, possibly 
also select a language and an area)
2. The client application must know the "type" of the annotation (i.e.
 from the annotation editor), serialize it and submit it to the 
server. Other technical information, like serializedAt/By creator, 
created, etc. should be inferred by the Client Application and a 
consistent Annotation has to be submitted to the server.
3. The server must parse the annotation to the same "type", check for 
its consistency and store.
4. Other client application may read from server the new created 
annotation, and the server needs to serialize again the annotation to 
the same representation (e.g. jsonld that he got from the first 
client), and the "second" client must parse the annotation to the same
 "type" as the first client created it.
5. A second user of the second client must understand the Annotation 
in the same way as the first user of the first client, that actaully 
created it.

(I think that the standard must ensure the consistency between the 
representation and interpretation of the annotations in all of these 5
 steps)

By Annotation "type"   here, I mean something like an "annotation 
having a Semantic Tag in the body".

As you can see in the workflow the parse/serialize is called several 
times by each client and server, and these clients must "understand" 
in the same way the content of the annotations. Consequently the 
"@type" property is very important for ensuring the "common 
understanding" between the server and different clients.

An this is why I would recommend that for each property of the 
annotation that holds an object the "@type" must/should be specified 
if it is not the default one (including, body, target, selectors, 
agents, etc.). The standard should also explicity state which is the 
default "@type".

So .. these are my expectations as an implementor of the standard.
(basically, this can be reduced to the sentence that 2 different 
developers must have the same understanding of the standard's text).







-- 
GitHub Notification of comment by gsergiu
Please view or discuss this issue at 
https://github.com/w3c/web-annotation/issues/137#issuecomment-172481249
 using your GitHub account

Received on Monday, 18 January 2016 09:50:23 UTC