Гиперкубы с одним измерением не представляют никакой проблемы, не так ли? В этой заключительной главе давайте посмотрим, как будут выглядеть таксономия измерений и отчет, если мы объединим два измерения в один гиперкуб. Это приведет к изменениям во всех частях таксономии – в основном, к отбрасыванию элементов, которые больше не нужны, и замене нескольких элементов на один комбинированный:  При взгляде на базу ссылок определений становится интересно. Прежде всего, из definitionLink удаляются относящиеся к гендерным группам связи между базовыми концептами и гиперкубом, а также между гиперкубом и измерением, остаются только связи между измерением и его элементами. Относящийся к возрастным группам definitionLink можно удалить полностью, заменив его на definitionLink для нового гиперкуба. Заметьте, что дуги hypercube-dimension упорядочены. Также, обратите внимание, что атрибут targetRole в дуге к гендерному измерению указывает на роль, с которой определялись элементы измерения. Это позволяет переходить от одного базового набора к другому, формируя DRS. Контексты отчета должны быть изменены для предоставления всех значений обоих измерений. Следующий пример показывает некоторые из возможных контекстов (если привести полный список, то вы устанете скроллить).  Первый контекст может использоваться для передачи фактов о количестве сотрудников-мужчин на начало отчетного периода, независимо от их возраста. Второй контекст предназначен для фактов о количестве сотрудников-женщин возрастом до 20 лет по состоянию на конец отчетного периода.  Обратите внимание, что порядок следования измерений должен быть таким же, как в базе ссылок определений.  Визуализация такого отчета может выглядеть по-разному, необязательно как в нашем приложении, выводящем его в таком табличном виде (и потерявшем где-то итоговые значения):   Давайте посмотрим, можем ли мы как-то облегчить жизнь составителям отчета, желающим передать факты по возрастным группам независимо от гендерных групп. Как вы помните, можно использовать элемент домена domain_gender для обозначения всех полов. Мы можем помочь, сделав его элементом измерения по умолчанию.  Теперь контекст может выглядеть так: ПО для создания XBRL-отчета подставит значение domain_gender автоматически. Последний штрих в нашей таксономии измерений – исключение определенных комбинаций элементов. Давайте предположим, что мы настоящие джентльмены, которые не спрашивают женщину о ее возрасте. Определим роль и гиперкуб: В гиперкуб включаются женский пол и все возрастные группы, с использованием роли gentleman, чтобы держать его отдельно от других гиперкубов. Создадим необходимые локаторы: Гиперкуб fem_x_age_group включает в себя те же два измерения, что и gender_x_age_group. Но домен элементов гендерного измерения включает в себя лишь female.  Наконец, мы создаем взаимосвязь notAll между базовым концептом nr_employees и нашим новым гиперкубом, запрещающую использовать указанные в нем комбинации элементов. Это очень эффективно лишает нас возможности передать факт о женщинах любой возрастной группы.  На этом мы завершаем нашу работу с XBRL. Как было показано в этой главе, с его помощью можно сделать многое, но следует внимательно изучить, как создавать таксономию и ее базы ссылок, оставаясь при этом в пределах границ, обозначенных Спецификацией XBRL. Надеюсь, этот перевод помог вам немного разобраться в основах XBRL и, возможно, даже применить новые знания на практике. Если вам интересна тема XBRL, присылайте мне ваши вопросы, идеи новых статей и предложения по переводу полезных на ваш взгляд материалов с английского.  Приглашаю поучаствовать в опросе и спасибо всем за внимание и ваши комментарии! Хранилища данных, автоматизация фин.отчетности