AW: Restricting an aggregate engine to a substring or mention

2014-06-25 Thread Armin.Wegner
Hi Richard,

you're right. I have to use new CASes or views. Or I can use the same CAS and 
restrict the analysis engine to a substring. But that would imply having 
parameters for the substring's begin and end offsets in the analysis engine: 
Oh, wait a minute, wasn't that my original question?

Cheers,
Armin 

-Ursprüngliche Nachricht-
Von: Richard Eckart de Castilho [mailto:wyldf...@users.sourceforge.net] 
Gesendet: Mittwoch, 25. Juni 2014 12:06
An: user@uima.apache.org
Betreff: Re: Restricting an aggregate engine to a substring or mention

Hi Armin,

how would you do the last step: telling the nested AE to process only the 
mentions of the segment type? 

As far as I can see, it again boils down to the point that the 
SegmentProcessingAE would internally create one or more new CASes or view, pass 
those to the nested AE, and then would have to merge the results produced by 
the nested AE back into the original CAS.

Cheers,

-- Richard

On 23.06.2014, at 08:53, armin.weg...@bka.bund.de wrote:

> Hello!
> 
> I've got another maybe not so good idea. Why not pass an aggregate analysis 
> engine as a parameter? First, build an aggregate analysis engine the usual 
> way. Second, serialize it to an XML-string. Third, pass that string to the 
> SegmentProcessingAE as String parameter together with another parameter 
> denoting the segment types. Fourth, deserialize the aggregate engine. Last, 
> Iterate over all mentions of the segment type and process each segment with 
> the aggregate engine. Does this work?
> 
> What do you think?
> 
> Armin



pgpnkovzqYuJi.pgp
Description: PGP signature


AW: Restricting an aggregate engine to a substring or mention

2014-06-22 Thread Armin.Wegner
Hello!

I've got another maybe not so good idea. Why not pass an aggregate analysis 
engine as a parameter? First, build an aggregate analysis engine the usual way. 
Second, serialize it to an XML-string. Third, pass that string to the 
SegmentProcessingAE as String parameter together with another parameter 
denoting the segment types. Fourth, deserialize the aggregate engine. Last, 
Iterate over all mentions of the segment type and process each segment with the 
aggregate engine. Does this work?

What do you think?

Armin

-Ursprüngliche Nachricht-
Von: Oliver Christ [mailto:ochr...@ebsco.com] 
Gesendet: Freitag, 20. Juni 2014 18:23
An: user@uima.apache.org
Betreff: RE: Restricting a aggregate engine to a substring or mention

Hi Armin, 

I'm not aware of a generic mechanism to restrict an AN's scope of processing, 
but I'm very new to UIMA. 

It seems that Petr's approach does address the general case though: if some AE 
doesn't support "zones", create a new view containing just the content you want 
to have processed, and run the AE on that view.

Cheers, Oli

-Original Message-
From: armin.weg...@bka.bund.de [mailto:armin.weg...@bka.bund.de]
Sent: Friday, June 20, 2014 4:12 AM
To: user@uima.apache.org
Subject: AW: Restricting a aggregate engine to a substring or mention

Hi Oli!

If I get it right, the ability for restricting processing to mentions of given 
types is inherited from a base class. So every analysis engine that should do 
this, must inherit from that base clase. Sure, that's one way of doing it. But 
it's part of the analysis engine.

Thanks,
Armin

-Ursprüngliche Nachricht-
Von: Oliver Christ [mailto:ochr...@ebsco.com]
Gesendet: Dienstag, 17. Juni 2014 20:48
An: user@uima.apache.org
Betreff: RE: Restricting a aggregate engine to a substring or mention

dkpro-core's BreakIteratorSegmenter (rather: its base class) takes the same 
approach. It allows you to specify that segmentation should occur within 
"zones", defined by some other annotation type.

https://code.google.com/p/dkpro-core-asl/source/browse/de.tudarmstadt.ukp.dkpro.core-asl/trunk/de.tudarmstadt.ukp.dkpro.core.api.segmentation-asl/src/main/java/de/tudarmstadt/ukp/dkpro/core/api/segmentation/SegmenterBase.java


Usage:

pipeline.add(createEngineDescription(BreakIteratorSegmenter.class,
BreakIteratorSegmenter.PARAM_ZONE_TYPES, new String[] { 
MyZoneAnnotation.class.getName() }));

Cheers, Oli

-Original Message-
From: Thomas Ginter [mailto:thomas.gin...@utah.edu]
Sent: Tuesday, June 17, 2014 2:20 PM
To: user@uima.apache.org
Subject: Re: Restricting a aggregate engine to a substring or mention

We do this by having a parameter for some of our standard annotators, like our 
RegexAnnotator, that allows the user to specify an annotation type.  If a type 
is specified then the operations of the annotator are restricted to the covered 
text of the annotation type instances specified.  If no annotation type is 
provided then the entire document is assumed.  In that way we can have 
annotators that perform some logic to find the regions of interest and then the 
subsequent annotators only operate on those regions.

Thanks,

Thomas Ginter
801-448-7676
thomas.gin...@utah.edu




On Jun 12, 2014, at 4:00 AM, Dr. Armin Wegner  
wrote:

> Hello!
> 
> Is there an UIMA component which restricts an aggregated analysis 
> engine to a substring of the document text or to mentions of a given 
> annotation type? That is, is there a UIMA aquivalent to GATE's Segment 
> Processing PR?
> 
> Thanks,
> Armin



pgpizVZUpX8Fn.pgp
Description: PGP signature