Adjust ST4.sdlftsettings to set only one language as "Not translatable"

Hello,
I imported into Trados 2022 a XML file exported from SCHEMA. The file contains sentences in DE and in another language, but only the German parts should be translated. 
I have a corresponding ST4.sdlftsettings file, which states what is to be translated and what not.
According to the ST4.sdlftsettings file, readonly elements or elements with readonly="true" should not be translated:
Screenshot of Trados Studio filter settings showing rules for XML elements with 'readonly' attribute set to 'true' marked as 'Not translatable'.
However, I noticed in the XML file that there are sections marked as readonly="true" for both languages, i.e., the language that should not be translated (where the use of readonly element is clear) but also for DE text.
Here are some examples where DE text is flagged as read only:
<readonly_title>Produktion</readonly_title>
and
<table-container ref="g1234556789" id="90000000" type="header" readonly="true">
<table-title>Informationen zum Produkt</table-title>
<table hsdl-percent="10.0" type="fixed">
Is there a way to adjust the ST4.sdlftsettings to solve this? If I set the read only elements as Translatable, I end up importing text in both languages.
Unfortunately I cannot upload the XML file.
Cristina


Generated Image Alt-Text
[edited by: RWS Community AI at 9:56 AM (GMT 1) on 10 Oct 2024]
emoji
Parents
  •  

    If you want sensible assistance with this please provide a sample file.  It should not be difficult for you to create a small sample XML file that contains the structure of all these things you are dealing with but also anonymous text.  For example:

    <?xml version="1.0" encoding="UTF-8"?>
    <document>
        <!-- Translatable section without readonly attribute -->
        <content>
            <title>Produktbeschreibung</title>
            <paragraph>Dies ist eine Beschreibung des Produkts.</paragraph>
        </content>
    
        <!-- Non-translatable section with readonly attribute set to true -->
        <readonly_title readonly="true">Produktion</readonly_title>
        <readonly_description readonly="true">
            Dieser Text sollte nicht übersetzt werden, da er als nur-lesbar markiert ist.
        </readonly_description>
    
        <!-- Table example with mixed content -->
        <table-container ref="g1234556789" id="90000000" type="header" readonly="true">
            <table-title>Informationen zum Produkt</table-title>
            <table hsdl-percent="10.0" type="fixed">
                <row>
                    <cell>Produktname</cell>
                    <cell>Preis</cell>
                </row>
                <row>
                    <cell>Produkt A</cell>
                    <cell>€10.00</cell>
                </row>
            </table>
        </table-container>
    
        <!-- Additional section with translatable DE content and readonly true -->
        <section>
            <title readonly="true">Nur-Lesbarer Titel</title>
            <description readonly="true">Dieser Beschreibungstext ist nicht zu übersetzen.</description>
        </section>
    
        <!-- Example in another language, should not be translated -->
        <foreign_content readonly="true">
            <title>Titre du produit</title>
            <paragraph>Ceci est une description du produit en français.</paragraph>
        </foreign_content>
    </document>
    

    So far there is insufficient information from you to get a sensible answer.  Without that how do we know if the ST4 settings can identify the target language sections explicitly, or if they rely solely on the readonly attribute for example?  You will get much better help if you explain your problem with enough info for someone to help.

    Paul Filkin | RWS Group

    ________________________
    Design your own training!

    You've done the courses and still need to go a little further, or still not clear? 
    Tell us what you need in our Community Solutions Hub

    emoji
  • Hi,

    thanks a lot for your replies. I made a sample file.

    As you can see, UK-UA text always occurs within read only elements, which is expected as it is not to be translated.

    DE should be translated but for some reasons it occurs in some cases under readonly elements. I do not see a way to import it in the Trados project. Changing the read only elements to translatable would not help, as also the other language would land in the project. I also do not see an explicit reference to the target languages in the XML. I wonder if this is something that should be adjusted in the source, i.e. in the redaction tool.

    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE tms PUBLIC "-//Schema//DTD DocuMan TMS V5//EN" "Tms.dtd"[
    ]>
    <tms name="ABC" source="de" target="uk-UA" source-culture="de-DE" target-culture="uk-UA" user="123" date="01/01/2000 09:10:12" version="ST4.ClientBase.TMS, Version=11, Culture=neutral" test="false">
    	<!--TMS Settings
    Test Export: false
    
    Advanced Mode: 
    Source Aspect: de [de-DE] (123)
    Target Aspect: uk-UA [uk-UA] (123)
    Context Node(s): 123 
    Variant Filter: 123
    Skip Forbidden Nodes: true
    Resource Treatment: textOnly
    Graphic Selection: both
    Export Original Graphic: false
    Export Context: true
    Context in Target Language if Available: true
    Export Fragment Titles: false
    Export Resource Titles: false
    Export DocumentStructure Titles: true
    Export Group Titles: true
    COTI Export: false
    -->
    	<tmsnode id="123" xml:space="preserve">
    		<readonly_title>Produktion</readonly_title>
    	</tmsnode>
    	<tmsnode id="124" xml:space="preserve">
    		<title>Titel</title>
    	</tmsnode>
    	<node id="readonly_27021597835177483">
    		<readonly_title>Дані</readonly_title>
    	</node>
    	<tmsnode id="125" xml:space="preserve">
    		<title>Inhalt</title>
    	</tmsnode>
    	<node id="readonly_62339851">
    		<readonly_title>Загальні</readonly_title>
    	</node>
    	<node id="readonly_63240331">
    		<readonly_title>Ось приклад</readonly_title>
    		<readonly_content>
    			<p>Ось ще один приклад</p>
    		</readonly_content>
    	</node>
    	<tmsnode id="12djdjd" xml:space="preserve">
    		<title>Angaben zum Produkt</title>
    		<content>
    			<table-container ref="156" id="292939" type="header" readonly="true">
    				<table-title>Ось ще один приклад</table-title>
    				<table hsdl-percent="58" type="fixed">
    					<thead>
    						<tr>
    							<th>
    								<p type="p_table_lb">Приклад</p>
    							</th>
    							<th>
    								<p type="p_table_lb">Приклад 123</p>
    							</th>
    						</tr>
    					</thead>
    					<tbody>
    						<tr>
    							<td>
    								<p type="p_table_l"/>
    							</td>
    							<td>
    								<p type="p_table_l"/>
    							</td>
    						</tr>
    					</tbody>
    				</table>
    			</table-container>
    			<table-container ref="49r9r9r0" id="209144971" type="framed">
    				<table hsdl-percent="52" type="fixed">
    					<tbody>
    						<tr>
    							<td>
    								<p type="p_table_l">Produkt</p>
    							</td>
    							<td>
    								<p type="p_table_l">Objekt</p>
    							</td>
    						</tr>
    						<tr>
    							<td>
    								<p type="p_table_l">Produkteigenschaften</p>
    							</td>
    							<td>
    								<p type="p_table_l">gereinigte Produktion</p>
    							</td>
    						</tr>
    					</tbody>
    				</table>
    			</table-container>
    			<p/>
    			<table-container ref="85858"/>
    			<table-container ref="99797"/>
    			<p/>
    			<table-container ref="57575"/>
    			<table-container ref="84848"/>
    			<p/>
    			<table-container ref="hee7d78d" id="101210123" type="header" readonly="true">
    				<table-title>Informationen zum Produkt</table-title>
    				<table hsdl-percent="59.0" type="fixed">
    					<thead>
    						<tr>
    							<th>
    								<p type="p_table_lb">Beispiel 1</p>
    							</th>
    							<th>
    								<p type="p_table_lb">Wert Nr. 1</p>
    							</th>
    						</tr>
    					</thead>
    					<tbody>
    						<tr>
    							<td>
    								<p type="p_table_l"/>
    							</td>
    							<td>
    								<p type="p_table_l"/>
    							</td>
    						</tr>
    					</tbody>
    				</table>
    			</table-container>
    			<table-container ref="jdjsd838" id="9494" type="framed">
    				<table hsdl-percent="50.0" type="fixed">
    					<tbody>
    						<tr>
    							<td>
    								<p type="p_table_l">Beispiel 2</p>
    							</td>
    							<td>
    								<p type="p_table_l">Wert Nr. 2</p>
    							</td>
    						</tr>
    						<tr>
    							<td>
    								<p type="p_table_l">Produkten</p>
    							</td>
    							<td>
    								<p type="p_table_l">gereinigtes Produkt</p>
    							</td>
    						</tr>
    					</tbody>
    				</table>
    			</table-container>
    		</content>
    	</tmsnode>
    </tms>

    emoji
  •  

    As far as I can see there is nothing in this file that would allow you to create a rule to identify the German language that should be translated other than by visual inspection.  I think you have two options:

    1. Manually edit the xml to remove the readonly tags from the file for all German texts.  You might be able to do this automatically with some regex to add an attribute to help control this better... certainly Ukrainian could be fairly reliably found.  You can't do this in Trados Studio in the XML filetype settings though unless you completely rewrite the filter with all your own rules for everything... a bit too much work I think!
    2. Go back to your customer and explain the problem as they might have made a mistake here since it really doesn't look logical

    These are the issues summarised if it helps arm you for a discussion:

    • The XML does not explicitly tag elements by language (i.e., lang="de" or lang="uk").  Therefore, identifying language content directly by structure alone isn’t possible within Trados Studio’s settings.

    • The attribute readonly="true" is applied to some containers (e.g., <table-container>), but other elements like <readonly_title> lack this attribute and still indicate read-only status by name.

    • German sections are only distinguishable through their content rather than metadata. For example, words like "Produktion," "Produkt," and "Informationen zum Produkt" are clearly in German, while Ukrainian text includes characters like Дані, Загальні, and Ось.  But there is no mechanism in Trados Studio to identify this text.

    Paul Filkin | RWS Group

    ________________________
    Design your own training!

    You've done the courses and still need to go a little further, or still not clear? 
    Tell us what you need in our Community Solutions Hub

    emoji
