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

Постоянные идентификаторы, DOI и версии

На данные ссылаются: в статье, в отчёте, в другом каталоге, в чужой программе. Ссылка полезна, только если через год она открывает тот же набор. Отсюда три практических вывода главы.

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

Главное, что показывают проверки в конце главы: идентификатор не надёжнее сайта, на который он указывает. В DataCite больше пятисот «находимых» DOI наборов данных ведут на localhost — адрес компьютера, на котором их настраивали. У четырёх из десяти проверенных установок DSpace постоянный идентификатор, напечатанный на странице записи, не открывается.

Что это​

Адрес и идентификатор. Адрес говорит, где лежит страница: portal.example/dataset/budget-2024. Идентификатор говорит, что это за объект, и не зависит от того, где объект сейчас. Постоянный идентификатор состоит из трёх частей: имени, службы, которая по имени отправляет на текущий адрес (её называют резолвером), и владельца, который обязуется обновлять этот адрес при каждом переезде. Без третьей части первые две не работают: служба честно перенаправит туда, куда ей сказали, даже если там давно ничего нет.

Механизмов три, и их часто путают.

Постоянный адрес страницы. Адрес набора не меняется из-за правки опечатки в описании, не содержит сегодняшнюю дату и номер строки в базе. При смене сайта старый адрес перенаправляет на новый. Это нужно всем, и обеспечивает это сам каталог.

Внешний постоянный идентификатор. DOI, Handle, ARK и подобные: имя регистрируют во внешней службе, а она перенаправляет на текущую страницу набора. Ссылка вида https://doi.org/10.xxxx/yyyy переживает смену домена, если владелец не забыл обновить адрес в службе.

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

Какие бывают идентификаторы​

ИдентификаторКто выдаёт и сколько стоитЧто обязательноГде встречается
DOIагентства регистрации: DataCite для данных, Crossref для публикаций и другие. Платит организация-участник, обычно через консорциумописание по схеме агентства: у DataCite шесть обязательных полейнаучные репозитории, журналы, Zenodo, Figshare, некоторые геокаталоги
HandleHandle.Net Registry; префикс — за ежегодный сбор, свой сервер HandleнетDSpace по умолчанию, Dataverse как вариант. Технически DOI — тоже Handle с префиксом 10.
ARKARK Alliance; номер организации (NAAN) бесплатно для библиотек, архивов и подобных «организаций памяти»нетнациональные библиотеки и архивы, например Национальная библиотека Франции
PURL, w3id.orgбесплатные службы перенаправления: purl.org ведёт Интернет-архив, w3id.org — сообщество W3C, правила добавляют запросом в GitHubнетсловари и онтологии связанных данных, постоянные адреса небольших проектов
CSTRнациональная система Китаяописание объектакитайские научные репозитории, часто вместе с DOI
Постоянная ссылка установкисама платформа, без внешней службынетDataverse (PermaLinks), идентификатор записи в любом каталоге

Рядом с идентификатором набора работают идентификаторы людей и вещей вокруг него: ORCID у автора, ROR у организации, IGSN у физического образца, RAiD у исследовательского проекта. IGSN и RAiD с 2020-х годов выдаются как DOI через DataCite: среди её репозиториев 40 каталогов образцов и 17 реестров проектов. По этим связям агрегаторы собирают граф: кто сделал набор, в какой организации, по какому проекту и в какой статье его использовали.

Зачем нужна​

Ссылки умирают быстро. По исследованию Pew Research Center 2024 года, из страниц, которые существовали в 2013 году, к октябрю 2023-го не открывались 38%. На 21% страниц государственных сайтов США есть хотя бы одна битая ссылка, чаще всего на сайтах городов. С наборами данных так же: при полной выгрузке data.gov.uk в 2023 году не открывались около 10% ссылок на файлы, подробнее — в главе о хранилище.

