Клонирование сущностей через экспорт-импорт

Клонирование сущностей от проекта к проекту разумнее всего выполнять экспортом (безотносительно ГИС) предыдущего проекта с «последующим импортом последующего» 😂 Т.е. вновь создаваемого. Если, конечно, последующий проект представляется более-менее типовым.

А сущности в проектах применяются как простые, так и составные, т.е. консолидирующие все прочие, простые. Простая сущность - это топик, не содержащий в своей структуре внедренных топиков. Своего рода неспецифицированное изделие. Сложные же сущности содержат в своей структуре внедренные топики и являются изделиями специфицированными. Как книжки, состоящие из отдельных страниц. Редакция от 17.11.2021.

Создан 14.03.2021 19:40:07

- Клонирование сущностей через экспорт-импорт

Клонировать сущности имеет смысл в два этапа: экспортировать ВООБЩЕ ВСЕ топики, а затем их импортировать; экспортировать топики, содержащие внедренные топики, отдельно, а затем также отдельно их импортировать как консолидирующие. Для лучшего осмысления: сначала клонируем все поголовье, а затем отдельно особо выдающихся баранов, которые назначены нами козлами, ведущими свои субпоголовья.

Оба этапа проводятся с применением экспортеров на основе Views и импортеров на базе Feeds.

Далее:
Экспорт всех топиков предыдущего проекта с помощью Views
Импорт топиков последующего проекта с помощью CSV
Экспорт «консолидирующих» топиков предыдущего проекта с помощью Views
Импорт «консолидирующих» топиков последующего проекта с помощью CSV

Экспорт всех топиков предыдущего проекта с помощью Views

Экспорт всех топиков предыдущего проекта с помощью Views:

- Экспорт топиков - Title - Path (Content)

Настроить критерий фильтра: Content: Title:

- Настроить критерий фильтра - Content - Title

Должен содержать (, иначе экспортироваться будут ВООБЩЕ ВСЕ ТОПИКИ. Это как минимум. Если необходимо экспортировать все топики конкретного исходного предыдущего проекта, то тогда в поле Значение следует подставлять префикс этого проекта, например (_PREFIX_.

Интересно было бы еще экспортировать и поля Body, заполненные ранее участниками предыдущего проекта. Для этого во Views придется добавить Content: Body. Будет экспортирована полная HTML-разметка, но импорт с помощью CSV или даже XML может не прокатить из-за разметки, в связи с необходимостью конвертирования угловых скобок во всяческие gt и т.п. Вообще разумно экспортировать (сохранять) поля Body в отдельные файлы образцов.

Вопрос пока остается открытым и требует дополнительной проработки.

Импорт топиков последующего проекта с помощью CSV

Импорт топиков последующего проекта с помощью CSV без поля Body предусматривает создание нод типа topic для нового (последующего) проекта. Для этого _PREFIX_ меняется на новое значение (с учетом требований системы классификации и кодирования проектов). Затем выполняется импорт. Настройки импортера:

- Topic CSV Import (title и path)

Mappings Topic CSV Import (title и path):

- Mappings Topic CSV Import (title и path)

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

Экспорт «консолидирующих» топиков предыдущего проекта с помощью Views

Экспорт топиков - Title - Path - Entity Embed (Content). Расширенные - Настройки запроса - Уникальность!

- Экспорт топиков - Title - Path - Entity Embed (Content)

Уникальность добавляется для того, чтобы не было дублирования. Для разделения списка внедренных топиков применен |.

Импорт «консолидирующих» топиков последующего проекта с помощью CSV

Импорт «консолидирующих» топиков последующего проекта с помощью CSV, настройки импортера:

- Редактировать CSV-импорт топиков (Title, Path, Entity Embed)

Mappings CSV-импорт топиков (Title, Path, Entity Embed):

- Mappings CSV-импорт топиков (Title, Path, Entity Embed)

Tamper CSV-импорт топиков (Title, Path, Entity Embed):

- Tamper CSV-импорт топиков (Title, Path, Entity Embed)

В плагине Explode в качестве разделителя применен |.

В итоге все атомарные несвязанные топики консолидируются, связи входимости образуются автоматически и будут подсвечиваться.

Экспорт всех топиков предыдущего проекта с помощью Views

Экспорт всех топиков предыдущего проекта с помощью Views:

- Экспорт топиков - Title - Path (Content)

Настроить критерий фильтра: Content: Title:

- Настроить критерий фильтра - Content - Title

Должен содержать (, иначе экспортироваться будут ВООБЩЕ ВСЕ ТОПИКИ. Это как минимум. Если необходимо экспортировать все топики конкретного исходного предыдущего проекта, то тогда в поле Значение следует подставлять префикс этого проекта, например (_PREFIX_.

Интересно было бы еще экспортировать и поля Body, заполненные ранее участниками предыдущего проекта. Для этого во Views придется добавить Content: Body. Будет экспортирована полная HTML-разметка, но импорт с помощью CSV или даже XML может не прокатить из-за разметки, в связи с необходимостью конвертирования угловых скобок во всяческие gt и т.п. Вообще разумно экспортировать (сохранять) поля Body в отдельные файлы образцов.

Вопрос пока остается открытым и требует дополнительной проработки.

Импорт топиков последующего проекта с помощью CSV

Импорт топиков последующего проекта с помощью CSV без поля Body предусматривает создание нод типа topic для нового (последующего) проекта. Для этого _PREFIX_ меняется на новое значение (с учетом требований системы классификации и кодирования проектов). Затем выполняется импорт. Настройки импортера:

- Topic CSV Import (title и path)

Mappings Topic CSV Import (title и path):

- Mappings Topic CSV Import (title и path)

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

Экспорт «консолидирующих» топиков предыдущего проекта с помощью Views

Экспорт топиков - Title - Path - Entity Embed (Content). Расширенные - Настройки запроса - Уникальность!

- Экспорт топиков - Title - Path - Entity Embed (Content)

Уникальность добавляется для того, чтобы не было дублирования. Для разделения списка внедренных топиков применен |.

Импорт «консолидирующих» топиков последующего проекта с помощью CSV

Импорт «консолидирующих» топиков последующего проекта с помощью CSV, настройки импортера:

- Редактировать CSV-импорт топиков (Title, Path, Entity Embed)

Mappings CSV-импорт топиков (Title, Path, Entity Embed):

- Mappings CSV-импорт топиков (Title, Path, Entity Embed)

Tamper CSV-импорт топиков (Title, Path, Entity Embed):

- Tamper CSV-импорт топиков (Title, Path, Entity Embed)

В плагине Explode в качестве разделителя применен |.

В итоге все атомарные несвязанные топики консолидируются, связи входимости образуются автоматически и будут подсвечиваться.