ОПИСАНИЕ ФУНКЦИЙ МОДУЛЯ XBENCH ДЛЯ РУССКОГО ЯЗЫКА БЮРО ПЕРЕВОДОВ «ДЭЙТАБРИДЖ» Условные обозначения: Org – original (исходный текст) Trn – translation (перевод) Exclude tags during QA Флажок является переключателем, а не функцией. При установке флажка из оригинала и перевода исключаются теги – последовательность символов между с символов <: и :>. Partial Translation (Source Text Left) 1) Если Org = Trn – нет ошибки 2) Проверка по количеству символов: подсчитывается число одинаковых символов из Org и Trn, начиная с конца, за исключением символов из набора ".,!?: \t%()[]{}+-_0123456789\"'&*\\/$#@". Если число одинаковых будет меньше 15% от числа символов в Trn – нет ошибки. 3) Проверка по количеству одинаковых слов: Если в Trn меньше 4 слов – нет ошибки. 4) Подсчитывается количество одинаковых слов, начиная с конца. Ошибка если это число больше или равно 30% от числа слов в Trn. Incomplete Translation (<70% of Original) 1) Подсчет длины Org – из длины в символах вычитается длина всех входящих слов a и the, с учетом пробела. 2) Ошибка если длина Trn в символах меньше 70% от подсчитанной длины оригинала. Corrupted Symbols Ошибка, если в переводе находится любой символ из набора: "¤§¬¶·†‡_‰Ђїњ\r\n\x88". Ending Punctuation Mismatch 1) Если последний символ Org не из набора ",.!?:;\t " – нет ошибки. 2) Если последний символ Org совпадает с последним символом Trn – нет ошибки. 3) Если последний символ Org есть ':', и последний символ Trn ‘.’ – нет ошибки. 4) Ошибка. Double Punctuation Marks 1) В Trn ищется последовательность из двух и больше символов из набора ",.!?:;". 2) Если найденная последовательность одна из следующих – нет ошибки: “…”, “?!”, ‘!?’, “.:”, ‘.,’. 3) Ошибка. Spaces Before Punct. Marks 1) В Trn ищется символ из набора ",.!?:;". 2) Если перед найденным символом находится пробел или табуляция – ошибка. Spaces Before/After Text in Brackets 1) В Trn ищется символ из набора "{([«“". Если следующий символ пробел или табуляция – ошибка. 2) В Trn ищется символ из набора "})] »”". Если предыдущий символ пробел или табуляция – ошибка. Brackets and Quotes Twoness 1) С начала Trn пропускается первые 3 символа, если они из набора "0123456789а-яАЯ". Если следующий символ ‘)’ - вся эта последовательность исключается из дальнейшей проверки. 2) В Trn ищутся символы из двух наборов - "{([«“" и "})] »”". Если будет найден символ не имеющий пару – ошибка. Find Repeated Words 1) В Trn ищутся два подряд идущих одинаковых слова. 2) Если найденные слова разделяют символы из набора ",;:" – нет ошибки. 3) От первых двух найденных продолжаем считать общее число одинаковых слов. 4) Если в Org находим такое же количество тех же слов – нет ошибки. 5) Ошибка. Numbers Localization 1) В Org находим последовательность символов из набора "0123456789 ,.", которая может представлять число. 2) Найденную последовательность преобразуем в русскую нотацию: '.' меняем на ‘,’, а ‘,’ удаляем, но только если после нее найдется 3 цифры. 3) Если после преобразования найденная последовательность не изменилась – нет ошибки. 4) Если изменившаяся последовательность будет найдена в Trn – нет ошибки. 5) Ошибка. 6) Повторяем первые три шага, но только для Trn. 7) Т.е если в Trn будет найдено число, которое можно преобразовать в русскую нотацию – ошибка. Space Before/After Number 1) В Trn находим последовательность символов из набора "0123456789 ,.", которая может представлять число. 2) Если перед и после этой последовательности находятся символы из набора " \t\xA0\\/()[]{}%#$*+-,.!?:;±+-><=\"~'" – нет ошибки. 3) Ошибка.