Ссылки ломают люди, а не технологии. Так в заметке «Cool URIs don't change» (1998) писал Тим Бернерс-Ли, и W3C с 1999 года держит все свои документы по прежним адресам по собственной политике постоянства. Обратный пример — российский реестр отечественного ПО в 2021 году: после переезда старые ссылки перестали открываться, а в новых адресах стоял технический номер записи в базе (330494) вместо номера программы в реестре (10269). При следующей смене базы такой адрес сломается снова. Короткие ссылки тоже не постоянны: их судьбу решает владелец сервиса, как показала история goo.gl в главе об архивации.

Чтобы на данные сослались и это засчитали. DOI делает набор полноправным источником: его ставят в список литературы, по нему считают цитирования, по нему агрегаторы связывают набор со статьёй и автором. Без идентификатора ссылка на данные остаётся адресом сайта, который никто не считает. Как из этого получается готовая строка ссылки — в главе об экспорте цитирования.

Чтобы сопоставлять записи. Реестры, справочники и классификаторы нужны другим данным как точка отсчёта. Если у записи нет устойчивого идентификатора, нельзя надёжно понять, что строка в прошлогоднем файле и строка в новом — одна и та же организация. Об этом раздел о реестрах ниже.

Как устроен DOI​

DOI состоит из префикса и суффикса: 10.5281/zenodo.16546069. Префикс 10.5281 выдан организации, суффикс она придумывает сама. Служба doi.org по запросу отвечает перенаправлением на адрес, который владелец записал при регистрации. Этот адрес называют посадочной страницей: на ней описание набора, ссылка для цитирования и путь к файлам. Сам DOI файлов не хранит.

Агентства. Для данных DOI регистрирует DataCite — объединение, зарегистрированное в Германии. 12 октября 2026 года в DataCite 138,3 миллиона DOI, из них 76,4 миллиона с типом «набор данных». Что стоит за этим числом, разобрано в главе о мире каталогов в цифрах. Crossref, агентство из США, регистрирует DOI статей, книг и препринтов. Есть и другие агентства, например Бюро публикаций ЕС. Начиная с InvenioRDM v14 и в Dataverse можно регистрировать DOI и через Crossref, но для наборов данных обычный выбор — DataCite.

Описание обязательно. При регистрации в DataCite заполняют шесть полей: идентификатор, автор, название, издатель, год, тип ресурса. Без автора и года из DOI не получится ссылка для цитирования. Что ещё стоит заполнить, сказано в главе о полноте метаданных.

DOI нельзя удалить. У записи в DataCite три состояния. Черновик ещё не зарегистрирован в глобальной системе, его можно удалить. «Зарегистрированный» DOI работает, но его описание скрыто из поиска. «Находимый» работает и виден всем. Из двух последних состояний пути назад нет. Если набор пришлось снять, DataCite советует оставить на его месте страницу-надгробие: ссылка для цитирования, DOI и объяснение, почему данных больше нет. Для тех, кто не может сделать такую страницу, у DataCite есть общая страница-заглушка; 12 октября 2026 года на неё вели 5145 находимых DOI.

Сколько стоит. DataCite не берёт плату за каждый DOI, пока организация регистрирует меньше 100 тысяч в год. Платят за участие: самостоятельный член — 2000 евро в год плюс инфраструктурный сбор от 200 до 700 евро в зависимости от страны. Организация внутри консорциума членский взнос не платит, только инфраструктурный сбор. Поэтому университеты обычно получают DOI через национальный или библиотечный консорциум, а небольшие проекты — через чужой репозиторий вроде Zenodo, где DOI бесплатен для автора.

Чего DOI не гарантирует​

Что данные сохранятся. DOI ведёт на страницу, а страницу держит владелец. Исследование «Open is not forever» (2020) насчитало 176 журналов открытого доступа, которые исчезли с 2000 по 2019 год, — с DOI и без. Идентификатор помогает найти след, но не заменяет архив. Как сохранять сами данные, разобрано в главе об архивации.

