uima-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Eddie Epstein <eaepst...@gmail.com>
Subject Re: A shared object graph between various views/sofas
Date Tue, 14 Aug 2012 13:53:43 GMT
A View, basically, is just an index and a sofa. All FS are stored
in the common CAS "heaps".

The only mechanism for passing results from annotator-a to
annotator-b is by adding FS to an index. Annotators can
be view-unaware, in which case sofa-mapping is setup
to pass the correct View to the annotator. Or annotators can
be view-aware and they must have logic to know which views
to look for.

Given that views are application specific, an app can create
a "global" view to index stuff.


On Mon, Aug 13, 2012 at 4:08 PM, Shahim Essaid <shahim@essaid.com> wrote:
> Thank you Eddie.  So I can index a non-AnnotationBase FS in any view
> but the indexes are still view specific, correct?
> If "annotator-a" in view "view-a" creates a FS and there is a down
> stream "annotator-b" that operates in "view-b" and it needs to check
> for the existence of the same FS, how should "annotator-a" store it
> and how should "annotator-b" find it without them being aware of each
> others' views and indexes?  Is there a global place (global index?) to
> store FS objects in a CAS if the indexes are view specific?
> Thanks,
> Shahim
> On Mon, Aug 13, 2012 at 12:07 PM, Eddie Epstein <eaepstein@gmail.com> wrote:
>> Hi,
>> All feature structures in a CAS are accessible from any view.
>> That is, an FS-reference can be to any FS in the CAS.
>> The only restriction is that an annotation FS can only be indexed
>> in the view containing the sofa referenced by the annotation.
>> An FS type that is not derived from any annotation type
>> can be indexed in multiple views. So a "global graph" type
>> could be indexed in every view.
>> Not sure which aspect of your question this answers, hopefully
>> something :)
>> Eddie
>> On Mon, Aug 13, 2012 at 1:59 PM, Shahim Essaid <shahim@essaid.com> wrote:
>>> Hi All,
>>> Is there a way for creating a single arbitrary object graph (of
>>> subtypes of Top) that is accessible from various CAS views? I have a
>>> possible use-case where I would like to reconstruct the "domain,
>>> world, situation, etc." that the various sofas are about. In this
>>> use-case, I would add annotations to specific sofas and indexes as
>>> usual but I would also like to add objects to this single shared
>>> object graph and relate the annotations and object to each other.
>>> I have not tried this yet but it might be possible to add an "IsAbout"
>>> annotation that spans the whole sofa and one of its features is a
>>> "situation" feature to a "Situation" object and then make sure that
>>> this situation object is also referred to from any newly created sofas
>>> and their corresponding "IsAbout" annotations.  Would this work?  Is
>>> there a better way for accomplishing this?
>>> Thank you,
>>> Shahim

View raw message