You're using a ConceptMapper class which contains @ExternalResource 
annotations, right?
Otherwise, I'd be surprised if this worked, because otherwise there should be 
no 
external resource dependencies defined in the sentimentMapper description.

-- Richard

On 29.10.2013, at 14:05, Jens Grivolla <[email protected]> wrote:

> I got it to work with the following:
> 
>>      ExternalResourceDescription myDict = createExternalResourceDescription(
>>              CompiledDictionaryResource_impl.class,
>>              "file:dictionary.dic");
>> 
>>      AnalysisEngineDescription sentimentMapper = createEngineDescription(
>>              ConceptMapperBM.class,
>>              ConceptMapperBM.PARAM_DICT_FILE, myDict,
>>              ConceptMapperBM.PARAM_ANNOTATION_NAME, 
>> Sentiment.class.getCanonicalName(),
>>              <lots of other parameters because too many are mandatory>
>>              );
> 
> Apparently no explicit binding is necessary...
> 
> Bye,
> Jens
> 
> On 10/24/2013 10:00 PM, Richard Eckart de Castilho wrote:
>> It largely depends on how you use the ConceptMapper. External resources 
>> require three things to work:
>> 
>> 1) an external resource description
>> 2) a declaration on the analysis engine that it accepts an external resource 
>> (a dependency)
>> 3) a binding binding between the two
>> 
>> Since the ConceptMapper is not an uimaFIT component, i.e. it is not using 
>> the @ExternalResource annotation, uimaFIT cannot create 1 automatically. So 
>> you can create it manually using createDependencyAndBind(), which performs 
>> steps 2 (using the createDependency() call) and 3 (using a bindResource() 
>> call). Of course, you can also manually call createDependency() and 
>> bindResource() separately - which I think you were asking for.
>> 
>> If just pass the external resource description to the 
>> createEngineDescription() call, it only does 3, but not 2 - this approach 
>> only works if the AE you create the descriptor for uses the 
>> @ExternalResource annotation to declare external resources.
>> 
>> -- Richard
>> 
>> On 24.10.2013, at 17:56, Jens Grivolla <[email protected]> wrote:
>> 
>>> Ok, I guess I don't actually need to do that, ConceptMapper only looks for 
>>> the "key" and doesn't seem to know about the indirect binding, right?
>>> 
>>> And in uimaFIT if I want to bind the same resource to several AEs I use 
>>> createExternalResourceDescription() and then just pass it like any other 
>>> parameter to createEngineDescription()?
>>> 
>>> Bye,
>>> Jens
>>> 
>>> On 10/24/2013 05:28 PM, Jens Grivolla wrote:
>>>> Hi, I'm trying to run ConceptMapper from uimaFIT, but
>>>> createDependencyAndBind doesn't seem to allow to separate declaring the
>>>> external resource (with a "name") and binding that "name" to a "key". I
>>>> looked through ExternalResourceFactory but didn't find any method that
>>>> seems to obviously do what I need. What should I do?
>>>> 
>>>> Btw, I updated ConceptMapper to be based on JCasAnnotator_ImplBase
>>>> instead of Annotator_ImplBase and TextAnnotator (both deprecated).
>>>> 
>>>> Bye,
>>>> Jens

Reply via email to