W3C home > Mailing lists > Public > public-openannotation@w3.org > August 2012

Re: Connecting multiple fragment selectors with individual bodies

From: Robert Sanderson <azaroth42@gmail.com>
Date: Mon, 13 Aug 2012 09:19:51 -0600
Message-ID: <CABevsUGE2iZAYUtSTgyJsS=w9uZzrWFvxqbeHEx2YSSpJpocPg@mail.gmail.com>
To: Leyla Jael García Castro <leylajael@gmail.com>
Cc: Paolo Ciccarese <paolo.ciccarese@gmail.com>, Lutz Suhrbier <l.suhrbier@bgbm.org>, public-openannotation@w3.org
To throw in my 2c...

I think there's a conceptual difference between linking separate
annotations and grouping them together as a single intellectual
entity.  If the annotations should always be transferred and used
together then it seems that the group should have an identity of its
own, rather than just links between individuals.

Attached is a diagram with a CompositeAnnotation (which could be a
subClass of rdf:Bag or ore:Aggregation) that groups together two other
annotations, a tag and a comment, that should be kept together.  It's
also available at

The thinking behind this approach:

*  In a group of (say) 5 annotations rather than just 2, you could
need 20 relationships (each of the five should link to all of the
others) to ensure they were all tied together.  This seems clumsy, to
say the least
*  The group gets an identity, and thus can be referred to.
*  The group can have all of the properties of an Annotation for
provenance, allowing a different agent to create the collection
compared to creating the individual annotations
*  It follows the CompositeSpecifier pattern that we already have
*  It would allow us to get rid of the hasSemanticTag "shortcut"

It does mean minting yet another identifier, but that's what you get
when you use RDF.



