Единое имя ресурса - Uniform Resource Name

Uniform Resource Name ( URN ) является унифицированный идентификатор ресурса (URI) , который использует urn схему . URN - это глобально уникальные постоянные идентификаторы, назначаемые в определенных пространствах имен, поэтому они будут доступны в течение длительного периода времени, даже после того, как ресурс, который они идентифицируют, перестанет существовать или станет недоступным. URN не могут использоваться для непосредственного определения местоположения элемента и не должны быть разрешаемыми, поскольку они являются просто шаблонами, которые другой синтаксический анализатор может использовать для поиска элемента.

URI, URN и URL

Первоначально URN задумывались как часть трехэтапной информационной архитектуры для Интернета, наряду с унифицированными указателями ресурсов (URL) и унифицированными характеристиками ресурсов (URC) , структурой метаданных . Как описано в RFC 1737 (1994), а затем в RFC 2141 (1997), URN отличались от URL-адресов, которые идентифицируют ресурсы путем указания их местоположения в контексте конкретного протокола доступа, такого как HTTP или FTP . Напротив, URN были задуманы как постоянные , не зависящие от местоположения идентификаторы, назначаемые в определенных пространствах имен , как правило, органом, ответственным за пространство имен, поэтому они являются глобально уникальными и постоянными в течение длительных периодов времени, даже после того, как ресурс, который они идентифицируют, перестает использоваться. существует или становится недоступным.

URC никогда не продвигались дальше концептуальной стадии, и их место позже заняли другие технологии, такие как Resource Description Framework . Начиная с RFC 3986 в 2005 году, использование терминов «Унифицированное имя ресурса» и «Унифицированный указатель ресурса» было устаревшим в технических стандартах в пользу термина «Унифицированный идентификатор ресурса» (URI), который охватывает оба, - точка зрения, предложенная в 2001 году совместная рабочая группа Консорциума World Wide Web (W3C) и Инженерной группы Интернета (IETF).

URI , это строка из символов , используемых для идентификации или имя в ресурс . URI используются во многих интернет-протоколах для обращения к информационным ресурсам и доступа к ним. Схемы URI включают httpи ftpпротоколы, а также сотни других.

В «современном представлении», как его называют, все URI идентифицируют или называют ресурсы, возможно, однозначно и постоянно, причем некоторые из них также являются «локаторами», которые разрешаются в сочетании с указанным протоколом для представления ресурсов.

Другие URI не являются локаторами и не обязательно разрешимы в пределах систем, в которых они находятся. Эти URI могут служить именами или идентификаторами ресурсов. Поскольку ресурсы могут перемещаться, непрозрачные идентификаторы, которые не являются локаторами и не привязаны к определенным местоположениям, вероятно, с большей вероятностью, чем идентификаторы, которые являются локаторами, останутся уникальными и постоянными с течением времени. Но возможность разрешения URI зависит от многих рабочих и практических деталей, независимо от того, называется ли он «именем» или «локатором». С современной точки зрения, нет четкой границы между «именами» и «локаторами».

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

Термин «URN» продолжает в настоящее время в качестве одного из более чем ста URI «схем», urn:, распараллеливание http:, ftp:и так далее. URI urn:схемы не являются локаторами, не обязательно должны быть связаны с конкретным протоколом или методом доступа и не должны быть разрешаемыми. Их следует назначать с помощью процедуры, обеспечивающей некоторую уверенность в том, что они останутся уникальными и будут постоянно идентифицировать один и тот же ресурс в течение длительного периода. Некоторые пространства имен в urn:схеме, например, urn:uuid:присваивают идентификаторы способом, который не требует регистрации, но для большинства из них это необходимо. Типичное пространство имен URN urn:isbnдля международных стандартных номеров книг. Эта точка зрения продолжается в RFC 8141 (2017).

Существуют и другие схемы URI, такие как tag:, info:(теперь в значительной степени устаревшим), и ni:которые похожи на urn:схеме не будучи в локаторы и не связаны с конкретными протоколами разрешения или доступа.

Синтаксис

Синтаксис urn:URI схемы представлен в расширенной форме Бэкуса – Наура как:

      namestring    = assigned-name
                      [ rq-components ]
                      [ "#" f-component ]
      assigned-name = "urn" ":" NID ":" NSS
      NID           = (alphanum) 0*30(ldh) (alphanum)
      ldh           = alphanum / "-"
      NSS           = pchar *(pchar / "/")
      rq-components = [ "?+" r-component ]
                      [ "?=" q-component ]
      r-component   = pchar *( pchar / "/" / "?" )
      q-component   = pchar *( pchar / "/" / "?" )
      f-component   = fragment

      ; general URI syntax rules (RFC3986)
      fragment      = *( pchar / "/" / "?" )
      pchar         = unreserved / pct-encoded / sub-delims / ":" / "@"
      pct-encoded   = "%" HEXDIG HEXDIG
      unreserved    = ALPHA / DIGIT / "-" / "." / "_" / "~"
      sub-delims    = "!" / "$" / "&" / "'" / "(" / ")" / "*" / "+" / "," / ";" / "="

      alphanum      = ALPHA / DIGIT  ; obsolete, usage is deprecated

или, в виде синтаксической диаграммы , как:

