Sorry, I read over the mention that it is only a toy extension... so maybe ignore the advice with the actions ;-)
Can you check whether there is a Type in the typesystem with the short name "MonthsList"? Best, Peter Am 05.12.2013 09:58, schrieb Peter Klügl: > Hi, > > Am 04.12.2013 18:33, schrieb Sebastian: >> Hi, >> >> I'm highly interested in ruta, and its potential applications in industrial >> applications. Right know I'm trying to create a simple toy condition >> extension that is simply a case insensitive INLIST condition. It is >> completely based on the InListCondition class, I also declared an >> implementation of the IRutaConditionExtension interface. >> >> With primitve types everything seems to work great, except when the >> condition is used with a variable : >> >> STRINGLIST MonthsList = {"january", ...}; >> DECLARE Month; >> ANY{INSENSITIVEINLIST(MonthsList) -> MARK(Month)}; >> >> I get a class cast exception when the condition is being created, because >> MonthsList is a SimpleTypeExpression and I'm expecting a >> StringListExpression. >> >> Am I doing something wrong ? I suppose there is a way to resolve the >> variable to the actual list, but I missed it somehow. >> > It's hard to say what went wrong. My first guess would be that there is > a problem in your extension. I just verified that INLIST works at all (I > haven't used it myself for a long time). > > The example works with INLIST: > > STRINGLIST MonthsList = {"january"}; > DECLARE Month; > ANY{INLIST(MonthsList) -> MARK(Month)}; > > Can you post the stacktrace of the exception? Or can you send me the > source code of your extension (in case you do not want to post it on a > public mailing list)? > > Anyways, the usage of INLIST makes only sense if you want to work on > dynamic dictionaries that may change during rule execution. Have you > taken a look at the MARKFAST or TRIE action? > http://uima.apache.org/d/ruta-current/tools.ruta.book.html#ugr.tools.ruta.language.actions.markfast > They already have options for case-insensitivity and are overall faster > and more powerful. > > Best, > > Peter > > PS: You can, of course, also post a feature request on JIRA for adding a > case-insensitivity to the INLIST condition :-) > > >> Any ideas on how that could be done? >> >> Regards >> >> Sebastian >>