[ 
https://issues.apache.org/jira/browse/UIMA-6153?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16980895#comment-16980895
 ] 

Marshall Schor commented on UIMA-6153:
--------------------------------------

Right.  The generic design is using the type info from the surrounding context. 
 When you use Sentence.class, it knows that to be Sentence, which is a subtype 
of Annotation.

I think you have a point, that if the surrounding context doesn't provide a 
type context, it should (for things belonging just to annotation index kinds of 
things), specify the type as Annotation, not TOP.

I'm not sure how to do that... might take some investigating...

> select.covering should bind to AnnotationFS
> -------------------------------------------
>
>                 Key: UIMA-6153
>                 URL: https://issues.apache.org/jira/browse/UIMA-6153
>             Project: UIMA
>          Issue Type: Improvement
>          Components: UIMA
>    Affects Versions: 3.1.1SDK
>            Reporter: Richard Eckart de Castilho
>            Priority: Major
>
> The following code does not compile because select.covering() uses TOP 
> instead of AnnotationFS as the generic type. Consequently, getBegin() and 
> getEnd() are not available on the "s" used in the filter expressions. But 
> since covering() only makes sense for annotations, binding the generic type 
> to TOP doesn't seem to make much sense:
> {{return aCas.select(getType(aCas, Sentence.class)).covering(aBegin1, 
> aBegin1)}}
> {{    .filter(s -> s.getBegin() <= aBegin1 && aBegin1 < s.getEnd())}}
> {{    .filter(s -> s.getBegin() <= aBegin2 && aBegin2 < 
> s.getEnd()).findFirst()}}
> {{    .isPresent();}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to