cedadev / djcharme

CHARMe project node
0 stars 2 forks source link

Link classification tags #31

Closed Alex-Wood-CGI closed 9 years ago

Alex-Wood-CGI commented 9 years ago

A user creates an annotation with a link to www.notanoperationreport.com, and selects type 'Operation Report'. After saving, he realises his mistake and so modifies the annotation, changing the type to 'Service Message'. However, if you now view the annotation, both classification tags, Operation Report and Service Message, will be displayed. So the user then deletes his annotation and starts again, but when viewing the new annotation, the Operation Report tag will still be displayed.

The erroneous tag is never removed from the system, which will be frustrating for the user. Can the node be made to recognise when a particular classification type for a given URL is only included in annotations that have been deleted, or that have been replaced by modified versions?

antony-wilson commented 9 years ago

I agree that this is a problem, but the short answer is no. We do not hold sufficent data to distinguish between the two tags. Also as there is no provenance associated with external resources we have no access control on them. It is entirly possible for two users to have conflicting views and tag the same recource differently in a way that both think that the others tag is wrong.

Alex-Wood-CGI commented 9 years ago

It is entirly possible for two users to have conflicting views and tag the same recource differently in a way that both think that the others tag is wrong.

Yes, but this is not the issue - such disagreement is fine. If two users have given the same resource different tags, then both tags should be displayed when viewing an annotation, except in the kind of case I described: when a particular tag occurs only in annotations that have been deleted, or that have been replaced by modified versions - i.e. there is no 'live' annotation, by any user, that contains the particular tag. In such cases the tag should no longer be displayed.

Would it perhaps be possible for the node to keep count of how many times a given tag has been assigned to a given URL? +1 for every new annotation, -1 for every annotation that is retired (i.e. deleted or modified). Then if the score goes back to zero, unassign the tag from the URL?

antony-wilson commented 9 years ago

Alex, we deal with targets and bodies. So just to make sure we fully understand what you are doing and have not misinterpreted it, can you send an example of the json with the incorrect tag.