uima-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Thilo Goetz <twgo...@gmx.de>
Subject Re: AnnotationFS.getCoveredText returns null?
Date Thu, 23 Feb 2012 14:38:29 GMT
On 23/02/12 15:28, Jörn Kottmann wrote:
> On 02/23/2012 03:14 PM, Tommaso Teofili wrote:
>> BTW it looks like this piece of code is prone to error due to incorrect
>> setting of begin and end.
>> If I have a text 'abc' and set begin to 0 and end to 5 then I'll have an
>> error only when I call the getCoveredText() method so I think we should
>> either check if the input is correct in setters or inside
>> getCoveredText()
>> to avoid IndexOutOfBoundExceptions generated from the substring method.
>> Am I right or did I miss something that already prevents that situation?
> Well, the one who writes to the CAS needs to get this right. To make it
> fail fast you have to throw an exception when an invalid range is set.
> We could throw an IllegalArgumentException when an AnnotationFS is
> created, but
> might break existing working code. 

Indeed.  I sometimes use negative values for offsets when I want
to create an annotation but don't know what the final offsets will
be.  Of course it is my responsibility to later set proper values.


Or add options to the serializer and
> deserializer to throw an exceptions if ranges are incorrect (and other
> things).
> The Cas Editor cannot really handle this currently. I guess we should
> get it fixed
> and then clearly display to the user that something is wrong..
> Jörn

View raw message