Language and font settings in structured documents

You can author and proofread your content in different language in both structured and unstructured documents (DITA 1.2, DITA 1.3, and LwDITA). Select any one of the 46 languages bundled with FrameMaker and add it as an attribute value for @xml:lang for your structured content. To add an attribute value for @xml:lang, you should follow the BCP 47 standard defined by IETF (Internet Engineering Task Force).

< AttributeForXMLLang > = < BCP47-code> xml: lang = en-US xml: lang = zh-TW

FrameMaker sets the various properties of Paragraph Designer based on the language setting in the @xml:lang attribute from your XML file.

Figure 1. @xml:lang attribute value specified

The properties of Paragraph Designer, which are set automatically on specifying the attribute value for @xml:lang are:
Note: If the value for @xml:lang attribute is not defined for your XML file, default formatting rules are applied. If the value for @xml:lang attribute is not defined for a paragraph, the language of the parent element will be set.

To support multilingual authoring and publishing functionality, set the following language tag properties in the maker.ini file available under the FrameMaker install directory:

C:\Program Files\Adobe\Adobe FrameMaker 2022\maker.ini

In the maker.ini file, you will find the following sections that should be configured to enable this feature:

[XMLLangPreferences]
AttributeForXMLLang=xml:lang 
ApplyFontSettingsBasedOnXMLLangAttribute=On 

[XMLLangExclusionList]
DITA_1.3_task=codeblock
DITA_1.3_topic=codeblock, mathml, equation-block
Note: You can copy and uncomment these settings in the maker.ini file available under %appdata%\Adobe\FrameMaker\17 folder.
The settings under XMLLangPreferences section are explained below:

The setting under XMLLangExclusionList section is explained below:

  • StructAppName = <comma-separated list of element tags to be excluded from XML lang functionality>

    StructAppName is the name of the structured application for which the exclusion list is defined.

    Set this property to list the elements to be excluded from XML lang functionality. This is typically used to ignore elements where you do not need to run the spell check, such as a <code block>. Some examples of element tags to be excluded from XML lang functionality are:

    DITA_1.3_topic=codeblock
    DITA_1.3_task=codeblock
    DITA_1.3_topic=codeblock, mathml, equation-block

    The following document contains sample text written in multiple languages. The spell check happens as per the language setting in the @xml:lang attribute for each paragraph.

Figure 2. Sample document with text written in multiple languages