W3C

Web Annotation Working Group Teleconference

01 Oct 2014

Agenda

See also: IRC log

Attendees

Present
Ivan Herman (Ivan), Maxence Guesdon (MGU), Frederick Hirsch (fjh), Markus Gylling (Markus),  Dan Whaley (dwhly), Ben De Meester (bjdmeest), Dave Cramer (dauwhe), Bill Kasdorf (Bill_Kasdorf), Rob Sanderson (azaroth), Kryce Sweson (Kyrce), Matt Haas (Matt_Haas), Nick Stenning (nickstenn), Benjamin Young (bigbluehat), Ray Denenberg (rayd),  Kistóf Csillag (csillag), Randall Leeds (tilgovi), Jake Hartnell (JakeHart), Tim Cole (TimCole) Paolo Ciccarese (PaoloC), Jacob Jett (Jacob), Michael Scharf
Regrets
Doug Schepers
Chairs
Frederick Hirsch, Rob Sanderson
Scribe
Nick Stenning

Contents


<trackbot> Date: 01 October 2014

<fjh> Agenda: http://lists.w3.org/Archives/Public/public-annotation/2014Sep/0075.html

Agenda Review, Announcement

<azaroth> csillag: The IRC is mostly a record of what happens on the call

<dwhly> csillag: most of the information is audio

<azaroth> and for making notes, taking "votes" and so on

fjh: TPAC is coming up -- deadline Oct 8th
... make sure you've made arrangements
... have also sent out a notice about an upcoming privacy workshop that may be of interest to this group

<fjh> privacy workshop notice http://lists.w3.org/Archives/Public/public-annotation/2014Sep/0072.html

Tools

fjh: i think we decided on the list to use GitHub for issue tracking
... but there are questions about how to get notifications on the list

<bigbluehat> Zapier.com + mailing list posting?

<bigbluehat> Webhooks (broadly)

fjh: any suggestions for how to do this?

<bigbluehat> +1

<ivan> +1

<Jacob> +1

<fjh> proposed RESOLUTION: use github for issues tracking, assuming we will get notices to public list working later

ivan: if you have a good trick for this, let me know off-list

RESOLUTION: use github for issues tracking, assuming we will get notices to public list working later

<fjh> proposed RESOLUTION: use tracker for actions

<ivan> +1

RESOLUTION: use tracker for actions

<fjh> we may use tracker to capture issues quickly during a call but will then use github for full issue tracking

Minutes approval

<fjh> proposed RESOLUTION: Minutes from 24 Sept 2014 approved, http://www.w3.org/2014/09/24-annotation-minutes.html

RESOLUTION: Minutes from 24 Sept 2014 approved, http://www.w3.org/2014/09/24-annotation-minutes.html

<azaroth> http://www.slideshare.net/azaroth42/open-annotation-core-data-model-tutorial

Data Model review

fjh: if you want an issue created, put it in irc with "issue: ..."

<fjh> http://www.slideshare.net/azaroth42/open-annotation-core-data-model-tutorial

<fjh> Highlight known issues, WG members indicate additional issues, discuss

azaroth: not everyone has come from the community group so we're going to work through the data model and review people's questions and concerns

<tilgovi> tilgovi

azaroth: link in IRC is a slideshare presentation about the core data model
... please shout if you have questions as we go through this
... first slide: what is annotation?
... one of the issues we had in the community group: how to define what an annotation is?
... Annotation: a set of connected resources, typically including a body and target
... example use cases: as aide-memoire, share, improve discovery, organise, interact with other people, being a creator (e.g. editor) or moderator ... over the linked resources
... that's the baseline scope that was considered in the CG

<fjh> slide 4 core data model

azaroth: which resulted in our baseline model for annotations: a separation of the annotation, which encapsulates the linkage between body and target
... a freq question is "how do I give the relationship between body and target?"
... we don't want to reinvent RDF

<fjh> slide 5

<fjh> now slide 6

azaroth: example here on slide 6 --- a video about a Hubble Deep Field image
... [the body is implicitly related to the target]
... we're on slide 8

<bigbluehat> this deck, yes? http://www.slideshare.net/azaroth42/open-annotation-core-data-model-tutorial

azaroth: useful to know the general type of body and target

<bigbluehat> dwhly: just wanted that in the logs :)

azaroth: e.g. body is text serves as a hint to viewer about how to render the annotation
... versus audio, video, etc.
... also useful to know the media type

<JakeHart> JakeHart is IPcaller.a

azaroth: which might be codec, etc.
... recommendation to use Dublin Core types vocab
... on slide 9
... body has dc:format of "application/flv" and rdf:type of "dctypes:MovingImage"
... target similarly has dc:format and rdf:type
... slide 11
... embedded bodies -- body can be an inlined resource as an alternative to a resource with a URI
... concerns that people would never implement this
... slide 12
... this was a hotly debated point within CG
... slide 13
... settled on W3C's Content in RDF specification
... seemed at the time like it was going forward towards full TR or some way there

<fjh> http://www.w3.org/TR/Content-in-RDF10/