Что адрес правильный. Служба doi.org перенаправляет туда, куда записал владелец, и не проверяет, есть ли там что-нибудь. 12 октября 2026 года в DataCite 765 находимых DOI ведут на localhost, из них 548 — наборы данных. Такой адрес открывается только на компьютере того, кто его записал. Одна из причин видна в документации GeoNetwork: в качестве шаблона адреса посадочной страницы она предлагает http://localhost:8080/geonetwork/srv/resources/records/{{uuid}}. Португальский институт моря и атмосферы IPMA в 2025 году зарегистрировал два DOI с таким адресом, один из них — с названием «Copy of template MFSD Template…», то есть тестовую копию шаблона.

Что за DOI стоит набор. DOI выдают и отдельной записи большой базы: наблюдению вида, кристаллической структуре, отдельному эксперименту. Поэтому число DOI с типом «набор данных» нельзя читать как число наборов, см. главу о мире каталогов в цифрах.

Что агентство будет работать с вами всегда. DataCite и Crossref соблюдают санкции своих стран. Crossref не принимает заявки от организаций, которые входят в правительство России или находятся под санкциями США, Великобритании или ЕС; остальные заявки из России и Беларуси проходят отдельную проверку, а после 2022 года каждого российского члена проверили по санкционным спискам и часть исключили. Уже выданные DOI продолжают разрешаться, но новые организация может не получить. Китай выстроил параллельную систему: национальный идентификатор CSTR и репозиторий Science Data Bank, который при этом выдаёт DOI через DataCite (28 406 записей на октябрь 2026 года) и отдаёт описания европейским и американским агрегаторам.

Версии​

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

В научном репозитории опубликованная версия не переписывается. Исправление — новая версия со своим DOI или с тем же DOI и новым номером, по правилам репозитория. Платформы делают это по-разному, и разница важна для ссылки.

МодельКак устроеноГде
DOI на каждую версию и общий DOIу каждой версии свой DOI, плюс общий (родительский) DOI, который всегда ведёт на последнюю версиюInvenioRDM и Zenodo, Figshare (общий DOI и DOI с суффиксом .v1, .v2)
Один DOI и номер версииDOI один на весь набор, версия (1.0, 1.1, 2.0) указывается в ссылке для цитированияDataverse
DOI с номером версииDOI новой версии — исходный DOI с номером через точкуDSpace при включённых версиях записей
Один обновляемый набор и снимки на датуадрес набора постоянный, файл заменяется; прошлые выгрузки лежат в архиве с датойпорталы открытых данных, реестры, справочники
Серия наборовкаждый выпуск — отдельный набор со своим адресом, серия объединяет ихкласс dcat:DatasetSeries в DCAT 3, статистика по годам

У InvenioRDM и Figshare статья может сослаться на DOI конкретной версии, а общий DOI остаётся тем, кому нужна всегда последняя. У Dataverse статья ссылается на DOI и номер версии вместе. InvenioRDM с версии 13 позволяет сделать DOI необязательным, но по умолчанию не даёт выпустить версию без DOI, если у предыдущей он был: иначе общий DOI мог бы привести к версии без идентификатора.

Одна ссылка — разное содержимое. На портале открытых данных ссылка на файл обычно ведёт на текущий файл. В CKAN адрес загруженного файла строится по идентификатору ресурса, имя файла в нём ни на что не влияет: заменили файл — по старой ссылке скачивается новый. Для портала это удобно, для научной ссылки — нет: через год по ней получат не те данные. Помогают две вещи. Контрольная сумма показывает, что файл не изменился: в DCAT 3 для неё есть свойство у дистрибутива, Dataverse дополнительно считает для таблиц UNF — контрольную сумму содержимого, не зависящую от формата файла. И снимки на дату: если на файл уже могли сослаться, прошлый вариант остаётся в архиве.

Как версию описывают метаданные. В DCAT 3 (2024) появились свойства версии: номер (dcat:version), что изменилось (adms:versionNotes), предыдущая и текущая версии (dcat:previousVersion, dcat:hasCurrentVersion). В DataCite версии связывают отношениями IsNewVersionOf, IsVersionOf, HasVersion. У CKAN есть поле «версия», и ckanext-dcat выгружает его в DCAT, но это просто подпись: CKAN не хранит прошлые состояния набора как отдельные объекты со своими адресами.

