Перейти к основному содержимому

Когда портал не нужен

Свой портал нужен, когда без него нельзя выполнить обязанность или когда наборов и публикаторов уже столько, что страница и файл описаний перестают справляться. До этого данные публикуют в чужом каталоге, на своём сайте, в Git-репозитории или на общем хабе. Так делают и небольшие группы, и федеральные ведомства: национальный каталог США забирает с сайта ведомства файл описаний, а файлы данных оставляет на месте.

Пустая установка обещает каталог, сопровождать который некому. Описания устаревают. Если регистрация открыта, она собирает спам — так бывает у порталов на CKAN, подробнее в главе о доступе и ролях. После окончания договора на хостинг пропадают адреса. Страница с десятком наборов такого обещания не даёт.

Что в этой главе называется порталом​

Каталог — любое место, где набор можно найти, понять и получить. Им бывает и статический сайт. Портал в этой главе — своё приложение: база описаний, поиск, учётные записи, роли и сервер, который кто-то обновляет годами. Список наборов — страница или файл со ссылками, без карточек и поиска. Для десятка наборов список нормален. Тупиком он становится, когда у строки нет лицензии, даты и постоянного адреса.

Как каталог собран из частей — в главе об устройстве каталога. Как довести список до находимой публикации — в главе о списках наборов.

Пять вопросов до установки​

Ответы записывают до выбора платформы. Платформа, которая закрывает функции, бесполезна, если её некому сопровождать. Сравнение способов создания — в главе «Свои силы, свободное ПО или облачный сервис».

  1. Кто должен увидеть данные. Вышестоящий каталог, поисковик, читатель статьи, коллеги внутри организации. От адресата зависит файл описаний: DCAT-AP, DCAT-US, schema.org или DataCite.
  2. Сколько наборов и как часто они меняются. Десятки наборов и правки несколько раз в год закрывает страница или репозиторий. Сотни наборов, которые каждый день приходят из учётной системы, требуют загрузки в портал или скрипта, который сам обновляет файлы. Скрипт — по-прежнему публикация без портала.
  3. Сколько организаций публикует и как они правят. Одна группа обходится правами на репозиторий и проверкой изменений перед слиянием. Портал нужен, когда публикаторов много и они не работают с Git, либо когда поток заявок на закрытый файл при открытом описании уже не разобрать почтой и ручным одобрением на общем хабе.
  4. Кто обновляет сервер через три года. Если ответ «автор страницы» или «никто», портал ставить рано. Ставка или договор на сопровождение делают портал возможным, но первые три вопроса не отменяют.
  5. Что именно обязан забрать верхний каталог. Обычно это один файл описаний в нужном профиле. API поиска нужен людям и программам, когда наборов уже сотни. Сборщику хватает файла.
ОтветКуда публиковать
Одна группа, десятки наборов, верхний каталог принимает чужие организациив этот каталог, своей витрины нет
Свой сайт уже есть, верхний каталог забирает файлфайл описаний на этом сайте
Нужны история правок и совместная работаGit-репозиторий и страница из тех же файлов
На данные будут ссылаться в статье, своего репозитория нетобщий репозиторий с DOI, например Zenodo
Файл большойоблачное хранилище или хаб, описание — на своей странице
Много публикаторов вне Git, поток заявок на закрытые файлы, сбор чужих каталоговсвой портал или типовой портал, который уже раздают органам власти

Последняя строка не значит «ставить CKAN завтра». Типовой портал, который регион или поставщик уже ведёт для муниципалитетов, закрывает роли без вашей установки. Разбор для города — в примере муниципалитета.

Куда публиковать​

Пять способов. Их сочетают: репозиторий хранит таблицы, сайт показывает их людям, Zenodo выдаёт DOI на выпуск.

СпособКогда его хватаетЧего не будетПодробнее
Чужой каталогнаборов мало, каталог уже принимает ваши наборысвоего домена и своих полейспособ создания
Раздел своего сайтасайт есть, наборов немногоформы «добавить набор» и ролей для внешних публикаторовниже, на примере файла data.json
Статический сайтдесятки наборов, есть человек, который правит файлыпоиска по API и сбора чужих каталогов по расписанию, пока его не напишете отдельностатические сайты
Git-репозиторийважны история и совместная правкабольших файлов в самом Git и находимости без страницыGit-репозитории
Облако и общий хабфайл большой, нужен DOI или аудитория уже на площадкегарантии, что правила площадки сохранятсяхранилища и хабы

Минимум, без которого ни один из способов не работает: постоянный адрес, лицензия, дата и контакт, разметка schema.org. Файл со всеми описаниями добавляют, когда наборов несколько или их забирает сборщик: с этого момента публикация становится каталогом, и для неё действует общий минимум. Как его собрать по шагам — в главе «Как сделать публикацию находимой». Какие возможности карта считает обязательными и как закрыть их без портала — в карте возможностей.

Файл на своём сайте вместо портала​

