поступила новая вводная: при создании нового контакта с клиентом "подтягивать" и как-то отображать историю предыдущих. Показать в embedded view документы из разных баз не получится.
что один "архивный" документ может быть "историей" для нескольких новых контактов
После создания контакта сохраняем его в "истории" - дереве контактов\зависимых доков-ответов.
История - JSON список напр. с номером контакта\UNID самого дока-контакта\UNID родителя\где лежит (сервер\база\реплика ...) он и родитель.
Списки строятся от каждого Адама отдельно.
Они даже могут пересекаться, что можно красиво показать.
Храним где удобно в тексте или эртээфе, да хоть в отдельном файле.
Чтение "истории" - хэпажная вьюшка куда дёргается инфа из этого списка и показывается деревом (вся или от любого родителя вниз). Где сами доки лежат, значения не имеет - инфу дёрнешь, был бы доступ к серверу\базе\архиву.
Если кому-то что-то не положено - док будет просто пропущен в вьюшке и, возможно, будет потеряна часть реального дерева.
Сопсно - это механизм категоризированного view, только без ограничения принадлежности доков одной базе.
Можно даже не следить за удалением доков - нету дока по такому юниду в списке ну и хрен с ним, просто оборвётся цепочка показа ветки.