azaroth: but that hasn't happened as yet
... so we may need to discuss this within the context of this Working Group

<ivan> ISSUE: what do we do with embedded content

<trackbot> Created ISSUE-1 - What do we do with embedded content. Please complete additional details at <http://www.w3.org/annotation/track/issues/1/edit>.

azaroth: do we want to stick with this or change the way we do embedding?

<fjh> ISSUE-1: how to embedd content in graph, given status of Content in RDF spec, use that or change

<trackbot> Notes added to ISSUE-1 What do we do with embedded content.

azaroth: slide 14

<fjh> ISSUE-1: http://www.w3.org/TR/Content-in-RDF10/

<trackbot> Notes added to ISSUE-1 What do we do with embedded content.

azaroth: embedded body has rdf:type -> "cnt:ContentAsText"
... slide 15
... tagging -- the simplest form of annotation
... comes in two forms: 1) plain text tags 2) semantic tags (tags with URI that *identifies* the concept)
... also the ability to tag with a document, standing for a concept
... slide 16
... we give this rdf:type "oa:Tag" to distinguish the intent of this kind of body
... slide 18

<MGU> Question: Is not oa:Tag redundant with motivation predicates ?

azaroth: semantic tagging is even easier, has rdf:type "oa:SemanticTag"
... and the URI refers to the concept-as-tag
... there was some consensus that this was the most appropriate, if not perfect, way of doing this
... we didn't think there was anything wrong with tagging with documents
... but this might be an issue for re-discussing
... in order to avoid polluting resources as a result of being tagged

MGU: is there a relationship between tagging and the motivations part of the model

<ivan> ISSUE: with semantic tags, how to avoid polluting the space (eg, dbpedia Astronomy) with annotations

<trackbot> Created ISSUE-2 - With semantic tags, how to avoid polluting the space (eg, dbpedia astronomy) with annotations. Please complete additional details at <http://www.w3.org/annotation/track/issues/2/edit>.

azaroth: yes, in that any annotation which has a tag body should probably have "tagging" as one of its motivations
... it's probably slightly redundant, but in an annotation with non-tag content, you need to be able to distinguish between the tags and the non-tag content

paoloC: want to reinforce this point -- can have annotations with a motivation of "commenting" that nonetheless have tags

<fjh> ISSUE-2: motivation can be commenting with comment, even if a tag is added , example in biology case might want to comment but tag t clarify scope of comment for example

<trackbot> Notes added to ISSUE-2 With semantic tags, how to avoid polluting the space (eg, dbpedia astronomy) with annotations.

paoloC: in biology, we may have annotations with a lot of text that references a lot of biological items/artefacts, which might be added as tags, even if the original motivation was commenting

azaroth: i don't think we want to discuss solutions at this point -- we'll be jumping all over the stack
... but do jump in with questions or issues
... slide 20
... we found a lot of systems want to use a document in place of a semantic tag, e.g. using a Wikipedia page to represent the content it describes
... in order to avoid identifying the document as a semantic tag (which would be very wrong)
... we introduce a new object between the document and the annotation, which has type "oa:SemanticTag" with a foaf:page relationship to the document
... this object can be empty
... slide 21
... but it could be an object with, say, a UUID
... slide 22
... most *non-tag* annotations are about *segments* of a resource
... (unlike "+1"s and "likes" and so on)
... use URI fragments to identify and describe segments
... Media Fragments WG have developed ways to identify fragments of images/video/etc.
... great for simple cases but not sufficient
... slide 23
... can use these Fragment URIs as targets
... slide 24
... targets can reference these URIs, such as http://example.com/myimage.jpg#xywh=100,500,200,150
... can also use same trick with bodies
... slide 25
... for example if only a short section of video annotates a particular resource
... slide 26
... model allows for annotations without a body
... for use in, e.g., bookmarking and highlighting
... slide 27
... you're *implicitly* saying "i like this" or "i want to come back to this" -- it's not explicit in the model
... slide 28
... multiple bodies and targets: each body applies individually to each target
... slide 29
... for example, if you have one body about two targets -- you are implying that the body annotates *each* target

csillag: can I express if one body is annotating all the targets?

azaroth: we have notions of composites (set of all these things) and lists (set of all these things with order)
... so you could indirect the target through a composite or list
... another potential issue is whether we need composites (sets) as well as lists

<ivan> ISSUE: do we need both composites and lists

<trackbot> Created ISSUE-3 - Do we need both composites and lists. Please complete additional details at <http://www.w3.org/annotation/track/issues/3/edit>.

azaroth: is the distinction between ordered and unordered sets of objects important?
... slide 30
... we felt it was important to record the provenance of the annotations
... useful for spam, reputation models, etc.
... when the annotation was made -- needed for synchronisation
... also needed to establish if the targets might have changed since the annotation was made
... who or what serialized the annotation to the document format?
... this being useful for debugging, advertising, etc. (e.g. "Posted from TweetDeck")

MGU: what about signing annotations with a private key?
... is there a way that an author can sign an annotation to prove authorship?