data.gov не хранит файлы ведомств. Ведомство публикует каталог метаданных — обычно data.json по профилю DCAT-US — по постоянному адресу на своём сайте. Сборщик забирает этот файл по расписанию, и записи появляются в общем каталоге. В инструкции GSA источник — публичный файл, тип источника «документ», частота от ежедневной до ежемесячной. По правилам сборщика источник забирают не реже раза в месяц.

13 октября 2026 года список источников сбора показывал 793 записи. 135 из них имеют тип «документ»: сборщик забирает один файл. У 117 адрес ведёт на data.json. Ещё 577 принадлежат Бюро переписи: это папки географических описаний, нарезанные по типам границ, а не отдельные ведомства. Для небольшого ведомства вывод прямой: ему достаточно одного файла.

Живой пример — Избирательная комиссия США (Election Assistance Commission). Её сайт собран на Drupal 10. Каталог данных комиссии — файл eac.gov/data.json. 13 октября 2026 года в нём было 11 записей по схеме DCAT-US 1.1, и сборщик data.gov забирает его раз в неделю как источник eac-data. Этого хватает, чтобы описания попали в национальный каталог.

Сбор забирает и слабое описание. Поля license в записях нет. В поле rights схема DCAT-US 1.1 ждёт короткий текст об условиях доступа, а у части записей стоит логическое значение true, у части поля нет. Часть адресов скачивания ведёт на раздел сайта, а не на файл. Часть записей — отчёты в PDF. Файл вместо портала закрывает задачу сбора. Лицензию, прямую ссылку и отделение набора от отчёта автор проставляет сам.

В Европе тот же приём: data.europa.eu забирает каталог по DCAT-AP, если издатель подал его на сбор. Свой CKAN для этого не требуется. Как устроена цепочка — в главе о федерациях.

Три места сразу​

Исследовательский проект Global Jukebox публикует данные о песенных традициях без своего портала. Сайт theglobaljukebox.org показывает записи людям. Таблицы и код лежат в репозиториях организации theglobaljukebox на GitHub. Выпуск набора Cantometrics, на который ссылаются, заархивирован в Zenodo: DOI 10.5281/zenodo.4898406, версия v0.1-alpha от 3 июня 2021 года. 13 октября 2026 года сайт открывался, запись Zenodo тоже.

Сочетание работает, пока у трёх мест одно и то же описание. Здесь оно разошлось уже в том выпуске, который получил DOI. Файл LICENSE.txt в метке v0.1-alpha — лицензия CC BY 4.0. Файл .zenodo.json той же метки указывает CC BY-NC 4.0, и запись Zenodo показывает именно её. Человек, который цитирует DOI, и человек, который скачал репозиторий, получают разные условия. Лицензию выбирают один раз, пишут в том месте, которое считают главным, и в остальные копируют ту же.

Пример: ведомство с двадцатью наборами​

Контекст. Небольшое ведомство. Около двадцати наборов: выгрузки раз в квартал и годовые отчёты. Сайт на обычной CMS уже есть, его ведёт один веб-мастер. Национальный каталог забирает файл описаний в известном профиле — DCAT-US или DCAT-AP — и организации внутри себя тоже принимает. Своей команды порталов нет.

Варианты. Свой CKAN. Облачный портал. Организация только на национальном каталоге, файлы остаются на сайте ведомства. Файл data.json на существующем сайте, зарегистрированный для сбора.

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

Решение. Файл описаний на существующем сайте и заявка на сбор. Если национальный каталог внешние файлы не забирает и принимает только организации внутри себя — публиковать туда и портал не ставить.

Почему. Свой CKAN при одном веб-мастере останется без обновлений ядра: критерий сопровождения он проигрывает. Облачный портал закроет поиск и карточки, но плата и перенос адресов не окупаются на двадцати наборах. Организация только на национальном каталоге тоже попадает в сбор и даже проще в сопровождении, но свою витрину ведомство при этом теряет. Файл на своём сайте оставляет витрину там, где она уже есть, и отдаёт сборщику тот профиль, который он ждёт.

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

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

Как записать такую карточку у себя — в главе «Как обосновать решение».

Когда свой портал всё-таки нужен​

  • Наборы публикуют много организаций, эти люди не работают с Git, и каждой нужны свои права и проверка перед публикацией.
  • Описание открыто, а файл выдают по заявке, и заявок столько, что общий хаб и почта не справляются. Так устроены каталоги микроданных.
  • Нужно регулярно забирать чужие каталоги и модерировать копии. Скрипт в репозитории, как у opendata.scot, тянет тысячи описаний, но роли он не даёт.
  • Наборы каждый день приходят из учётной системы, и скрипт, который обновляет файлы, поддерживать труднее, чем загрузку в портал.
  • Профиль страны требует возможности, которой нет ни у файла, ни у чужого каталога, уже принимающего ваши наборы. Чаще требуют именно файл в нужном профиле.

Для отдельных типов каталога порог другой. Научной группе с одним набором к статье свой репозиторий не нужен. Городу с тридцатью наборами — тоже.

ЗадачаГде разобрано, когда свой каталог не нужен
Открытые данные органа властипорталы открытых данных
Карты и слоигеопорталы
Данные к статьенаучные репозитории
Показателикаталоги показателей
Микроданныекаталоги микроданных
Наборы для моделейML-каталоги
Справочникикаталоги метаданных

