Конечно, мы могли бы сделать это в другом порядке.
Поскольку iDigBio описывает коллекции, нам, вероятно, следует:
Получив список совпадений, мы можем добавить идентификаторы к записям GrSciColl для работы с импортом (аналогично тому, что мы делаем в случае с IH).
Наверное, у каждого есть представление о том, как действовать дальше, но ради отслеживания происходящего я пишу здесь этапы процесса сопоставления:
Теперь кто что будет делать?
Модели между iDigBio и GrSciColl кажутся очень похожими. Вот как мы предлагаем отображать поля. Не могли бы вы вернуться к этому и сообщить нам, если у вас есть какие-либо комментарии?
иДиБио | GrSciColl
-- | --
Учреждение | Сопоставляется с «Учреждением» в объекте «Коллекция» и «Именем», если используется для создания учреждения.
Коллекция | Имя в колл.
наборы записей | Установить как MachineTag (поскольку он предназначен для внутреннего использования) в столбце
Запрос набора записей | MachineTag в коллекции
Код учреждения | Сопоставлен с «Кодексом» в учреждении
Код коллекции | Сопоставлен с «Кодом» в коллекции
Коллекция Уид | Добавлен как идентификатор
Коллекция Лсид | Добавлен как идентификатор
URL коллекции | Домашняя страница в Колле
URL каталога коллекции | URL-адрес каталога в Собрании
Описание | Описание в сборнике
ОписаниеДляСпециалистов | Объединено с описанием в Coll (или новое поле?)
КаталогОбразцы | Количество образцов в коллекции
известные токонтейнтипы | Отказаться? (поле используется менее 100 раз) Нужно ли это для внутреннего использования? В этом случае мы можем добавить его как machineTag.
ТаксонПокрытие | Таксономический охват в Собрании
Географический диапазон | Географический охват в Колле
КоллекцияЭкстенты | Отказаться? (похоже, что в большинстве случаев он содержит строку с тем же значением, что и cataloguedSpecimens)
Контакты | Сопоставлено с именем персонала
Контакт Роль | Сопоставляется с должностью персонала
Контактный адрес электронной почты | Сопоставлено с электронной почтой персонала
Почтовый адрес | Почтовый адрес в Колледже
Почтовый Город | Почтовый город в Колле
Состояние рассылки | Состояние рассылки в собрании
почтовый индекс | Почтовый индекс в Колле
Физический адрес | Физический адрес в коллекции
Физический город | Физический город в Колле
Физическое состояние | Физическое состояние в колле
Физический почтовый индекс | Физический почтовый индекс в Колле
УникальноеИмяUUID | Добавлен как идентификатор в inst
АтрибуцияЛоготипURL | Новое поле?
ProviderManagedID | Добавлен как идентификатор
Получено из | Добавлен как MachineTag, если он предназначен для внутреннего использования?
То же, что и | Добавлен как идентификатор
Флаги | Добавлено как MachineTag
ПорталПоказать | Добавлено как MachineTag
лат | Широта в учреждении
Лон | Долгота в учреждении
Как упоминалось ранее, мы работаем над синхронизацией Index Herbariorum и GrSciColl (https://github.com/gbif/registry/issues/167). Существует частичное совпадение между iDigBio и IH.
Что нам делать в этих случаях?
Я предлагаю перезаписать информацию для полей, предоставленных IH (значение IH перезаписывает значение iDigBio или GrSciColl) и сохранить только поля, полученные из iDigBio.
Если запись iDigBio является самой последней, мы создадим выпуск GitHub, а затем отправим последнее обновление в IH.
Это было бы нормально?
по части 1:
Что касается того, кто выполняет работу, то я со всем уважением считаю, что было бы лучше и наиболее целесообразно, если бы GBIF смог посвятить этому время. iDigBio/ACIS IT по-прежнему не хватает на 1 члена команды, и, несмотря на наше ощущение, что получившийся продукт будет работать намного лучше для всех, я не думаю, что мы можем гарантировать, что сможем зафиксировать его в ближайшее время.
Вот некоторые другие примечания к разделу 1 этого выпуска:
для сопоставления может быть возможно сопоставить код учреждения GBIF с кодом учреждения collections.json.
на основе существующей документации collections.json (в файле readme репо) institution_lsid
сопоставляется с «LSID GRBio или coolURI для LSID учреждения», если он найден, в противном случае он пуст.
другие совпадения, вероятно, должны быть основаны на строковых алгоритмах сопоставления. Потенциально полезное примечание для целей сопоставления/проверки заключается в том, что uuid набора записей в collections.json будет соответствовать uuid набора записей, предоставленному нашим API.
Часть 2:
Отдельные записи в collections.json iDigBio являются записями Institution-Collection. GBIF правильно разбивает Учреждение и Коллекцию на отдельные сущности. См. прилагаемую диаграмму для предполагаемой иерархии.
Примечание. В файле readme есть определения полей: https://github.com/iDigBio/idb-us-collections .
Комментарии к отдельным сопоставлениям:
«UniqueNameUUID добавлен как идентификатор» — похоже, это предназначено как UUID «учреждения» в иерархии записей iDigBio, но, похоже, не было реализовано. Хранить как идентификатор в системе GBIF.
RecordsetQuery: создает ссылку на набор записей iDigBio (например, https://www.idigbio.org/portal/recordsets/ea12da76-1b2e-4944-8709-1de3af1c65e2). Это поле можно пропустить, если вы создаете ссылки на набор записей другим способом.
Наборы записей — напоминание: это наш родительский объект для отдельных записей в нашей системе.
KnownToContainTypes: от этого можно отказаться.
Collectionextent: может быть скопирован в CatalogedSpecimens, где CatalogedSpecimens пуст, но не требуется сохранять как отдельное поле (отбрасывать).
«attributionLogoURL, providerManagedID, производный от» — обратите внимание, что это термины Audubon Core.
По части 3:
Мы согласны с предложенным методом интеграции данных IH и iDigBio. Чтобы определить, кто является самой последней записью, IH или iDigBio, вы можете использовать дату фиксации для отдельного файла в репозитории iDigBio в качестве даты добавления/изменения.
Этот репозиторий работает следующим образом: человек создает/обновляет фрагмент json с именем ./collections/{collection_uuid}.json и фиксирует его. Затем программный рабочий процесс запускает тесты и объединяет фрагменты json в полный collections.json. Пример отдельного файла json:
Важное примечание : файл collections.json
, который фактически загружается и используется, обслуживается из ветки json-index
или gh-pages
(он передается в обе), а не из главной ветки. Например:
https://raw.githubusercontent.com/iDigBio/idb-us-collections/json-index/collections.json
или
http://idigbio.github.io/idb-us-collections/collections.json
Я надеюсь, что все это поможет. Пожалуйста, не стесняйтесь обращаться к нам за дополнительными вопросами или разъяснениями.
@roncanepa @nrejack Я проверял сопоставления и, похоже, AttributionLogoURL
— единственное поле iDigBio, которого нет в нашем реестре. Но я проверил файл collections.json
и заметил, что это поле всегда пусто. Должны ли мы по-прежнему добавлять его в наш реестр? или мы можем отказаться от него тоже?
@asturcon Мы взяли это поле из Audubon Core, но договорились, что вы можете отказаться от этого поля, поскольку мы ничего с ним не делаем.
Большое спасибо за ваши ответы @roncanepa и @nrejack !
В этом случае мы начнем с [ 1. Связать записи iDigBio и GrSciColl ]. Мы сделаем все возможное автоматически и отправим вам и Кэт кое-что, что может потребовать ручной проверки. Вы согласны?
Хорошо со мной, отпусти! Всем большое спасибо!!
Привет, @CatChapman , Мортен работал над сопоставлением записей iDigBio и GrSciColl: https://github.com/gbif/registry/issues/187 .
Оказывается, имеет смысл сначала сопоставить все с учреждениями GrSCiColl, потому что это записи, для которых у нас есть гораздо больше деталей и идентификаторов. Затем, как только мы получили совпадения для учреждения, мы могли бы взглянуть на коллекции и сопоставить их.
Мортен описал весь свой процесс сопоставления и результаты по проблеме, указанной выше, но вот основные моменты:
Это оставляет 235 записей iDigBio несопоставимыми, для которых мы создадим новые записи в GrSciColl.
Теперь нам нужна ваша помощь, чтобы проверить соответствие! Не могли бы вы перейти на https://github.com/gbif/registry/issues/187 и посмотреть на результат сопоставления? (Мы также можем предоставить вам электронную таблицу, если это более удобно).
Обратите внимание, что у нас могут быть некоторые повторяющиеся коллекции в начале, так как некоторые названия коллекций могут быть немного расплывчатыми в GrSciColl, и у нас не всегда есть надежные коды. Не беспокойтесь, мы рассчитываем сгладить их немного позже.
Мортен также задокументировал здесь, как мы ожидаем провести слияние: https://github.com/gbif/registry/issues/188 .
@ManonGros ВАУ! Отлично. Вы, ребята, качаетесь, так сильно.
Электронная таблица была бы фантастической - я только что отправил вам электронное письмо, поэтому не стесняйтесь присылать ее туда или давать ссылку на нее (если это таблица Google и т. д.) здесь.
Сейчас посмотрю №188.
Здорово! Я добавляю CSV-файл, разделенный табуляцией, для сопоставления:
iDigBio_GrSciColl_matches_march2020.tsv.zip
Было бы здорово вернуть ваш чек в машиночитаемом формате. Мы предлагаем добавить в этот файл столбец со значениями true/false для каждого совпадения, а также потенциальный столбец «исправление» с соответствующим совпадением, которое вы считаете верным.
Файл JSON Мортена обновлен с учетом ввода CAT:
iDigBio_Morten_matches_AND_Cat_addition.json.zip
Самый полезный комментарий
@asturcon Мы взяли это поле из Audubon Core, но договорились, что вы можете отказаться от этого поля, поскольку мы ничего с ним не делаем.