На портале открытых данных набор обычно один, а файлы заменяются. Тогда нужны:

  • дата и периодичность обновления в описании;
  • неизменный адрес набора при замене файла;
  • архив предыдущих файлов с датой, если на них уже могли сослаться.

Реестры и справочники​

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

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

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

  • уникальный идентификатор у каждой записи, присвоенный по правилам реестра, а не номер строки в файле и не технический номер в базе;
  • постоянная ссылка на реестр целиком и на каждую запись, построенная из этого идентификатора;
  • записи не удаляются, а получают статус «исключена» с датой;
  • видны прошлые версии записи или всего реестра;
  • указано основание записи: решение, приказ, документ, со ссылкой;
  • реестр выгружается целиком, регулярными снимками на дату, и доступен через API.

Опубликованный реестр без идентификаторов и истории — снимок, который нельзя надёжно сопоставить с другими данными: запись могли переименовать, исключить или внести с ошибкой, и по файлу этого не видно. Регулярные снимки к тому же дешевле для самой системы: выгрузка всего реестра по запросу на большой базе легко кладёт сервер, а готовый файл раз в сутки — нет.

Идентификаторы объектов внутри данных​

Тот же подход работает и для данных, которые реестром не называют. У Overture Maps постоянный идентификатор GERS есть у каждого здания, дороги, места и административной единицы в ежемесячном выпуске. Рядом ведутся реестр идентификаторов с датами первого и последнего появления, журнал изменений по объекту и таблицы соответствия с идентификаторами источников. Другой поставщик может публиковать только свои показатели — пробки, население — без геометрии, а соединяют их по идентификатору.

Урок там же. В выпуске 2025-06-25.0 Overture заменил прежние идентификаторы, в которых были зашиты ячейка сетки H3 и тема, на случайные UUID, и старые номера больше не находятся. Идентификатор со смыслом внутри ломается, когда меняется смысл. У OpenSanctions после устранения дублей у сущности один канонический идентификатор, а если она совпала с записью Викиданных — номер Викиданных. Подробнее — в главе о передовых каталогах.

Варианты реализации​

Постоянный адрес силами платформы​

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

ПлатформаЧто в адресеЧто будет при переименовании
CKANкороткое имя набора (/dataset/budget-2024); у набора есть и неизменный UUIDадрес по старому имени отвечает «не найдено». Адрес по UUID всегда перенаправляет на текущее имя — его и стоит давать для ссылок
Socrataкод из двух групп по четыре символа вида erm2-nwe9 и названиеназвание в адресе декоративное: любой путь с кодом перенаправляет на текущий адрес
Huwise (OpenDataSoft)читаемый идентификатор набора; есть и внутренний, который не меняется никогдачитаемый идентификатор можно менять только до публикации
Dataverseпостоянный идентификатор (DOI, Handle или постоянная ссылка установки)не зависит от названия
DSpaceHandleне зависит от названия
GeoNetworkUUID записине зависит от названия
InvenioRDMидентификатор записине зависит от названия; у каждой версии свой

Проверено 12 октября 2026 года: на data.gov.gr адрес набора по UUID отвечает перенаправлением на адрес по имени, а на портале Нью-Йорка на Socrata путь с произвольным названием и кодом набора приводит к текущей странице.

Свой постоянный адрес без DOI​