Reply
  •  

    As far as I can see there is nothing in this file that would allow you to create a rule to identify the German language that should be translated other than by visual inspection.  I think you have two options:

    1. Manually edit the xml to remove the readonly tags from the file for all German texts.  You might be able to do this automatically with some regex to add an attribute to help control this better... certainly Ukrainian could be fairly reliably found.  You can't do this in Trados Studio in the XML filetype settings though unless you completely rewrite the filter with all your own rules for everything... a bit too much work I think!
    2. Go back to your customer and explain the problem as they might have made a mistake here since it really doesn't look logical

    These are the issues summarised if it helps arm you for a discussion:

    • The XML does not explicitly tag elements by language (i.e., lang="de" or lang="uk").  Therefore, identifying language content directly by structure alone isn’t possible within Trados Studio’s settings.

    • The attribute readonly="true" is applied to some containers (e.g., <table-container>), but other elements like <readonly_title> lack this attribute and still indicate read-only status by name.

    • German sections are only distinguishable through their content rather than metadata. For example, words like "Produktion," "Produkt," and "Informationen zum Produkt" are clearly in German, while Ukrainian text includes characters like Дані, Загальні, and Ось.  But there is no mechanism in Trados Studio to identify this text.

    Paul Filkin | RWS Group

    ________________________
    Design your own training!

    You've done the courses and still need to go a little further, or still not clear? 
    Tell us what you need in our Community Solutions Hub

    emoji
Children