Классификация терминов на нескольких таблицах

Главные вкладки

Аватар пользователя Palex Palex 9 марта 2019 в 22:53

Доброго времени чтения!
Обращаюсь за поиском наиболее подходящего модуля
Имеется структура данных:

Наполнение классификаторов в https://palex.livejournal.com/74955.html

Задача: имеется список терминов
Как легче привязывать термины к любому из классификаторов для сбора экспертных оценок - с целью выявления наиболее подходящих терминов для гнезд классификаторов?

Для каждой оценки собирается информация:
термин,
классификатор,
значение классификатора,
степень уверенности,
дата оценки,
автор оценки

Для чего нужно? Есть графическая нотация https://habr.com/ru/post/414861/, но текстовое наполнение элементов меня не устраивает. Есть желание собрать мнения сообщества по каждому элементу.

Комментарии

Аватар пользователя Orion76 Orion76 10 марта 2019 в 22:18

Главного вопроса Вы не задали, как мне показалось: Вам нужен "алгоритм" или инструмент для реализации Вашего "алгоритма"?

Аватар пользователя Orion76 Orion76 11 марта 2019 в 19:38

По сути, все нужные Вам модули имеются в ядре Drupal:
Taxonomy, Node
Создаете нужные типы сущностей (Супергруппы, Группы, Ресурсы, Матрицы и т.п.)
Связываете их полями типа EntityReference (для нод) и "Ссылка на термин таксономии" для терминов таксономии.
Добавляете поля "по вкусу".
и все..

PS.. Кстати про "алгоритм", а что содержится в полях, совпадающих по наименованию с наименованием самой таблицы(Сложность->сложность, Период->период и т.п.)?

Возможно я просто не в курсе всех тонкостей использования, описанных в схеме, данных, но мне кажется можно схему упростить(уменьшить глубину вложенности зависимых таблиц-сущностей)

тогда и упростятся запросы для выборки записей по условиям (модулем Views)

Аватар пользователя Palex Palex 11 марта 2019 в 20:05

Спасибо! Мое понимание возможностей Drupal несколько расширилось...
Поскольку предлагаемая структура содержит усложненный вариант таксономии, то, возможно, удастся обойтись вообще без встроенной таксономии Smile
В полях, совпадающих по наименованию, содержится "типовое" название для гнезда классификации, которое изменяется вручную в соответствии с предпочтениями пользователей. Глубину вложенности уменьшить можно, на схеме - максимально нормализованная структура с максимальным выделением похожих разделов в отдельные классификаторы.
Упрощение запросов пока абсолютно не актуально. Это исследовательский проект со сбором экспертных оценок в котором крайние классификаторы играют роль реперов для оценок пользователей.

Аватар пользователя Orion76 Orion76 11 марта 2019 в 22:02
1

Да нет, таксономию использовать все-таки придется-)

Т.е. оптимальнее ее использовать для типов сущностей
(сущность(entity) - устоявшийся в друпал термин для обозначения объектов-данных , грубо говоря таблиц с полями типа нода, термин таксономии, пользователь и т.п.)
которых имеется относительно конечное количество и состоящих из небольшого кол-ва полей,
чаще всего одно поле(кроме идентификатора) - наименование.

Аватар пользователя gun_dose gun_dose 11 марта 2019 в 10:02

В верхнем левом углу три квадратика - это явно иерархический словарь таксономии с уровнями Супергруппа - Группа - Подгруппа.

Области - это ноды. Сложность и абстрактность - это два поля этих нод. Поля могут быть, как списками, так и таксономией - решать нужно по ситуации.

Экстраверсия и нейротизм - это также явно филды сущности (ноды) типа Фаза.

Матрицы, сегменты и ресурсы - это уже можете сами додумать по аналогии.

Вообще, в данном случае задача поставлена неверно. У вас есть некая логическая структура. И вы создали схему реляционной БД, которая может хранить такие данные. Но проблема в том, что приведённая схема - это всего лишь абстракция, не отражающая логику. Если выбросить эту схему и сразу рассуждать о том, как непосредственно на друпале реализовать саму структуру, то будет значительно проще.

Аватар пользователя Palex Palex 11 марта 2019 в 19:39

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

Тогда интересует привязка нод уровня области и сегмента с конкретными названиями к сложности и фазам для разных пользователей. Предполагаю сделать графический вывод названий сегментов-нод на координатной сетке с координатами фаза/сложность. Аналогично областям разворачивается иерархия ресурсов, но используется только регион материального. Ноды матрицы содержат филды сегмента и ресурсов. Выдержит такое Drupal? Smile

Аватар пользователя sas@drupal.org sas@drupal.org 12 марта 2019 в 7:52

Palex wrote:
Спасибо! Структура данных, на мой взгляд, отражает внутреннюю сущность рассматриваемых явлений.

В частности, в качестве словаря таксономии, больше подходит сложность: области симметричны по вертикали, сложность симметрично увеличивается от верхней и нижней границы к середине, дерево сложности уже в достаточной мере сформировалось:

Тогда интересует привязка нод уровня области и сегмента с конкретными названиями к сложности и фазам для разных пользователей. Предполагаю сделать графический вывод названий сегментов-нод на координатной сетке с координатами фаза/сложность. Аналогично областям разворачивается иерархия ресурсов, но используется только регион материального. Ноды матрицы содержат филды сегмента и ресурсов. Выдержит такое Drupal? :)

Это намек на нейронки?