Если DOI не нужен, а адрес должен пережить смену платформы, есть недорогие пути.

  • Перенаправления на своём домене. Адреса наборов строятся от домена, который организация не собирается менять, и при каждом переезде на веб-сервере ставят таблицу перенаправлений «старый адрес → новый». Самый дешёвый способ и единственный, который нужен всем.
  • Handle. Префикс получают в Handle.Net Registry за ежегодный сбор и держат свой сервер Handle. DSpace поставляется с ним, но с префиксом-заглушкой 123456789, который глобальная система не знает. Пока префикс не зарегистрирован и сервер не запущен, Handle на страницах — только видимость.
  • ARK. Номер организации выдаётся бесплатно, ARK можно разрешать на своём сервере или через общий резолвер n2t.net. Подходит библиотекам, архивам, музеям.
  • w3id.org и PURL. Бесплатные службы перенаправления. На w3id.org правило для своего пространства имён добавляют запросом в репозиторий на GitHub. Подходят небольшим проектам и статическим сайтам, которым нужен адрес, не привязанный к хостингу.

DOI​

В ядре платформы. Dataverse, InvenioRDM, DSpace, Figshare и GeoNetwork регистрируют DOI сами. Нужны договор с агентством, префикс и тестовая учётная запись. InvenioRDM и DSpace по умолчанию подключены к тестовой системе DataCite, чтобы не выпустить настоящие DOI по ошибке. Ошибку, допущенную уже в рабочей системе, исправить трудно: DOI не удаляются.

Через расширение. У CKAN DOI нет в ядре. Расширение ckanext-doi Музея естественной истории в Лондоне переводит поля набора в схему DataCite и регистрирует DOI. Про риски — в разделе о расширениях.

Вручную или через консорциум. Организация с префиксом может регистрировать DOI в веб-интерфейсе DataCite Fabrica или через его API и указывать в них адреса страниц любой платформы, в том числе облачной. Так делают, когда DOI нужен десятку наборов, а не каждому. Консорциумы предлагают это как услугу: например, австралийская ARDC выдаёт DOI для данных государственных научных организаций, но прямо предупреждает, что поддерживать адреса придётся самим.

В чужом репозитории. Копия или выпуск данных уходит в Zenodo или Figshare и получает DOI там. Так делают с репозиториями на GitHub: выпуск архивируется в Zenodo автоматически. Подробнее — в главе о Git-репозиториях. Минус один: DOI ведёт на копию в Zenodo, а не на ваш портал, и обновлять копию нужно отдельно.

Когда нужна, а когда нет​

СитуацияЧто нужноЧем обычно закрывают
Научный репозиторий, грантодатель или журнал требует ссылку на данныеDOI на каждую опубликованную версию, ORCID авторов, страница-надгробие при снятииDataverse, InvenioRDM, DSpace с DataCite, Figshare, Zenodo
Портал открытых данных министерства или городапостоянный адрес по неизменному ключу, перенаправления при переезде, дата обновления; DOI — не нуженлюбая платформа, если выбрать ключ в адресе
Расписание транспорта, оперативные данные, которые меняются ежедневнопостоянный адрес набора и ленты; DOI лишнийлюбая платформа
Реестр или справочникидентификатор каждой записи, снимки на дату, историясвоя учётная система и выгрузки; портал — для снимков
Геопортал с записями ISOUUID записи в адресе; DOI — если на слои ссылаются в научных работахGeoNetwork с включённым DOI
Отдельные наборы, на которые ссылаются в докладах организацииDOI только этим наборамFabrica по договору консорциума или копия в Zenodo
Публикация без порталаадрес, не привязанный к хостингу, DOI на выпускGit-репозиторий и Zenodo, w3id.org

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

Коротко, как выглядит обоснование по шаблону карточки решения:

  • Контекст. Университет ведёт портал на CKAN 2.12 для данных кафедр. Фонд, который финансирует большую часть проектов, начал требовать DOI для данных к отчётам.
  • Варианты. Поставить ckanext-doi; завести рядом Dataverse или InvenioRDM для данных, на которые ссылаются; отправлять такие наборы в Zenodo; регистрировать DOI вручную через консорциум.
  • Критерии. Неизменность опубликованной версии, поддержка расширения на текущей версии CKAN, стоимость сопровождения, где окажется ссылка — на своём портале или в чужом репозитории.
  • Решение. Рядом с CKAN поставить Dataverse для данных к публикациям; CKAN оставить для оперативных и учебных наборов; DOI получать через библиотечный консорциум.
  • Почему. CKAN не хранит версии: DOI на заменяемый файл не даёт той неизменности, ради которой фонд его требует. ckanext-doi на CKAN 2.11 и 2.12 не тестировался. Zenodo проще, но ссылки уводят с портала университета, а копии приходится обновлять вручную.
  • Когда пересмотреть. Если ckanext-doi начнут тестировать на текущей версии CKAN и потребуется DOI только для небольшого числа наборов без версий, либо если данных к публикациям станет так мало, что хватит Zenodo.

