- From: Bridget Almas <balmas@gmail.com>
- Date: Wed, 11 Dec 2019 08:20:37 -0500
- To: public-openannotation@w3.org
I agree about the targets not being embedded in the body. It was a compromise. It would be wonderful to see the spec extended to support this use case! On 12/11/19 8:05 AM, Robert Casties wrote: > Hi Bridget, > > On 10.12.19 14:54, Bridget Almas wrote: >> Hi Rainer, >> >> >> Yes, I think that's right. >> >> >> I too wonder what people think about the body structure :-) > I thought that it's not as bad as I had feared when I heard about a > graph in the body :-) > > My fear was that there would be Turtle or RDF-XML in the body and I > would have to add yet another parser or two in my client. With JSON-LD I > only need an additional LD-Processor or to specialize my code for the > specific pattern. > > I would still prefer to have the second target not be in the body to be > more explicit but multiple targets are still a bit underspecified in > WebAnno as Benjamin mentioned. Maybe we can extend this area of the spec > now that there are some real usecases. > > Best > Robert > >> On 12/10/19 2:28 AM, Simon Rainer wrote: >>> Hi Bridget, >>> >>> >>> interesting. It's certainly a bit of a different approach to my >>> original thoughts, but could be pretty applicable... (And actually it >>> might be closer to what we are doing now internally right now, >>> although in a proprietary way). To summarize how I understand this >>> (and how I'd apply it to my case) - please correct me if I'm wrong: >>> you are essentially creating an annotation that's attached to "one end >>> of the arrow", as it were. And then there's a single body in >>> there, that essentially models the "arrow" (link relation + target). >>> >>> >>> In terms of mechanics, I think that would totally work for us, too. I >>> wonder what people's views are on the body structure, though. I.e. the >>> body being a graph that works like a target :-) In any case: IMO a >>> good pattern. >>> >>> >>> Cheers & thanks, >>> >>> Rainer >>> >>> >>> >>> >>> ------------------------------------------------------------------------ >>> *Von:* Bridget Almas <balmas@gmail.com> >>> *Gesendet:* Montag, 9. Dezember 2019 22:45 >>> *An:* Benjamin Young; public-openannotation@w3.org >>> *Betreff:* Re: Expressing relations between targets? >>> >>> Hi Benjamin, >>> >>> >>> Sure. The use case is not exactly the same as Rainer's but I think it >>> has some similarities. Note that this was done with the OA data model >>> before it became the W3C model, so it's a little out of date that way >>> as well. >>> >>> >>> But anyway, the following is an annotation which reflects a user >>> annotating a bibliographic entry in a bibliographic dictionary. The >>> target of the annotation is the selection of the name Rhea in the >>> entry for the person entity named Cronus. The body of the annotation >>> is a graph which describes the bond between the resource identified by >>> the text "Rhea" with a Person entity with the uri for the Cronus >>> person entity (http://data.perseus.org/people/smith:cronus-1#this"). >>> >>> >>> To be more complete, under this model there would ideally be >>> >>> (1) an annotation which associated the text entry itself with the >>> person entity identifier for Cronus >>> >>> (2) an annotation which annotates the "Rhea" text with a uri for the >>> person entity for Rhea, >>> >>> (3) an annotation whose target is text selector for "He was married to >>> Rhea" and whose body is the graph of the relationship between the Rhea >>> entity and the Cronus entity >>> >>> >>> But we never got that far :-) >>> >>> >>> Best, >>> >>> Bridget >>> >>> >>> >>> { >>> "@context": "http://www.w3.org/ns/oa-context-20130208.json", >>> "@id": "urn:cite:perseus:pdljann.18IJy7d0QG2ztppbX3CCeg.1.1", >>> "annotatedBy": { >>> "@type": "foaf:Group", >>> "@id": "http://data.perseus.org/sosol/users/Andrew", >>> "foaf:member": [ >>> { >>> "foaf:name": "Jane Doe", >>> "@type": "foaf:person" >>> } >>> ] >>> }, >>> "@type": "oa:Annotation", >>> "dcterms:source": >>> "https://hypothes.is/api/annotations/18IJy7d0QG2ztppbX3CCeg", >>> "dcterms:title": "http://data.perseus.org/people/smith:cronus-1#this >>> identifies Rhea as object of snap:IntimateRelationship relationship in >>> urn:cts:pdlrefwk:viaf88890045.003.perseus-eng1:C.cronus_1", >>> "annotatedAt": "2015-10-07T15:30:27.211185+00:00", >>> "motivatedBy": "oa:identifying", >>> "serializedBy": { >>> "@id": "https://hypothes.is", >>> "@type": "prov:SoftwareAgent" >>> }, >>> "hasTarget": { >>> "@id": >>> "urn:cite:perseus:pdljann.18IJy7d0QG2ztppbX3CCeg.1.1#target-1", >>> "@type": "oa:SpecificResource", >>> "hasSelector": { >>> "@id": >>> "urn:cite:perseus:pdljann.18IJy7d0QG2ztppbX3CCeg.1.1#target-1-sel-1", >>> "@type": "oa:TextQuoteSelector", >>> "exact": "Rhea", >>> "prefix": "g the Titans. He was married to ", >>> "suffix": ",\n by whom he b" >>> }, >>> "hasSource": { >>> "@id": "urn:cts:pdlrefwk:viaf88890045.003.perseus-eng1:C.cronus_1" >>> } >>> }, >>> "hasBody": { >>> "@context": { >>> "snap": "http://onto.snapdrgn.net/snap#", >>> }, >>> "@graph": [ >>> { >>> "@id": >>> "urn:cite:perseus:pdljann.18IJy7d0QG2ztppbX3CCeg.1.1#rel-target", >>> "@type": "http://www.w3.org/ns/oa#SpecificResource", >>> "http://www.w3.org/ns/oa#hasSelector": { >>> "@id": >>> "urn:cite:perseus:pdljann.18IJy7d0QG2ztppbX3CCeg.1.1#target-1-sel-1", >>> "@type": "http://www.w3.org/ns/oa#TextQuoteSelector", >>> "http://www.w3.org/ns/oa#exact": "Rhea", >>> "http://www.w3.org/ns/oa#prefix": "g the Titans. He was married to ", >>> "http://www.w3.org/ns/oa#suffix": ",\n by whom he b" >>> }, >>> "hasSource": { >>> "@id": >>> "urn:cts:pdlrefwk:viaf88890045.003.perseus-eng1:C.cronus_1" >>> } >>> }, >>> { >>> "@id": "http://data.perseus.org/people/smith:cronus-1#this", >>> "snap:has-bond": [ >>> "urn:cite:perseus:pdljann.18IJy7d0QG2ztppbX3CCeg.1.1#bond-1-1" >>> ] >>> }, >>> { >>> "@id": >>> "urn:cite:perseus:pdljann.18IJy7d0QG2ztppbX3CCeg.1.1#bond-1-1", >>> "@type": "snap:IntimateRelationship", >>> "snap:bond-with": { >>> "@id": >>> "urn:cite:perseus:pdljann.18IJy7d0QG2ztppbX3CCeg.1.1#rel-target" >>> } >>> } >>> ] >>> } >>> } >>> >>> On 12/9/19 3:54 PM, Benjamin Young wrote: >>>> Hey Bridget, >>>> >>>> I'd love to see an example of how y'all structured that >>>> annotation...legal or not. ;) >>>> >>>> Thanks! >>>> Benjamin >>>> >>>> -- >>>> >>>> http://bigbluehat.com/ >>>> >>>> http://linkedin.com/in/benjaminyoung >>>> >>>> ------------------------------------------------------------------------ >>>> *From:* Bridget Almas <balmas@gmail.com> >>>> *Sent:* Monday, December 9, 2019 1:09 PM >>>> *To:* public-openannotation@w3.org <public-openannotation@w3.org> >>>> *Subject:* Re: Expressing relations between targets? >>>> >>>> To add to this -- in Perseids (first with Hypothes.is and then with >>>> Plokamos) we did something similar, setting the annotation body to a >>>> graph that encoded the relationship using the SNAP ontology. It >>>> wasn't perfect, particularly because we embedded the graph directly >>>> in the annotation body rather than referencing it via URI, which >>>> wasn't really legal, but it did allow us to express the nature of the >>>> relationship. Happy to provide more details if you're interested. >>>> >>>> >>>> Bridget >>>> >>>> >>>> On 12/9/19 12:14 PM, Benjamin Young wrote: >>>>> Thanks for writing, Simon! >>>>> >>>>> At this point, I'd suggest being careful not to reinvent RDF inside >>>>> Web Annotation. Something like "A is the father of B" or similar is >>>>> already better expressed via much simpler RDF (assuming you have >>>>> identifiers for the things. Mixing that into the annotation model >>>>> starts to create all kinds of painful indirection. 😕 >>>>> >>>>> That said, I'm noting a lack of "directionality" when targeting >>>>> resources in Web Annotation. I'm not (yet) certain it's Web >>>>> Annotation's job to record that, just noting that it currently isn't >>>>> possible. Appendix D has the things that get close: >>>>> https://www.w3.org/TR/annotation-model/#sets-of-bodies-and-targets >>>>> But even so, I don't think there's a way to turn "Orestes killed >>>>> Aegisthus" into an annotation per se. >>>>> >>>>> It might be best to narrow in on the "textual editing part" and >>>>> explore potential needs in that context. Otherwise, RDF proper would >>>>> likely do a much cleaner job of expressing the things you note below. >>>>> >>>>> Happy to discuss further! >>>>> Benjamin >>>>> >>>>> -- >>>>> >>>>> http://bigbluehat.com/ >>>>> >>>>> http://linkedin.com/in/benjaminyoung >>>>> >>>>> ------------------------------------------------------------------------ >>>>> >>>>> *From:* Simon Rainer <Rainer.Simon@ait.ac.at> >>>>> <mailto:Rainer.Simon@ait.ac.at> >>>>> *Sent:* Monday, December 9, 2019 8:28 AM >>>>> *To:* James Smith <jgsmith@gmail.com> <mailto:jgsmith@gmail.com> >>>>> *Cc:* public-openannotation@w3.org >>>>> <mailto:public-openannotation@w3.org> <public-openannotation@w3.org> >>>>> <mailto:public-openannotation@w3.org> >>>>> *Subject:* AW: Expressing relations between targets? >>>>> >>>>> Hi James, >>>>> >>>>> >>>>> I agree - we'd ideally want to identify the people via URIs. And >>>>> then the assertion "is father of" would be a statement between those >>>>> two entities. >>>>> >>>>> >>>>> However, within the annotation environment, the scenario is that >>>>> this would be like a note, made a human editor, on the text. So I'm >>>>> inclined to say that, we are indeed talking about a statement about >>>>> two strings of text - at least at this point in the workflow. >>>>> >>>>> >>>>> I guess the example is also not ideal here. The annotations might >>>>> just as well be highlighting two different text paragraphs, and the >>>>> annotator would drag an arrow between them saying "the author is >>>>> repeating him/herself here", or whatever. I.e. irrespective of what >>>>> ever "real world meaning" might be behind the arrow eventually, I'm >>>>> primarily interested in using WebAnno/Open Annotation to model the >>>>> textual editing part. >>>>> >>>>> >>>>> Cheers, >>>>> >>>>> Rainer >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------------------------------------------------ >>>>> >>>>> *Von:* James Smith <jgsmith@gmail.com> <mailto:jgsmith@gmail.com> >>>>> *Gesendet:* Montag, 9. Dezember 2019 14:18 >>>>> *An:* Simon Rainer >>>>> *Cc:* public-openannotation@w3.org >>>>> <mailto:public-openannotation@w3.org> >>>>> *Betreff:* Re: Expressing relations between targets? >>>>> How do we know who the text "Aegisthus" refers to? It's a name, so >>>>> it's identifying something, but who/what is the identity we >>>>> associate with the string "Aegisthus"? >>>>> >>>>> While we might all agree on whom we link the text to in our minds, >>>>> it might be helpful to add some context for the computer. I'd add >>>>> another property on the body that points to a dbpedia entry or other >>>>> unique URI that is useful in asserting the identity of the person >>>>> referenced in the text as "Aegisthus". Let's say it's >>>>> <dbpedia:Aegisthus>. The same could be done for "Orestes" with a >>>>> link (for the purposes of discussion) of <dbpedia:Orestes>. >>>>> >>>>> Once this is done, then it's a matter of asserting the >>>>> <dbpedia:Aegisthus> is related to <dbpedia:Orestes>. It's not about >>>>> the string "Aegisthus" having a familial relationship with the >>>>> string "Orestes", or that one annotation has a familial relationship >>>>> with another annotation, but about the person <dbpedia:Aegisthus> >>>>> having such a relationship with the person <dbpedia:Orestes>. They >>>>> just happen to be referenced as "Aegisthus" and "Orestes" in this >>>>> particular text. >>>>> >>>>> If we did make the relationship about the strings in the text, then >>>>> that relationship wouldn't be true for any other instances of the >>>>> strings "Aegisthus" and "Orestes" in this or any other text. It >>>>> would be about the two instances already highlighted. >>>>> >>>>> -- Jim >>>>> >>>>> On Mon, Dec 9, 2019 at 8:03 AM Simon Rainer <Rainer.Simon@ait.ac.at >>>>> <mailto:Rainer.Simon@ait.ac.at>> wrote: >>>>> >>>>> Dear list, >>>>> >>>>> >>>>> I have a question regarding the possible use of the WebAnno >>>>> model for expressing a relationship between two targets. >>>>> >>>>> >>>>> My scenario is the following: >>>>> >>>>> >>>>> *) I have two text annotations that identify people. Each >>>>> annotation has a single target (the person name in >>>>> a TextQuoteSelector, and character offset in a >>>>> TextPositionSelector); and a single body (with purpose >>>>> "identifying"). >>>>> >>>>> *) I now want to create a third annotation that expresses a >>>>> relation between person A and B. (E.g. "A is the father of B" or >>>>> similar.) >>>>> >>>>> >>>>> >>>>> >>>>> My approach would be to model this third annotation like the >>>>> sample below. I.e. with: >>>>> >>>>> >>>>> *) two targets, each holding the ID of one person annotation >>>>> >>>>> *) a body with the relation tag ("is the father of") >>>>> >>>>> *) a motivation of "linking" >>>>> >>>>> >>>>> According to the definition for "linking", that's not correct >>>>> though. "Linking" is supposed to express a link between body and >>>>> all targets, rather than a link between the targets. In >>>>> addition, there's also no way to express directionality. >>>>> >>>>> >>>>> Does anyone have recommendations on how to tackle such a use >>>>> case with WebAnno? I realize that (some of) this may actually be >>>>> out of scope for the spec as such. In this case, I'd appreciate >>>>> any thoughts, opinions, and possible recommendations on a custom >>>>> extension pattern, if needed. >>>>> >>>>> >>>>> Cheers & thanks in advance, >>>>> >>>>> Rainer >>>>> >>>>> >>>>> --- >>>>> >>>>> >>>>> { >>>>> "@context": "http://www.w3.org/ns/anno.jsonld", >>>>> "id": "#9ba844a7-e8ec-4127-ad12-1f7f16a240c6", >>>>> "type": "Annotation", >>>>> "motivation": "linking", >>>>> "body": [{ >>>>> "type": "TextualBody", >>>>> "value": "isRelatedTo" >>>>> }], >>>>> "target": [{ >>>>> "id": "#ce0ed291-766b-4763-8e91-90ce1d04e706" >>>>> }, { >>>>> "id": "#447d4bea-08dc-4bd0-ae51-31f5ed7a95a0" >>>>> }] >>>>> } >>>>> >>>>> >>>>> >>>>> >
Received on Wednesday, 11 December 2019 13:20:43 UTC