Jump to content

Ссылка на числовые символы

Числовая ссылка на символ ( NCR ) — это распространенная конструкция разметки, используемая в SGML и языках разметки, производных от SGML, таких как HTML и XML . Он состоит из короткой последовательности символов , которая, в свою очередь, представляет один символ. Начиная с WebSgml , XML и HTML 4 кодовые точки универсального набора символов (UCS) Unicode , используются . NCR обычно используются для представления символов, которые не могут быть закодированы напрямую в конкретном документе (например, потому что они являются международными символами, которые не вписываются в 8-битный набор символов используемый , или потому, что они имеют особое синтаксическое значение в язык). Когда документ интерпретируется программой чтения, поддерживающей разметку, каждый NCR обрабатывается так, как если бы он был символом, который он представляет.

Примеры [ править ]

В SGML, HTML и XML следующие числовые ссылки являются допустимыми ссылками на греческую заглавную букву сигма.

Цифровая ссылка на символ U+03A3 Σ ГРЕЧЕСКАЯ ЗАГЛАВНАЯ БУКВА СИГМА
(Обратите внимание, что 3A3 16 = 931 10 )
Символ Юникода Числовая база Числовая ссылка в разметке Эффект
U + 03A3 Десятичный Σ С
U + 03A3 Десятичный Σ С
U + 03A3 Шестнадцатеричный Σ С
U + 03A3 Шестнадцатеричный Σ С
U + 03A3 Шестнадцатеричный Σ С

В SGML, HTML и XML следующие числовые ссылки являются допустимыми ссылками на латинскую заглавную букву AE.

Цифровая ссылка на символ U+00C6 Æ ЛАТИНСКАЯ ЗАГЛАВНАЯ БУКВА AE
Символ Юникода Числовая база Числовая ссылка в разметке Эффект
U + 00C6 Десятичный Æ Ой
U + 00C6 Шестнадцатеричный Æ Ой

В SGML, HTML и XML следующие числовые ссылки являются допустимыми ссылками на латинские строчные буквы Sharp s ß.

Цифровая ссылка на символ U+00DF ß ЛАТИНСКАЯ СТРОЧНАЯ БУКВА SHARP S
Символ Юникода Числовая база Числовая ссылка в разметке Эффект
U + 00DF Десятичный ß SS
U + 00DF Шестнадцатеричный ß SS

Список ссылок на числовые символы для печатаемых символов ASCII :