Как это сделано в платформах​

Пометки — ядро, расширение, нет, не проверено, как в сводной таблице. Сверено с документацией платформ 12 октября 2026 года.

ПлатформаDOIВерсииЧто важно знать
Dataverse 6.12.1ядро: DataCite, Crossref (с 6.12.1), EZID, Handle и постоянные ссылки установки; несколько поставщиков на одной установкеядро: основные и малые версии (1.0, 1.1, 2.0), DOI один на наборфайлам можно выдавать собственные идентификаторы — зависимые от DOI набора или независимые
InvenioRDM v14, Zenodoядро: DataCite, с v14 — Crossref; можно принять DOI, выданный в другом местеядро: у каждой версии свой DOI плюс родительский (с v12)с v12 не регистрирует DOI для записей с ограниченным доступом; с v13 DOI можно сделать необязательным
Figshareядро сервиса: DataCiteядро: общий DOI ведёт на последнюю версию, у версий суффикс .v1, .v2облачный сервис, своя установка невозможна
DSpace 10ядро, включается настройкой: DataCite или EZID, в дополнение к Handleядро: версии записей; DOI версии — исходный с номером через точкуадрес записи по-прежнему строится от Handle; DOI отправляются в DataCite отдельной задачей по расписанию; фильтр решает, каким записям DOI положен
GeoNetwork 4.4ядро, включается в настройках: DataCite или API Бюро публикаций ЕС; только для публичной записинет: при включённом согласовании есть рабочая копия записи и история статусов, но не версии со своими идентификаторамиDOI получает описание слоя, а не данные: слой на картографическом сервере может меняться
CKAN 2.12расширение ckanext-doi: заявлены CKAN 2.9 и 2.10нет: журнал изменений и поле «версия» — не версии со своими адресамидля ссылок давайте адрес по UUID набора
NADAнет: только поле для DOI, выпущенного отдельноне провереноцитирование через DataCite работает, если DOI есть
Huwise, Socrata, ArcGIS Hubнетнетпостоянный адрес — по неизменному коду набора или элемента; DOI можно выпустить вручную и указать в своём поле
Hugging Face, Kaggleядро площадки: DOI через DataCite по кнопкеHugging Face — ревизии репозитория Git; DOI выдаётся на текущую ревизию, для новой выпускают новый, а старый помечается устаревшимпосле выдачи DOI набор на Hugging Face нельзя удалить или переименовать без поддержки; подробнее — в главе об ML-каталогах
Статический сайт, Git-репозиторийчерез Zenodo: DOI на каждый выпускметки выпусков в репозиторииссылка на файл в ветке показывает текущее состояние, ссылка на метку выпуска — зафиксированное

Расширения и их риски​

ckanext-doi — единственный путь к DOI внутри CKAN, и на октябрь 2026 года рискованный. Последний выпуск, 4.0.4, вышел 22 сентября 2025 года, с тех пор изменений нет. В описании заявлены CKAN 2.9 и 2.10. Автоматические тесты идут в готовых образах самого музея, а эти образы последний раз обновлялись 20 сентября 2023 года — до выхода CKAN 2.11. Значит, на 2.11 и 2.12 расширение не тестировалось вовсе. Портал, которому DOI нужен на текущем CKAN, либо берёт проверку на себя, либо выдаёт DOI вне CKAN. Состояние остальных расширений CKAN — в главе про CKAN.