<ivan> ISSUE: do we need signature possibilities to annotations (not in the current OA model)

<trackbot> Created ISSUE-4 - Do we need signature possibilities to annotations (not in the current oa model). Please complete additional details at <http://www.w3.org/annotation/track/issues/4/edit>.

azaroth: we discussed annotation signing briefly, felt that it was quite complex and didn't want to add it as a burden [to implementers] if it wasn't necessary

<fjh> ISSUE-4: is there a requirement for integrity protecting annotations with digital signatures

<trackbot> Notes added to ISSUE-4 Do we need signature possibilities to annotations (not in the current oa model).

<Kyrce> +q

<Jacob> talking about roles for the annotation creator

<Jacob> i.e., creator was an editor, author, etc.

Kyrce: there is a linkage between the annotation provenance and the role of the annotation creator
... will send an email to the list

<Jacob> IIRC, motivations were supposed to help support this.

<csillag> ISSUE-4: some previous discussion: https://github.com/hypothesis/h/issues/344

<trackbot> Notes added to ISSUE-4 Do we need signature possibilities to annotations (not in the current oa model).

azaroth: agreed -- the lack of a way to record the role the creator is playing may be something we want to look into?
... on the same resource the same person could have multiple roles at different times

<fjh> ISSUE: define roles of actors, e.g. student, teacher etc.

<trackbot> Created ISSUE-5 - Define roles of actors, e.g. student, teacher etc.. Please complete additional details at <http://www.w3.org/annotation/track/issues/5/edit>.

paoloC: we intentionally didn't go beyond the provenance layer because when we discussed prov there were different ideas

<fjh> ISSUE-5: Kyrce will send email related to this

<trackbot> Notes added to ISSUE-5 Define roles of actors, e.g. student, teacher etc..

paoloC: we distinguish between who created something, who edited, who curated, etc.
... all these aspects can be added to the annotation itself

<Gerben> +q

<fjh> ISSUE-5: paoloC notes that these things could be added to annotation itself

<trackbot> Notes added to ISSUE-5 Define roles of actors, e.g. student, teacher etc..

paoloC: we decided not to go into that level at the CG level

<MGU> I asked whether we would define a core annotatin system/voca and then extensions

<Gerben> fjh: yes

azaroth: in the CG we started off with the core model and an extension set
... the issue we had with this was that it became impossible to know or recall which things were in the core namespace and which were in the extension namespace
... it became confusing why some things were extensions and some things weren't
... in the current (CG) model, everything is in one namespace
... but that's not to say we can't do that here
... modules are a part of some W3C specifications (e.g. CSS)
... although I would want to defer any decision on that until the spec became so large that it needed to be split

<fjh> ISSUE: are modules needed? , defer until we really need it with large spec

<trackbot> Created ISSUE-6 - Are modules needed? , defer until we really need it with large spec. Please complete additional details at <http://www.w3.org/annotation/track/issues/6/edit>.

<MGU> ok for me

azaroth: moving on... slide 31
... the model for provenance is that provenance data sits on the annotation
... e.g. oa:annotatedBy, oa:serializedBy, oa:serializedAt, etc.
... slide 33
... there are different classes of agent (such as Person, Organisation, Software)
... annotation model doesn't say anything about that: we leave it to other data models (FOAF, etc.)
... slide 36
... motivations: we want to know why the annotation was created
... introduce a Motivation class, separate from Annotation class
... because we wanted to be able to use the richer SKOS Concept ontology to provide cross-community resolution
... so another community can develop a different motivation, to which we can link using SKOS
... slide 37
... a set of motivations from the specification
... such as commenting, bookmarking, highlighting, tagging, etc.
... slide 38
... we record this as oa:motivatedBy on the annotation
... that's the end of the core data model
... any more questions?

csillag: is there a list of the difference between bodies and targets -- what can bodies do vs targets?

azaroth: what do you mean by "do"?

csillag: what's the reason for the distinction?

<Jacob> Bodies and targets are symmetrical properties of the annotation but each has a different role with respect to the annotation.

azaroth: you need to know [which piece annotates and which piece is annotated]
... but the objects have the same behaviour in RDF space

<fjh> big thanks to Nick for excellent scribing.

<paoloC> +1

<ivan> Thanks indeed!

<Jacob> +1

<MGU> thanks !

<ivan> and thanks to rob for the presentation

azaroth: please do bring up any issues and discussions on the mailing list

paoloC: question unrelated to the model -- during the week people said what they were interested in
... what's the plan for that data?

azaroth: we now have all but the last two or three into my tracking spreadsheet
... it's reasonably well separated out

<fjh> +1 thanks to Rob for excellent presentation

azaroth: no orphaned topics, and none with vastly more interest than others
... by the end of the week i will try to have that information public

FIN

Adjourn

<ivan> trackbot, end telcon

Summary of Action Items

[End of minutes]

Minutes formatted by David Booth's scribe.perl version 1.138 (CVS log)
$Date: 2014/10/09 07:45:40 $