Символ Юникода Характер
Ссылка
(десятичный)
Характер
Ссылка
(шестнадцатеричный)
Эффект
U + 0020     (космос)
U + 0021 ! ! !
U + 0022 " " "
U + 0023 # # #
U + 0024 $ $ $
U + 0025 % % %
U + 0026 & & &
U + 0027 ' ' '
U + 0028 ( ( (
U + 0029 ) ) )
U + 002A * * *
U + 002B + + +
U + 002C , , ,
U + 002D - - -
U + 002E . . .
U + 002F / / /
U + 0030 0 0 0
U + 0031 1 1 1
U + 0032 2 2 2
U + 0033 3 3 3
U + 0034 4 4 4
U + 0035 5 5 5
U + 0036 6 6 6
U + 0037 7 7 7
U + 0038 8 8 8
U + 0039 9 9 9
U + 003A : : :
U + 003B &#59; &#x3B; ;
U + 003C &#60; &#x3C; <
U + 003D &#61; &#x3D; =
U + 003E &#62; &#x3E; >
U + 003F &#63; &#x3F; ?
U + 0040 &#64; &#x40; @
U + 0041 &#65; &#x41; А
U + 0042 &#66; &#x42; Б
U + 0043 &#67; &#x43; С
U + 0044 &#68; &#x44; Д
U + 0045 &#69; &#x45; И
U + 0046 &#70; &#x46; Ф
U + 0047 &#71; &#x47; Г
U + 0048 &#72; &#x48; ЧАС
U + 0049 &#73; &#x49; я
U + 004A &#74; &#x4A; Дж
U + 004B &#75; &#x4B; К
U + 004C &#76; &#x4C; л
U + 004D &#77; &#x4D; М
U + 004E &#78; &#x4E; Н
U + 004F &#79; &#x4F; ТО
U + 0050 &#80; &#x50; П
U + 0051 &#81; &#x51; вопрос
U + 0052 &#82; &#x52; Р
U + 0053 &#83; &#x53; С
U + 0054 &#84; &#x54; Т
U + 0055 &#85; &#x55; В
U + 0056 &#86; &#x56; V
U + 0057 &#87; &#x57; В
U + 0058 &#88; &#x58; Х
U + 0059 &#89; &#x59; И
U + 005A &#90; &#x5A; С
U + 005B &#91; &#x5B; [
U + 005C &#92; &#x5C; \
U + 005D &#93; &#x5D; ]
U + 005E &#94; &#x5E; ^
U + 005F &#95; &#x5F; _
U + 0060 &#96; &#x60; '
U + 0061 &#97; &#x61; а
U + 0062 &#98; &#x62; б
U + 0063 &#99; &#x63; с
U + 0064 &#100; &#x64; д
U + 0065 &#101; &#x65; и
U + 0066 &#102; &#x66; ж
U + 0067 &#103; &#x67; г
U + 0068 &#104; &#x68; час
U + 0069 &#105; &#x69; я
U + 006A &#106; &#x6A; дж
U + 006B &#107; &#x6B; к
U + 006C &#108; &#x6C; л
U + 006D &#109; &#x6D; м
U + 006E &#110; &#x6E; н
U + 006F &#111; &#x6F; тот
U + 0070 &#112; &#x70; п
U + 0071 &#113; &#x71; д
U + 0072 &#114; &#x72; р
U + 0073 &#115; &#x73; с
U + 0074 &#116; &#x74; т
U + 0075 &#117; &#x75; в
U + 0076 &#118; &#x76; v
U + 0077 &#119; &#x77; В
U + 0078 &#120; &#x78; х
U + 0079 &#121; &#x79; и
U + 007A &#122; &#x7A; С
U + 007B &#123; &#x7B; {
U + 007C &#124; &#x7C; |
U + 007D &#125; &#x7D; }
U + 007E &#126; &#x7E; ~

Обсуждение [ править ]

Языки разметки обычно определяются с помощью символов UCS или Unicode. То есть документ на самом фундаментальном уровне абстракции состоит из последовательности символов, которые представляют собой абстрактные единицы, существующие независимо от какой-либо кодировки .

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

Однако иногда из соображений удобства или из-за технических ограничений документы кодируются с помощью кодировки, которая не может напрямую представлять некоторые символы. Например, широко используемые кодировки на основе ISO 8859 могут представлять не более 256 уникальных символов в виде одного 8-битного байта каждый.

На практике документам редко разрешается использовать внутри себя более одной кодировки, поэтому ответственность обычно лежит на языке разметки, который должен предоставить авторам документов средства для выражения некодируемых символов через кодируемые. Обычно это делается с помощью какого-то механизма «экранирования» .

Языки разметки на основе SGML позволяют авторам документов использовать специальные последовательности символов из диапазона ASCII (первые 128 кодовых точек Юникода) для представления или ссылки на любой символ Юникода, независимо от того, доступен ли представляемый символ непосредственно в кодировка документа. Эти специальные последовательности являются ссылками на символы .

Ссылки на символы, основанные на кодовой точке UCS или Unicode символа, на который ссылаются , называются ссылками на числовые символы. В HTML 4 и во всех версиях XHTML и XML кодовая точка может быть выражена либо в виде десятичного числа (по основанию 10), либо в виде шестнадцатеричного числа (по основанию 16). Синтаксис следующий:

Символ U+0026 ( амперсанд ), за которым следует символ U+0023 ( знак номера ), а затем один из следующих вариантов:

  • одна или несколько десятичных цифр от нуля (U+0030) до девяти (U+0039); или
  • символ U+0078 («x»), за которым следуют одна или несколько шестнадцатеричных цифр от нуля (U+0030) до девяти (U+0039), латинская заглавная буква от A (U+0041) до F (U+0046), и строчная латинская буква от a (U+0061) до f (U+0066);