Модули DOI в ядре тоже требуют внимания при обновлениях. В DSpace регистрация разделена на два шага: запись помечается в базе, а отправку в DataCite делает отдельная команда по расписанию. Если задачу по расписанию не перенесли на новый сервер при обновлении, DSpace считает DOI выданными, а в DataCite их нет, и ссылки не открываются. В GeoNetwork шаблон адреса посадочной страницы задают вручную, и с ним связана ошибка с localhost, описанная выше.

Что показывает реестр​

По выгрузке реестра dataportals-registry (выпуск 1.27.0 от 15 октября 2026 года) пометка «DOI» стоит у 2008 каталогов из 43 614. Из них 1404 — научные репозитории, 584 — геопорталы, остальные единичны: 7 каталогов показателей, по 3 портала открытых данных и каталога микроданных.

Число нужно читать осторожно. Пометку в реестре в основном проставляют по платформе: если программа умеет выдавать DOI, пометку получают все её установки, у которых нет ручной отметки «нет». Поэтому среди геопорталов с DOI 555 — установки GeoNetwork. В самом DataCite 12 октября 2026 года 7209 DOI ведут на адреса, где в пути есть слово geonetwork, и приходятся они примерно на 45 установок; больше трёх тысяч — у французской гидрографической службы SHOM и австрийского ведомства геодезии BEV. Даже с поправкой на установки с другим адресом это на порядок меньше 555. Реестр показывает, кто может выдать DOI, а не кто выдаёт. Запросы — в приложении «Как работать с реестром».

Публикация без портала​

Без портала постоянство адреса целиком на авторе, зато и способы проще.

  • Выпуск и DOI. Репозиторий на GitHub связывают с Zenodo, и каждый выпуск получает свой DOI, а весь ряд выпусков — общий. Файл CITATION.cff в корне подсказывает, как ссылаться. Как это настроить, — в главе о Git-репозиториях.
  • Ссылка на версию, а не на ветку. Ссылка на файл в ветке main всегда показывает текущее состояние. Для ссылки в статье берут адрес метки выпуска или DOI выпуска.
  • Адрес, не привязанный к хостингу. Если набор живёт на статическом сайте, адрес вида https://w3id.org/ваш-проект/ переживёт переезд с GitHub Pages на другой хостинг: поменяется только правило перенаправления.

Как проверить живой портал​

  • Измените описание набора на тестовом стенде, в том числе название. Адрес страницы не должен измениться, а если изменился, старый должен перенаправлять.
  • Найдите на странице постоянную ссылку. Если её нет, посмотрите, есть ли в адресе неизменный ключ: UUID, код, номер.
  • Если обещан DOI, он виден на странице, а https://doi.org/… открывает эту же страницу, а не главную и не localhost.
  • Если на странице Handle, проверьте его через hdl.handle.net. Префикс 123456789 — заглушка из поставки DSpace.
  • Откройте предыдущую версию набора и проверьте, что её номер стоит в предлагаемой ссылке.
  • После миграции на старом адресе стоит перенаправление, а не страница «не найдено».

Команды​

Куда ведёт DOI и что о нём знает DataCite:

curl -sI https://doi.org/10.5281/zenodo.16546069 | grep -i '^location'
curl -s https://api.datacite.org/dois/10.5281/zenodo.16546069 \
| jq '.data.attributes | {url, state, publisher, version, related: [.relatedIdentifiers[]? | select(.relationType | test("Version"))]}'

В первом ответе должно быть перенаправление на страницу набора. Во втором — адрес, который записал владелец, состояние и связи с другими версиями.

Сколько DOI у репозитория и есть ли среди них адреса, которые нигде, кроме компьютера владельца, не откроются. Идентификатор репозитория в DataCite (client-id) виден в ответе предыдущей команды, в разделе relationships:

