Dear Rupert,

Thanks for your instructions! The documents your provided help a lot!
I also checked out the source code of some implementations of
EnhancementChain you mentioned. Now, I think I understand how it
works. I'll turn to you for help if necessary. Thanks again!

Best regards,
Siwei Yu

On Sat, Mar 24, 2012 at 12:46 AM, Rupert Westenthaler
<[email protected]> wrote:
> Hi Siwei Yu
>
> On Fri, Mar 23, 2012 at 3:51 PM, Siwei Yu <[email protected]> wrote:
>
>> 2. For Rupert, could you please show me some examples of Enhancement
>> Chain? I've studied some Enhancement Engines here [1]. I can
>> understand how an individual Enhancement Engine works and how to
>> implement a new one. After studying [2], I find Enhancement Chain a
>> little confusing. Could you please lead me to the source code of the
>> implementation of a concrete Enhancement Chain? I want to know the
>> data I/O interface from one Enhancement Engine to another. In other
>> words, how do the output of an Enhancement Engine become the input of
>> another one?
>
> It is much easier as that ^^
>
> The ContentItem [1] holds the state of the enhancement process. More 
> precisely the state is represented by [1..n] content parts and the metadata. 
> See the documentation for details. This state is initialized based on the 
> request parameter and than modified by EnhancementEngines.
>
> EnhancementChains provide the configuration - workflow - how a ContentItem is 
> enhanced. This configuration is formalized as ExecutionPlan [2] an executed 
> by the EnhancementJobManager [3]. All the different EnhancementChain 
> implementations [2a,b,c] do use the same ExecutionPlan schema. The only 
> difference is the configuration on the user level (see documentation for 
> details).
>
>
> Concluding:
>
> The ContentItem (state) is parsed from EnhancementEngine to 
> EnhancementEngine. The order of execution is defined within the ExecutionPlan 
> provided by the EnhancementChain. The EnhancementJobManager is responsible 
> for executing the ExecutionPlan. I think the figure at [4] visualizes this 
> best.
>
> hope this helps
>
> best
> Rupert
>
>
> [1] http://incubator.apache.org/stanbol/docs/trunk/enhancer/contentitem.html
> [2] 
> http://incubator.apache.org/stanbol/docs/trunk/enhancer/chains/executionplan.html
> [2a] 
> http://incubator.apache.org/stanbol/docs/trunk/enhancer/chains/listchain.html
> [2b] 
> http://incubator.apache.org/stanbol/docs/trunk/enhancer/chains/weightedchain.html
> [2c] 
> http://incubator.apache.org/stanbol/docs/trunk/enhancer/chains/graphchain.html
> [3] 
> http://incubator.apache.org/stanbol/docs/trunk/enhancer/enhancementjobmanager.html
> [4] 
> http://incubator.apache.org/stanbol/docs/trunk/enhancer/enhancementjobmanager.html#enhancement_process

Reply via email to