за всеми следует символ U+003B ( точка с запятой ). Более старые версии HTML не допускали шестнадцатеричный синтаксис.

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

Существует еще один вид ссылки на символ, называемый ссылкой на символьную сущность , который позволяет ссылаться на символ по имени, а не по номеру. (Именование символа создает символьный объект .) HTML определяет некоторые символьные объекты, но не многие; все остальные символы могут быть включены только путем прямого кодирования или с использованием NCR.

Ограничения [ править ]

Универсальный набор символов, определенный в стандарте ISO 10646, представляет собой «набор символов документа» SGML, HTML 4, поэтому по умолчанию любой символ в таком документе и любой символ, на который ссылаются в таком документе, должен находиться в UCS.

Хотя синтаксис SGML не запрещает ссылки на недопустимые или неназначенные кодовые точки, такие как &#xFFFF;Языки разметки, производные от SGML, такие как HTML и XML, могут (и часто так и делают) ограничивать ссылки на числовые символы только теми кодовыми точками, которые присвоены символам.

Ограничения могут применяться и по другим причинам. Например, в HTML 4, &#12;, который является ссылкой на непечатаемый управляющий символ «перевод страницы», разрешен, поскольку разрешен символ перевода страницы. Но в XML символ перевода формы нельзя использовать даже по ссылке. [1] [ нужна ссылка ] В качестве другого примера: &#128;, который является ссылкой на другой управляющий символ, не разрешается использовать или ссылаться на него ни в HTML, ни в XML, но при использовании в HTML веб-браузеры обычно не помечают его как ошибку, некоторые из которых интерпретируют его как ссылку. к символу, представленному кодовым значением 128 в кодировке Windows-1252, по соображениям совместимости. Этот символ «€» должен быть представлен как &#8364; в стандартном HTML-коде. В качестве еще одного примера: до публикации второго издания XML 1.0 6 октября 2000 г. XML 1.0 был основан на более старой версии ISO 10646 и запрещал использование символов выше U+FFFD, за исключением символьных данных, таким образом создавая ссылку типа &#65536; (U+10000) незаконно. В XML 1.1 и более поздних версиях XML 1.0 такая ссылка разрешена, поскольку доступный набор символов был явно расширен.

Языки разметки также накладывают ограничения на то, где могут встречаться ссылки на символы.

Проблемы совместимости [ править ]

В первоначальных версиях SGML и HTML ссылки на числовые символы интерпретировались в зависимости от кодировки символов документа, а не Unicode . В документах с латинским алфавитом числовые ссылки на символы от x80 до x9F в этих документах не будут корректными в отношении Unicode и должны быть перекодированы. Стандарты HTML до HTML 4 поддерживали только документы западной латиницы: обработка ссылок на символы выше #7F может различаться в зависимости от приложения и национальных соглашений.

Например, как упоминалось выше, правильная цифровая ссылка на знак евро «€» U+20AC при использовании Юникода десятичный &#8364; и шестнадцатеричный &#x20AC;. Однако при использовании инструментов, поддерживающих устаревшие реализации HTML, ссылка &#128; (Знак евро в кодовой странице CP-1252 ) или &#164; (Знак евро в ISO/IEC 8859-15 ) может работать.

Другой пример: если некоторый текст изначально был создан с использованием набора символов MacRoman , левая двойная кавычка « будет представлена ​​кодовой точкой xD2. Это не будет отображаться должным образом в системе, ожидающей документ в кодировке UTF-8, ISO 8859-1 или CP-1252, где этот код занят буквой Ò . Правильная ссылка на числовой символ для « в HTML 4 и более поздних версиях: &#x201C;, потому что U+ 201C — это его код UCS. В некоторых системах ссылка на именованный символ &ldquo; также может быть доступен.

См. также [ править ]

Ссылки [ править ]

  1. ^ «HTML 5.2:8. Синтаксис HTML» . www.w3.org .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 0911a13f855294d4906b7864fbfa88ce__1701955620
URL1:https://arc.ask3.ru/arc/aa/09/ce/0911a13f855294d4906b7864fbfa88ce.html
Заголовок, (Title) документа по адресу, URL1:
Numeric character reference - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)