Internationalized Resource Identifier: различия между версиями

[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
викификация, дополнение, стилевые правки
Строка 1:
'''IRI''' ({{lang-en|'''Internationalized Resource Identifier'''}}) — интернационализированный идентификатор ресурса. НаПо‐английски английский манер«IRI» произносится [''айэра́й'']{{IPA|/aɪɑraɪ/}}, по-русскипо‐русски чащеиногда произносят [''и́ри'']. IRI — это короткая последовательность символов, идентифицирующая абстрактный или физический ресурс на любом языке мира. Идентификаторы IRI призваны в будущем заменить [[URI]].
 
== Основы ==
IRI — это короткая [[Строка (тип данных)|строка]], позволяющая идентифицировать какой-либокакой‐либо ресурс: [[документ]], изображение, [[файл]], службу, ящик [[электронная почта|электронной почты]] {{nobr|и т. д.}} Прежде всего, речь идёт, конечно, о ресурсах сети [[Интернет]] и [[Всемирная паутина|Всемирной паутины]]. Идентификаторы IRI создавались как замена единообразным идентификаторам '''URI''' ({{lang-en|'''Uniform Resource Identifier'''}}). Делос вцелью том,избежать чтоих идентификаторыограничения [[URI]]на имеютсимволы: серьёзный недостаток — ониURI могут содержать только латинские символы и знаки препинания из набора символов US-[[ASCII]] (в общей сложности около 60 символов). В результате, если мы захотим использовать в URI символы [[кириллица|кириллицы]], [[иероглиф]]ы или, скажем, специфические символы [[Французский язык|франузcкого языка]] и [[эсперанто]], то нам придётся кодировать [[URI]] так, как в [[Википедия|Википедии]] кодируются URL с симолами [[Юникод]]а. Например, строка вида:
<nowiki>http://ru.wikipedia.org/wiki/Микрокредит</nowiki>
кодируется в URL как:
<nowiki>http://ru.wikipedia.org/wiki/%D0%9C%D0%B8%D0%BA%D1%80%D0%BE%D0%BA%D1%80%D0%B5%D0%B4%D0%B8%D1%82</nowiki>
''Подробнее о кодировании см. [[URL]].''<br />
В итоге URI во всех языках, кроме кроме основанных на базовой [[латиница|латинице]], теряют свою [[читабельность]] для человека. И этоЭто входит в грубое противоречие с принципом [[интернационализм]]а, провозглашаемого всеми ведущими организациями Интернета, включая [[W3C]] и [[ISOC]].
Идентификаторы IRI созданы специально для решения этой проблемы. IRI могут содержать любые символы Юникода (Unicode/[[ISO]] 10646) в чистом виде, без всякого кодирования. IRI не ущемляют права других [[Язык (система знаков)|языков]] и ведут к более высокой степени равноправия пользователей Интернета.
 
Строка 13:
 
== История ==
Разработка IRI началась примерно в ноябре [[2001]] года в [[W3C|Консорциуме Всемирной паутины]]. Первый вариант спецификации появился в апреле [[2002]] года. Стандарт был закреплён в [[RFC|запросе комментариев]] ({{lang-en|Request for Comments, RFC}}) 3987 в январе [[2005]] года. Работы по спецификации IRI продолжаются в Рабочей группе интернационализации ({{lang-en|Internationalization Working Group}}) Консорциума Всемирной паутины. Скоро Консорциум, возможно, примет IRI как основу для всех своих стандартов.
 
== Применение ==
В настоящее время IRI уже применяются в следующих технологиях:
* [[XML]] 1.0 (системные идентификаторы там — это IRI)
* [[XLink]] (атрибут <code>href</code> — это IRI)
* [[XML Schema]] (тип данных <code>anyURI</code> — это IRI)
* [[HTML 4.0]] (согласно ''Приложению B.2.1'' разрешено применение не-не‐[[ASCII]] символов в значениях (но не именах) атрибутов)
 
Существует также предложение об использовании Юникода (в формате [[UTF-8]]) в системе доменных имён [[DNS]] — система {{не переведено
Очевидно, что IRI пока внедрены совершенно недостаточно, и работа по их популяризации только начинается. Но сама идея IRI очень благородна, а применение таких идентификаторов удобно. Пока трудно сказать, смогут ли IRI быстро получить такое же распространение, как URI. Но, возможно, через некоторое время, даже [[тэг]]и XML можно будет писать на [[Русский язык|русском языке]].
|есть=:en:Internationalized domain name
 
|надо=IDNA
Существовало также предложение об использовании Юникода (в формате [[UTF-8]]) в системе доменных имён [[DNS]] ({{lang-en|Domain Name System}}). Тогда бы стали возможны даже адреса вида <code><nowiki>http://русская.википедия.орг</nowiki></code>. Пока перспективы этой инициативы не ясны.
}}, основанная на {{не переведено |есть=:en:Punycode |надо=Punycode}}.
 
== Проблемы ==
 
Для однозначной идентификации адреса, например в ссылке, придется применять особые методы — например, дополнительное оформление для разных символов с одинаковым начертанием (например, символы А, В, Е, К, М, Н, О, Р, С, Т, Х в [[кириллица|кириллице]] и [[латиница|латинице]]) — отличающиеся шрифты, цвета и т.&nbsp;п., либо владелец, скажем, домена «Microsoftexample.com» будет вынужден приобретать все домены, в которых содержатся такие символы в любой комбинации, которых в данном случае несколько: два «Мe», «сx», и«а» дваи «оp», во избежание действий злоумышленников, которые могут выдать такой «смешанный» домен за официальный сайт корпорациивладельца домена «example.com», и получить конфиденциальную информацию от посетителей через формы.
 
Также необходимо будет регистрировать желаемые домены на всех языках мира, частично, по тем же причинам. В случае торговых марок проблему можно будет решить правовыми методами, а вот с такими сайтами как «а.ком» и «a.com» дело обстоит иначе. Самому посетителю будет сложно разобраться с такими адресами, если это, например, чьи-точьи‑то домашние страницы. Это касается и таких адресов как «dom.ru» и «дом.ру».
 
Некоторые считают, что ограничение [[Доменное имя|доменнного имени]] латинскими символами так же естественно, как для операторов в языках программирования. Проблема же названий [[файл]]ов и разделов может успешно решаться браузерами: например, [[Opera]] 8.5 и [[Internetбудущий Explorer]]Firefox 3.0 отображают адрес «<code><nowiki>http://ru.wikipedia.org/wiki/Микрокредит</nowiki></code>» именно так, кодируя его лишь для передачи запроса [[сервер]]у.
 
== См. также ==