granite/ui/components/coral/foundation/form/multilingualfield this field/component not able to find while building the metadata build form in AEM as cloud. | Community
Skip to main content
Level 2
May 22, 2025
Solved

granite/ui/components/coral/foundation/form/multilingualfield this field/component not able to find while building the metadata build form in AEM as cloud.

  • May 22, 2025
  • 4 replies
  • 730 views

Hi,

     I Am trying to create schema inside AEM AS cloud there i am looking for multilingual text field for Allows authors to input content in multiple languages but i am not able to find multilingual text field component inside schema build form. Is there any alternative way to achieve this in AEM as cloud service. your suggestions/Answers will be very helpful to me. Thanks in advance.

 

Thanks.

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by Aditya_Chabuku

Hi @prachiat1 ,

 

I think this field is deprecated & no more available in documentation -> https://developer.adobe.com/experience-manager/reference-materials/6-5/granite-ui/api/jcr_root/libs/granite/ui/index.html 

 

If you want to use multiple languages for certain field, I suggest use i18n & locales. find more here -> https://experienceleague.adobe.com/en/docs/experience-manager-65/content/implementing/developing/components/internationalization/i18n 

 

 

 

4 replies

Aditya_Chabuku
Community Advisor
Aditya_ChabukuCommunity AdvisorAccepted solution
Community Advisor
May 22, 2025

Hi @prachiat1 ,

 

I think this field is deprecated & no more available in documentation -> https://developer.adobe.com/experience-manager/reference-materials/6-5/granite-ui/api/jcr_root/libs/granite/ui/index.html 

 

If you want to use multiple languages for certain field, I suggest use i18n & locales. find more here -> https://experienceleague.adobe.com/en/docs/experience-manager-65/content/implementing/developing/components/internationalization/i18n 

 

 

 

Thanks,Aditya Chabuku
AmitVishwakarma
Community Advisor
Community Advisor
May 23, 2025

Hi @prachiat1 ,

AEM as a Cloud Service, considering that granite/ui/components/coral/foundation/form/multilingualfield is deprecated and no longer available in AEMaaCS.

granite/ui/components/coral/foundation/form/multilingualfield

Used to provide multilingual input in Classic UI

Deprecated & unsupported in AEM as a Cloud Service or Touch UI Forms.


Try below options:

Use language copy + i18n pattern:

Create a generic metadata field (e.g., dc:title) and rely on language folders + AEM translation workflows to manage values per locale.


Option 1: Use i18n Support with Metadata Schema Inheritance

Steps:

Create a regular metadata text field

Inside /conf/<your-project>/settings/dam/metadata, add a field like:

<dc:title jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/form/textfield" fieldLabel="Title" name="./dc:title" required="false" i18n="true"/>

Setting i18n="true" tells AEM to use language-specific translations if available.

2. Organize assets by language folder structure

For example:

/content/dam/en/ /content/dam/fr/ /content/dam/de/

Each language folder can hold its own metadata values for the same asset (via language copies or translations).

Use AEM’s Translation Projects

You can trigger a translation job for asset metadata to generate locale-specific content via:

Manual editing

Machine translation integration

Human translation providers


Option 2: Custom Multilingual Input via Composite Field (Advanced)

If you must show multiple language input fields in one form:

Build a composite field like:

<multilingualTitle jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/form/multifield" fieldLabel="Multilingual Title"> <field jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/form/fieldset"> <en jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/form/textfield" fieldLabel="English" name="./dc:title@en"/> <fr jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/form/textfield" fieldLabel="French" name="./dc:title@fr"/> <de jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/form/textfield" fieldLabel="German" name="./dc:title@de"/> </field> </multilingualTitle>

You manually define language fields, then access values with dc:title@fr, dc:title@en, etc.


Regards,
Amit

PrachiAt1Author
Level 2
May 24, 2025

Hi @amitvishwakarma  Thanks for reply . I tried second option inside schema but when i am using this i am getting schema filed like this

.

There language specific text fields are not visible .only add button works. Your help will be appreciated.

Thanks.

 

Level 4
May 23, 2025

Hi @prachiat1 ,

 

The granite/ui/components/coral/foundation/form/multilingualfield component you're looking for has been deprecated in AEM as a Cloud Service (AEMaaCS) and is no longer available in the schema builder form.

 

Below are some approaches to achieve multilingual content input in AEM Cloud Service:

 

1. Language Copies with i18n Support (Recommended):- This leverages AEM's built-in translation framework, works seamlessly with language copies and translation workflows and no custom development required.

 

<field jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/form/textfield" fieldLabel="Title" name="./dc:title" i18n="true"/>

 

2. Custom Composite Field with Language Variants :- Works well for fixed sets of languages

 

<multilingualTitle jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/form/multifield" fieldLabel="Multilingual Title"> <field jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/form/fieldset"> <en jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/form/textfield" fieldLabel="English" name="./dc:title@en"/> <fr jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/form/textfield" fieldLabel="French" name="./dc:title@fr"/> </field> </multilingualTitle>

 

3. Context-Aware Configuration Approach:-

 

For more advanced scenarios where you need runtime-editable translations without code deployments: Create context-aware configurations for each locale, store translations as configuration properties and reference these in your components instead of i18n dictionaries.

kautuk_sahni
Community Manager
Community Manager
June 26, 2025

@prachiat1 Just checking in — were you able to resolve your issue?
We’d love to hear how things worked out. If the suggestions above helped, marking a response as correct can guide others with similar questions. And if you found another solution, feel free to share it — your insights could really benefit the community. Thanks again for being part of the conversation!

Kautuk Sahni