On Mon, Aug 13, 2012 at 8:35 AM, Leyla Jael García Castro
<leylajael@gmail.com> wrote:
> Hi Paolo, Lutz,
> On Mon, Aug 13, 2012 at 2:41 PM, Paolo Ciccarese <paolo.ciccarese@gmail.com>
> wrote:
>> Hi Lutz,
>> I tried to depict your example. I stripped out those details that I
>> thought where not relevant in regards to what you call the 'meta-annotation'
>> and I copied some n3 in the pictures to be brief.
> Using Paolo's images, @Lutz, if you did not have oax:hasSemanticTag, how
> would you related those two annotations? I think it is important to
> understand the kind of relations you are dealing with. Do they come from a
> controlled vocabulary? Do you want users to create a new annotation that
> relates the other two? In the last case, how do you expect users to
> "suggest"/"choose" relations?
>> I am trying to interpret what you are doing but I am not sure on what you
>> mean. Let me give you an example so you can tell me how close or far I am. I
>> look at a resource and I create a general comment saying 'there are several
>> typos'. Then I create some other annotations - what you call sub-annotations
>> - that, for instance, are detailing all the typos in the document. All the
>> sub-annotations point to a fragment of the document and also point to the
>> general comment as you consider them parts of that.
> In Paolo's example, would a relationship such as "exampleOf" or "subsetOf"
> make sense? What is your use case for relating annotations?
>> Is this similar to what you are trying to do? The use of
>> oax:hasSemanticTag is certainly very far from what we created it for.
>> Rob and Kevin, I am wondering if the oax:basedOn would work here. In other
>> words I have a general comment 'there are several typos' and then through
>> the relationship oax:basedOn I point to the sub-annotations that help me
>> supporting the general comment.
> @Paolo, what about this other scenario: I annotate a fragment of a document
> with a note "aim" (note 1) and later another fragment with a note "result"
> (note2). A relationship between them could be note2 supports/addresses note
> 1. In that particular case, I guess oax:basedOn would not work. So, could I
> use a third annotation to establish that statement? It is more or less what
> people do when reading and analyzing documents, you make some notes and some
> times you relate them.
>> Also, Lutz, I am not completely sure on your use of dctypes:Dataset. Could
>> you tell me more about it?
>> On Mon, Aug 13, 2012 at 9:00 AM, Lutz Suhrbier <l.suhrbier@bgbm.org>
>> wrote:
>>> Hi Leyla and Paolo,
>>> please find attached the export of the very simple model from my
>>> Annotation JUnit-Test in rdf-xml and N3.
>>> It simply creates two types of Agents and Institutions, serving as
>>> annotator and generator of a single "meta" annotation, which include a
>>> single "sub" annotion which
>>> The annotation is about a source target with the URI
>>> "urn:guid:BGBM:Bridel+Herbar:Bridel-1-12:1344860699609:http%3A%2F%2Fwww.tdwg.org%2Fschemas%2Fabcd%2F2.06".
>>> The "meta" - annotation URI is
>>> urn:guid:bgbm:annosys:1344860701104:1344860701104.
>>> The "sub"annotation outlining the XPath within the source target XML
>>> document is urn:guid:bgbm:annosys:1344860701292:1344860701292, and uses the
>>> hasSemantic Tag pointing at the enclosing "meta"-annotation.
>>> The specific Target describing the XML Element within source target is
>>> urn:guid:bgbm:annosys:1344860701296:1344860701296.
>>> Furthermore, I introduced a XPath selector called <oax:xpath>, which
>>> simply includes an XPath expression to describe the XML element to be
>>> annotated.
>>> The body of each "sub" annotation (XML Element annotation) may comprise a
>>> new value and/or a comment related to the annotated XML element.
>>> I hope, my explication is not too complicated. If you have any questions,
>>> please come back to me.
>>> BTW. As I am quite new to RDF, what tool are you using to visualise all
>>> the RDF graphs in your documentation ? Protegé ?
>> All the figures you see in the documentation are actually manually created
>> with Omnigraffle.
> I would also recommend CMaps.
> Cheers,
> Leyla
>> Best,
>> Paolo
>>> Hi Lutz,
>>> On Wed, Aug 8, 2012 at 2:53 PM, Lutz Suhrbier <l.suhrbier@bgbm.org>
>>> wrote:
>>>> Hi,
>>>> I am currently trying to adopt OA to an application scenario, which I
>>>> actually didn't found described here.
>>>> The plan is to annotate XML documents in a way that the annotation
>>>> relates one or more XML element values(let's call them subannotations),
>>>> which can be given a domain specific annotation type.
>>> So, if I understand well, you have one annotation A1 and another one A2
>>> and you want to create an annotation to relate them? Are you using
>>> predefined relations? or will you allow people to define the relation on the
>>> fly? for instance, using the body of the annotation as the suggested name
>>> for the relation.
>>> We have worked on a similar scenario but it is not yet compatible with
>>> OA. Anyway, if you provide some more information, maybe as Paolo suggests an
>>> example, it would make easier to understand better your scenario.
>>> cheers,
>>> Leyla
>>>> As the target selection of subannotations(XML Elements) can be realised
>>>> by the usage of multiple specific targets in combination with fragment
>>>> selectors, there is no obvious and standard conform way of assigning
>>>> individual annotated values(bodies) to the selected targets.
>>>> Currently, I implemented a workaround by applicating the
>>>> oax:hasSemanticTag predicate to each subannotation "pointing" at an
>>>> embracing "meta" annotation.
>>>> Even though that workaround appears to be doing its job, I am wondering
>>>> 1) if that is the intended way of using hasSemanticTag ?
>>>> 2) if there is no other standard conform method reflecting that scenario
>>>> which can actually reflect those requirements ?
>>>> With regard to a potential approach to be integrated within the
>>>> standard, simply allowing multiple targets and multiple bodies does not
>>>> appear to solve that question adequately, as the relationship between the
>>>> specific target and the body (subannotation) would not be reflected. As the
>>>> crucial point is the relationship between target and body, a target
>>>> predicate like "hasBody" would be a better approach, at least from my
>>>> perspective. One may even think about moving the "hasBody" predicate from
>>>> oa:annotation to oa:target, as I see no relevant application of having
>>>> annotations just consisting of a body without any target ?
>>>> Anyway, doing so should not hinder any otherwise possible logical
>>>> construction of annotations, or does it ? Also, it does not preclude
>>>> annotations having targets pointing at the same body, nor does it preclude
>>>> targets having multiple bodies if the discussion shows that this is somewhat
>>>> useful.
>>>> I have to mention, that this is my first project using RDF or OA, so may
>>>> be I am in some topic completely misleaded. But I would appreciate if my
>>>> point could be somehow discussed and reflected in an upcoming release of the
>>>> standard.
>>>> best regards
>>>> Lutz Suhrbier
>> --
>> Dr. Paolo Ciccarese
>> http://www.paolociccarese.info/
>> Biomedical Informatics Research & Development
>> Instructor of Neurology at Harvard Medical School
>> Assistant in Neuroscience at Mass General Hospital
>> +1-857-366-1524 (mobile)   +1-617-768-8744 (office)
>> CONFIDENTIALITY NOTICE: This message is intended only for the
>> addressee(s), may contain information that is considered
>> to be sensitive or confidential and may not be forwarded or disclosed to
>> any other party without the permission of the sender.
>> If you have received this message in error, please notify the sender
>> immediately.

(image/png attachment: composite_annotation.png)

Received on Monday, 13 August 2012 15:20:26 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 20:22:01 UTC