Чем платите​

СпособЧто получаетеЧем платите
Чужой каталогкарточки, сбор и поиск уже работаютчужие поля, чужое расписание, нет своего домена
Раздел сайтадёшево, адрес в вашем доменеправки вручную; поиск по API не появляется
Статический сайтпочти нечему ломаться, сайт можно забрать файламиправки через файлы; форму «добавить набор» люди без Git не осилят
Git-репозиторийистория и совместная работапредел размера: GitHub не принимает файлы больше 100 МиБ и советует держать репозиторий меньше 1 ГБ; без страницы с разметкой набор плохо ищется
Облако и хаббольшие объёмы, DOI, чужая аудиторияправила и лимиты площадки меняются, площадка может закрыться

Цены чужих площадок сравнивают в главе о способе создания. История закрытых хабов — в главе об облачных хранилищах.

Что видно по живым спискам​

В реестре dataportals-registry (выпуск 1.27.0 от 15 октября 2026 года) 107 каталогов записаны как списки наборов: страница, репозиторий или листинг хранилища, без карточек. Программный интерфейс есть у 15. Карта сайта — у 12. 95 записаны своей разработкой. Остальные двенадцать — страницы на обычных движках сайтов: Drupal, WordPress, TYPO3, Jekyll, SharePoint и Liferay. Недействующих и снятых — 7.

Малая доля интерфейсов для списка ожидаема. Списку из двадцати ссылок API поиска не нужен. Ломается другое: у строки нет лицензии, адрес страницы меняется при переделке сайта, разметки schema.org нет, и ссылки умирают молча. Как это измерили на тематическом списке и как починить — в главе о списках наборов. Реестр лицензии и разметку schema.org почти не записывает, поэтому эти дыры в его цифрах не видны.

Как проверить своё решение​

  • Назван адресат: кто забирает описания и в каком профиле.
  • Посчитаны наборы, организации-публикаторы и частота обновления.
  • Назван человек, который будет обновлять публикацию через три года. Если это сервер портала — назван и тот, кто обновляет сервер.
  • У каждого набора есть лицензия, дата и прямая ссылка на файл, а не только страница раздела.
  • Файл со всеми описаниями открывается без входа и проходит проверку того профиля, который ждёт сборщик.
  • Записано событие, при котором решение открывают заново.

Команды проверки файла и разметки — в главах об экспорте метаданных и о находимости.

Типичные ошибки​

Портал «как у всех». Город или ведомство ставит CKAN, потому что так сделал сосед. Через два года ядро не обновлено, наборов столько же, сколько влезло бы на одну страницу. Сначала отвечают на пять вопросов выше.

Ссылка на папку. Общий диск или бак без страницы описания — не публикация. Адрес временный, лицензии нет, через год папку не находят.

Свой формат файла описаний. Чтобы собрать сайты, придумывают таблицу CSV со своими колонками. Сборщик национального каталога её не читает. Файл делают в том профиле, который уже принимает верхний каталог. Как это вышло с методическими рекомендациями в России — в главе об антипаттернах.

Ждать, пока кто-то построит портал. Пока национальный или региональный каталог не принимает наборы, страница и репозиторий уже публикуют данные. Сообщество в Шотландии так собрало opendata.scot, не дожидаясь государственного портала. Подробности — в главе о статических сайтах.

Три копии — три лицензии. Сайт, репозиторий и хаб описывают один набор по-разному. Читатель не знает, какая копия главная. Главной назначают одну и сверяют с ней остальные.

Источники​

  • GSA, How to get your Open Data on Data.gov — data.gov не хранит файлы, ведомство публикует data.json; Harvester API — источник забирают не реже раза в месяц; список источников сбора — 793 источника, из них 135 с типом «документ», 117 адресов data.json и 577 источников Бюро переписи, проверено 13 октября 2026 года
  • eac.gov/data.json — 11 записей, схема DCAT-US 1.1, поле rights и адреса скачивания; сайт комиссии отвечает заголовком Drupal 10. Проверено 13 октября 2026 года. Источник eac-data в списке сбора — еженедельный документ. Поле rights в схеме набора DCAT-US 1.1 — текст до 255 знаков или пустое значение; license — необязательная ссылка
  • Global Jukebox: сайт, организация на GitHub, DOI 10.5281/zenodo.4898406 (запись Zenodo, лицензия CC BY-NC 4.0, версия v0.1-alpha от 3 июня 2021 года). В той же метке репозитория LICENSE.txt — CC BY 4.0, а .zenodo.json указывает CC BY-NC 4.0. Проверено 13 октября 2026 года
  • Большие файлы на GitHub — предел 100 МиБ на файл и рекомендация держать репозиторий меньше 1 ГБ
  • Выгрузка реестра dataportals-registry, выпуск 1.27.0 от 15 октября 2026 года: 107 списков наборов, интерфейс у 15, карта сайта у 12, своя разработка у 95, недействующие и снятые — 7. Запросы 15 октября 2026 года — в приложении
  • Как попасть в сбор data.europa.eu