CLIENT=cern.zenodo
curl -s "https://api.datacite.org/dois?client-id=$CLIENT&page%5Bsize%5D=0" | jq '.meta.total'
curl -s -G https://api.datacite.org/dois --data-urlencode "client-id=$CLIENT" \
--data-urlencode 'query=url:*localhost*' --data-urlencode 'page[size]=0' | jq '.meta.total'

Разрешается ли Handle, напечатанный на странице записи DSpace:

curl -s https://hdl.handle.net/api/handles/1234/5678 | jq '.responseCode'

Код 1 — Handle существует, 100 — не найден, 2 — ошибка на стороне сервера Handle, пустой ответ — сервер не ответил.

Устойчив ли адрес на CKAN: адрес по UUID должен перенаправлять на адрес по имени.

PORTAL=https://data.gov.gr
ID=$(curl -s "$PORTAL/api/3/action/package_search?rows=1" | jq -r '.result.results[0].id')
curl -s -o /dev/null -w '%{http_code} %{redirect_url}\n' "$PORTAL/dataset/$ID"

Три проверки на выборке​

Проверки DataCite сделаны 12 октября 2026 года; для реестра использован выпуск 1.27.0 от 15 октября.

Ведут ли DOI наборов данных на живые страницы. Случайная выборка DOI ничего не говорит о практике: половина в ней от одного японского института, который регистрирует каждый эксперимент. Поэтому взяты 700 случайных репозиториев DataCite, у 314 из них нашлись наборы данных, и от каждого проверен один случайный DOI набора.

РезультатРепозиториев
страница открылась233
защита от роботов (403, проверка браузера) — программой не проверить55
ссылка мертва: «не найдено», несуществующий домен, частный адрес16
ошибка сервера или нет ответа дважды подряд10

Среди мёртвых ссылок — DOI, которые с самого начала вели в никуда: на частный адрес 10.4.0.146, на IP-адрес с портом 8080, на тестовый стенд nhsdigital-dev.collibra.com корпоративного каталога. Остальные — следы переездов: «не найдено» у старых записей B2SHARE и у страниц геопортала NOAA 2018 года, несуществующие домены у четырёх университетских репозиториев. Каждый двадцатый репозиторий с наборами данных отдаёт хотя бы часть DOI, которые не открываются, а ещё у каждого шестого программа не может это проверить.

Разрешаются ли Handle в DSpace. Из реестра взяты 120 случайных действующих установок DSpace с OAI-PMH, ответили 86. По идентификатору первой записи проверено, разрешается ли её Handle через hdl.handle.net. У 51 установки — да. У 12 стоит заглушка 123456789 из поставки, у 7 — буквенный локальный префикс вроде item или edata, который вне сайта ничего не значит. Ещё у 16 префикс числовой, но Handle не найден или сервер Handle не отвечает. Итого у 35 установок из 86 постоянный идентификатор на странице записи — только видимость.

Сколько геокаталогов на деле выдают DOI. Сравнение реестра и DataCite описано выше: 555 установок GeoNetwork с пометкой «DOI» против примерно 45 установок, на которые DOI действительно ведут.

Что из этого следует​

  • Заложите постоянный адрес до запуска: в адресе набора — неизменный ключ, а для ссылок — адрес, который не зависит от названия.
  • Таблицу «старый адрес → новый» и перенаправления готовьте до переезда, а не после. DOI спасает только те наборы, которым его выдали заранее.
  • Выдавайте DOI, когда на данные ссылаются как на источник и вы готовы годами держать посадочные страницы. Ежедневно меняющемуся набору DOI не нужен.
  • Если выдаёте DOI, выдавайте его неизменным версиям, а при снятии данных оставляйте страницу-надгробие: DOI не удаляется.
  • Проверьте адреса в своих DOI и Handle программой: не тестовый стенд, не localhost, не заглушка из поставки.
  • Расширение для DOI проверяйте по тестам под свою версию ядра. ckanext-doi на CKAN 2.11 и 2.12 не тестировался.
  • Помните, что DOI — договор с агентством в чужой юрисдикции. Держите и свой постоянный адрес: он останется, даже если новые DOI получить не удастся.

Источники​