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