На главную Обратная связь Карта сайта Поиск
English content | Русская версия

Технология

Предметная область

Известные способы и системы модификации информации, в формате электронного документа, можно подразделить на следующие два основных типа:
-текстовые редакторы / процессоры;
-языки программирования встроенные в текстовые процессоры;

Основным недостатком текстовых редакторов/процессоров является низкая автоматизация процесса обработки текста. На практике, при возникновении у пользователя необходимости разделить большой документ на части или изменить формат некоторых его составляющих, то весь этот процесс пользователю необходимо провести вручную. К примеру: в документе есть определённое количество предложений, для изменения внешнего вида каждого из них, пользователю необходимо самостоятельно выполнить определённую последовательность операций для каждого из составляющих элементов документа. Время потраченное на изменение, пропорционально количеству информации в документе.

Языки программирования встроенные в текстовые редакторы частично позволяют решить проблему автоматизированной обработки данных, но в тоже время имеют ряд существенных недостатков, делающих невозможным их массовое использование, основными из них являются:

- сложность и трудоёмкость написания управляющих команд модификации данных;
- ориентированность на фиксированное логическое содержание документа, набор команд может быть применён только к документу имеющему заранее известную внутреннюю структуру;
- жесткая привязка к определённому формату документа, не позволяющая использовать имеющийся код для документов в форматах отличных от базового.

Document Suite реализует способ обработки документов дающий возможность пользователю оперировать визуальными блоками документа, посредствам значительно упрощенного варианта языка программирования, без привязки к содержанию документа или его формату. Такой подход позволяет избавиться от необходимости повторения однотипных операций изменения данных в документах большого объёма.
Достигаемым при этом техническим результатом является существенное повышение производительности труда пользователя занимающегося однотипными операциями изменения содержимого электронного документа.

Концепция работы системы

Суть подхода к решению проблемы автоматизации заключается в использовании логических правил управления содержимым документа. Здесь и далее под правилом понимается запись указывающая системе на необходимость выполнения определённых действий над электронным документом или его частью. Правила универсальны и не имеют привязки к формату или к внутренней структуре документа.
Структура правила состоит из следующих составных частей: управляющей функции, тела данных, логического указателя направления вывода, результирующего объекта.

Схематично это можно представить в виде записи:
УПРАВЛЯЮЩАЯ ФУНКЦИЯ “тело данных” УКАЗАТЕЛЬ “результирующий объект”

Управляющая функция определяет базовое назначение правила.
Тело данных может содержать: указатель лож/истина, указатель на текст, объект созданный другим правилом, метод обработки данных с набором параметров, логическое условие группировки.
Указатель направления вывода служит для визуального разделения правила. В зависимости от направления вывода применяются различные указатели.

Основные логические функции, используемые в системе:
Открыть - загрузка данных из внешнего источника. Функция в зависимости от типа файла, сначала преобразует файл в формат ядра, после загружает файл в память, производит его декомпозицию во внутренний формат для последующей обработки. Так же она позволяет за один вызов открывать набор файлов, для их пакетной обработки. Любой файл неопределённого типа открывается как текстовый.
Сохранить - запись данных во внешний формат
Группировать - функция создания нового объекта. Записывает результат в новый объект. Для любого метода в выходной объект будет записан результат его работы.
Отобразить - вывод данных в основную системную консоль
Печать - вывод данных на принтер
Выполнить - запуск внешнего приложения

Логические условия:
КАК - разделитель правила
ОТ - логическое ОТ И ДО. Группирует содержимое текстовых объектов в крупные блоки. К примеру - есть предложение “Тестовая строка данных”, если взять первый и последний символ предложения и использовать условие «первый символ» ОТ И ДО «последний символ» то мы получим указатель на предложение.
И - включает в новый объект элемент только в том случае если он присутствует в обоих ключевых объектах.
НЕТ – обрабатывает списки и включает в новый объект только те элементы у которых нет совпадений друг с другом.
ИЛИ - из двух списков создаёт один.

Логически любой текстовый документ система воспринимает как совокупность отдельных блоков.

Обобщённо процесс анализа данных выглядит следующим образом:
- система считывает документ;
- воспринимает отдельные символы;
- используя пробелы, как логические разделители, объединяет символы в слова;
- точки, переходы на новую, знаки табуляции воспринимаются как разделители предложений;
- предложения объединяются в абзацы;
- абзацы объединяются в главы;
- главы объединяются в разделы;
На каждом из этих этапов данные представлены в виде логической единицы - блока.

Процесс обработки данных с использованием предлагаемого способа можно разделить на следующие этапы:
- запуск процесса анализа команд;
- построение списка документов подлежащих обработке;
- декомпозиция документов во внутренний формат данных системы;
- сегментирование документов на логические блоки;
- модификация логических блоков;
- построение краткого описания содержимого блоков;
- композиция логических блоков из внутреннего формата во внешний, общедоступный, формат хранения данных;

Общая схема работы системы

Main schema