uima-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <...@uima.apache.org>
Subject [jira] [Commented] (UIMA-5793) FSUtil.getFeature fails when called with Object.class on multi-valued features
Date Sun, 08 Jul 2018 07:54:00 GMT

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

ASF GitHub Bot commented on UIMA-5793:
--------------------------------------

asfgit commented on issue #13: [UIMA-5793] FSUtil.getFeature fails when called with Object.class
on multi-valued features
URL: https://github.com/apache/uima-uimafit/pull/13#issuecomment-403269882
 
 
   
   Refer to this link for build results (access rights to CI server needed): 
   https://builds.apache.org/job/Apache%20UIMA%20uimaFIT%20(GitHub%20PR)/25/
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


> FSUtil.getFeature fails when called with Object.class on multi-valued features
> ------------------------------------------------------------------------------
>
>                 Key: UIMA-5793
>                 URL: https://issues.apache.org/jira/browse/UIMA-5793
>             Project: UIMA
>          Issue Type: Improvement
>          Components: uimaFIT
>            Reporter: Richard Eckart de Castilho
>            Assignee: Richard Eckart de Castilho
>            Priority: Minor
>             Fix For: 3.0.0uimaFIT, 2.5.0uimaFIT
>
>
> When FSUtil.getFeature(fs, feature, type) is called on a feature that is multi-valued
and type is Object, then the method fails with a message like
> {noformat}
> Unable to coerce value of feature [de.tudarmstadt.ukp.inception.api.kb.type.Fact:object]
with type [de.tudarmstadt.ukp.inception.api.kb.type.FactObjectLink[]] into [java.lang.Object]
> {noformat}
> This is because Object is no an array or collection type. However, FSUtil.getFeatures
should handle this as a special case. When the Object is used, basically any return value
is acceptable. FSUtil should have defined behavior here, e.g. returning either an array or
a list representation of the multi-value.
> This is what current work-around code looks like:
> {code}
>     private Object getValue(FeatureStructure fs, AnnotationFeature aFeature)
>     {
>         Object value;
>         
>         Feature f = fs.getType().getFeatureByBaseName(aFeature.getName());
>         if (f.getRange().isPrimitive()) {
>             value = FSUtil.getFeature(fs, aFeature.getName(), Object.class);
>         }
>         else if (FSUtil.isMultiValuedFeature(fs, f)) {
>             value = FSUtil.getFeature(fs, aFeature.getName(), List.class);
>         }
>         else {
>             value = FSUtil.getFeature(fs, aFeature.getName(), FeatureStructure.class);
>         }
>         
>         return value;
>     }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message