Monday, 23 April 2018

AEM Assets Smart Search Capability with Apache Joshua

The latest AEM (AEM 6.4) provides a smart search capability for AEM Assets by translating the search terms. Let us understand more about this here.

What is Apache Joshua Language Packs ?
Wiki says "Apache Joshua is a statistical machine translation decoder for phrase-based, hierarchical, and syntax-based machine translation, written in Java". As of now it has around 64 language packs available.

The new AEM provides smart searches with language translation across AEM content & Assets. Which means when we do a search of term 'Man'(English)/'hombre'(Spanish)/'homme'(French) gives the same assets result which avoids the manual content translation.

How it works?
Apache Oak Machine Translation OSGi bundle once installed, helps to check feasibility of translating a search term utilizing registered language packs. On the back-end the Apache Joshua provides the language packs support.

Steps involved in search translation:
  • User searches a English/ Non-English term in AEM search box
  • With help of registered language packs the Apache Oak Machine Translation bundle provides a list of translated terms.
  • Now each translated terms are executed as queries to AEM search index.
  • The results are collected and displayed to user

AEM Smart Search Process


Pre-requisites for adding the functionality.
1) Apache Oak Search Machine Translation OSGi bundle must be installed and configured
2) Apache Joshua language packs(Open source) that contain the translation rules (Specific to our needs; If we need Spanish, we need to install Spanish Language Pack)

How to setup 'Smart Translation Search with AEM Assets'?
  • Download and install the Oak Search Machine Translation OSGi bundle
  • Download and update the Apache Joshua language packs
  • Restart AEM - Ensure to update heap memory allocation
  • Update OSGi configurations - To register the language packs via Apache Jackrabbit Oak Machine Translation Fulltext Query Terms Provider

No comments:

Post a Comment