Схема синтаксиса URN - строка имен

  • Ведущая схема ( urn:) нечувствительна к регистру.
  • <NID>является идентификатором пространства имен и может включать буквы, цифры и -.
  • За NID следует строка <NSS>, зависящая от пространства имен, интерпретация которой зависит от указанного пространства имен. NSS может содержать буквы и цифры ASCII, а также множество знаков препинания и специальных символов. Запрещенные символы ASCII и Unicode могут быть включены, если они закодированы в процентах .

В 2017 году был обновлен синтаксис URN:

  • Символ косой черты ( /) теперь разрешен в NSS для обозначения имен, содержащих косые черты из систем идентификаторов без URN.
  • Добавлен q-компонент, позволяющий передавать параметры именованным ресурсам.
  • Добавлен r-компонент, позволяющий передавать параметры резолверам. Однако в обновленной спецификации отмечается, что ее не следует использовать до тех пор, пока ее семантика не будет определена путем дальнейшей стандартизации.

Пространства имён

Чтобы гарантировать глобальную уникальность пространств имен URN, их идентификаторы (NID) должны быть зарегистрированы в IANA . Зарегистрированные пространства имен могут быть «формальными» или «неформальными». Исключение из требования о регистрации ранее делалось для «экспериментальных пространств имен», поскольку оно было отменено RFC 8141.

Формальный

Было зарегистрировано около шестидесяти формальных идентификаторов пространства имен URN. Это пространства имен, в которых ожидается, что пользователи Интернета получат выгоду от их публикации, и на них распространяются некоторые ограничения. Они должны:

  • Не быть уже зарегистрированным NID
  • Не начинать с urn-
  • Быть длиннее двух букв
  • Не начинать с XY-, где XY - любая комбинация двух букв ASCII
  • Не начинать с x-(см. «Экспериментальные пространства имен» ниже)

Неофициальный

Неофициальные пространства имен регистрируются в IANA и им присваивается числовая последовательность (выбранная IANA в порядке очереди) в качестве идентификатора в формате

"urn-" <number>

Неформальные пространства имен являются полноценными пространствами имен URN и могут быть зарегистрированы в глобальных службах регистрации.

Экспериментальный

Исключение из требования о регистрации ранее делалось для «экспериментальных пространств имен». Однако после отказа от обозначения «X-» для новых имен идентификаторов RFC 8141 отказался от экспериментальных пространств имен URN, указав предпочтение использования urn:exampleпространства имен там, где это необходимо.

Примеры

URN соответствует
urn:isbn:0451450523 Книга 1968 года «Последний единорог» , идентифицированная по номеру книги .
urn:isan:0000-0000-2CEA-0000-1-0000-0000-Y Фильм 2002 года « Человек-паук» , идентифицированный по аудиовизуальному номеру .
urn:ISSN:0167-6423 Научный журнал Science of Computer Programming , идентифицируемый по серийному номеру .
urn:ietf:rfc:2648 IETF «s RFC 2648.
urn:mpeg:mpeg7:schema:2001 Правила пространства имен по умолчанию для метаданных видео MPEG-7 .
urn:oid:2.16.840 OID для Соединенных Штатов .
urn:uuid:6e8bc430-9c3a-11d9-9669-0800200c9a66 UUID версии 1 .
urn:nbn:de:bvb:19-146642 Национальный библиографический номер для документа, с указанием страны ( de), региональная сеть ( bvb= Bibliotheksverbund Bayern ), библиотека номер (19) и номер документа.
urn:lex:eu:council:directive:2010-03-09;2010-19-UE Директива Европейского Союза , с помощью предлагаемого Lex URN имен .
urn:lsid:zoobank.org:pub:CDC8D258-8F57-41DC-B560-247E17D3DC8C Life Science Идентификаторы , которые могут быть решены в http://zoobank.org/urn:lsid:zoobank.org:pub:CDC8D258-8F57-41DC-B560-247E17D3DC8C .
urn:epc:class:lgtin:4012345.012345.998877 Глобальный номер предмета торговли с номером партии / партии. В соответствии со стандартом данных тегов (TDS). Дополнительные примеры см. В разделе « Идентификационные ключи EPC» .
urn:epc:id:sgtin:0614141.112345.400 Глобальный номер предмета торговли с индивидуальным серийным номером
urn:epc:id:sscc:0614141.1234567890 Серийный код транспортной тары
urn:epc:id:sgln:0614141.12345.400 Глобальный номер местоположения с расширением
urn:epc:id:bic:CSQU3054383 Код интермодальных контейнеров BIC согласно ISO 6346
urn:epc:id:imovn:9176187 Судно ИМО Количество морских судов
urn:epc:id:gdti:0614141.12345.400 Глобальный идентификатор типа документа экземпляра документа
urn:mrn:iala:aton:us:1234.5 Идентификатор для морских средств навигационного оборудования
urn:mrn:iala:vts:ca:ecareg Идентификатор службы управления движением судов
urn:mrn:iala:wwy:us:atl:chba:potri Идентификатор водных путей
urn:mrn:iala:pub:g1143 Идентификатор публикаций МАМС
urn:microsoft:adfs:claimsxray Идентификатор федеративной идентичности; этот пример взят из Claims X-Ray


Смотрите также

Рекомендации

Цитаты

Источники

Внешние ссылки