Как при переводе XML-файлов отличить содержимое данных от атрибутов тегов?
“В XML-файле смешиваются конфигурационные параметры, значения атрибутов и отображаемый текст; неконтролируемый перевод может нарушить схему файла.”
Анализ первопричин
Конфигурируемый выбор узлов для перевода
DL.Translator способен распознавать типовые стандартные структуры (например, Android `strings.xml`). Для пользовательских XML система анализирует глубину узлов и по умолчанию переводит только текстовое содержимое листовых узлов, сохраняя корневую структуру.
Интеллектуальная обработка атрибутов (Attribute)
Некоторые атрибуты подлежат переводу (например, `<item label="Name">`), тогда как другие являются идентификаторами (например, `<item id="name">`). ИИ посредством семантического анализа имени атрибута интеллектуально определяет, нужно ли выполнять перевод, что позволяет избежать ошибок при обращении в программе.
Защита блоков CDATA
Для специальных символов или HTML-кода, заключённых в `<![CDATA[ ... ]]>`, система полностью анализирует содержимое и переводит только текстовую часть, при этом специальные управляющие символы сохраняются.
Итоговое резюме решения
Обеспечивается, что XML-данные после многоязычного преобразования по-прежнему соответствуют требованиям XSD-валидации, что гарантирует совместимость системы.