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.

--Thilo

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
> 
> 
> 


Mime
View raw message