Дополнительные поля атрибутов¶
Морфологический поиск атрибутов¶
Морфологический поиск работает за счет обязательного плагина Opensearch.
Поиск позволяет искать значения строковых атрибутов во всех грамматических формах и выдавать в результатах все найденные варианты поискового запроса. Например, при поисковом запросе "строка" будут выданы атрибуты со значениями: строка, строки, строку, строкой и т.д.
Поиск учитывает слова и словосочетания на английском и русском языках.
Доступные виды атрибутов:
Простой атрибут (строковый);
Простой атрибут (строковый) в составе комплексного атрибута;
Массив-атрибут (строковый).
Поиск с учетом морфологии настраивается для каждого атрибута отдельно.
Атрибуты должны быть указаны как участвующие в поиске. Для этого во вкладке "Атрибуты" после выбора типа атрибута "Простой" и указания типа значения "Строковый" – включите параметр "Морфологический поиск".
Атрибуты, указанные как участвующие в морфологическом поиске, станут доступными для морфологического поиска в разделе "Данные".
Примечание
Рекомендуется настраивать морфологический поиск до создания (или импорта) данных в создаваемую модель данных. В противном случае морфологический поиск может не дать результатов, так как в Юниверс DG в текущей реализации нет механизма пересоздания индексов Opensearch
Поиск по синонимам значений атрибутов¶
Настройка синонимов выполняется в файле ${OPENSEARCH_PATH_CONF}/synonyms.txt.
Путь до папки config можно проверить следующим образом:
ps aux | grep opensearch | grep --color path.conf
В файле запрещено использование спец. символов:
$%^*:"
.Группы синонимов должны быть уникальными.
Пример файла synonyms:
customer, клиент, заказчик, покупатель
актив, asset
Для Docker инсталляции файл synonyms.txt находится в каталоге Opensearch в unidata-dg-deploy.
После изменения файла с синонимами требуется перезапуск Opensearch. Переиндексация данных не требуется.
Примечание
Рекомендуется добавлять в файл синонимов только необходимые термины (например, специфичные для конкретной предметной области) во избежание загрузки файла большого размера, которая приведет к долгой обработке со стороны системы.
Настройка ввода значений атрибутов по маске¶
Если параметр "Маска" активен и указан формат ввода данных, то каждый пользователь, вводящий в него данные, должен следовать заданному правилу.
Маска для значений атрибутов реализуется при помощи функций обработки данных и правил качества данных, которые применяют эти функции.
Для задания маски можно использовать:
Регулярное выражение regexp.
Упрощенный синтаксис маски.
Для задания маски по regexp используйте официальную документацию https://github.com/sanniassin/react-input-mask.
Описание собственного синтаксиса системы приведено в таблице 1.
Таблица 1 – Знаки, определяющие маску ввода данных
Знак |
Описание |
---|---|
9 |
Пользователь может вводить только числовые значения (0-9) |
L |
Пользователь может использовать любые буквы верхнего регистра (A-Z, А-Я) |
I |
Пользователь может использовать любые буквы нижнего регистра (a-z, а-я) |
A |
Пользователь может использовать любые буквы и цифры (A-Z, А-Я, a-z, а-я, 0-9) |
При задании маски все перечисленные в таблице символы являются символами для заполнения. Все прочие символы будут являться декораторами. Символы-декораторы не являются редактируемыми символами и не участвуют в регулярном выражении (в примере +7(999)999-99-99 декораторами будут являться "+", "(", ")", "-"). Также в качестве декоратора можно использовать буквы (исключая те, что перечислены в таблице).