Допустимые символы для схем URI?

Я думал о регистрации приложения в протоколе URL и решил хотелось бы знать, какие символы разрешены в схеме?

Некоторые примеры:

  • h323 (has numbers)
    • h323:[<user>@]<host>[:<port>][;<parameters>]
  • z39.50r (has a . as well)
    • z39.50r://<host>[:<port>]/<database>?<docid>[;esn=<elementset>][;rs=<recordsyntax>]
  • http://derailer.org/paparazzi/faq (has a :)
    • paparazzi:http:[//<host>[:[<port>][<transport>]]/

Итак, каких персонажей я могу использовать?
Можем ли мы...

  • @:TwitterUser
  • #:HashTag
  • $:CapitalStock
  • ?:ID-10T

...и т.д., по желанию, или символы в схеме ограничены стандартом?


person Camilo Martin    schedule 04.09.2010    source источник


Ответы (3)


Согласно RFC 2396, Приложение A:

  scheme        = alpha *( alpha | digit | "+" | "-" | "." )

Имея в виду:

Схема должна начинаться с буквы (заглавной или строчной) и может содержать буквы (по-прежнему заглавные и строчные), цифры, «+», «-» и «.».


Примечание: в случае

paparazzi:http:[//<host>[:[<port>][<transport>]]/

схема - это только "папарацци" часть.

person Vivien Barousse    schedule 04.09.2010
comment
Понимаю. Но есть RFC, в которых используются числа... Почему? - person Camilo Martin; 04.09.2010
comment
Числа разрешены в схеме URI, но не в качестве первого символа. «a234» допустим, а «4bcd» — нет. - person Vivien Barousse; 04.09.2010
comment
Как вы думаете, тот факт, что он будет использоваться только в качестве протокола URL в Windows, как-то повлияет на удобство использования других символов? - person Camilo Martin; 04.09.2010
comment
+1; Что сказала Вивьен о папарацци: схема. http://... передается материалам WebKit. (NB: я автор приложения, а также сумасшедший, и у меня есть документ в стиле BNF по формату URL на сайте.) - person Wevah; 21.11.2010
comment
paparazzi сродни mailto: у него нет иерархии, следовательно, нет // - person Knu; 03.11.2018

схема согласно RFC 3986 определяется как:

scheme      = ALPHA *( ALPHA / DIGIT / "+" / "-" / "." )

Таким образом, схема должна начинаться с буквенного символа (AZ, az) и может сопровождаться любым количеством буквенно-цифровых символов, +, - или ..

person Gumbo    schedule 04.09.2010
comment
Как вы думаете, использование его в качестве протокола URL-адресов только для Windows как-либо влияет на используемые символы? Если это что-то изменит, я бы провел несколько тестов... - person Camilo Martin; 04.09.2010

Цитата из RFC 2396:

Имена схем состоят из последовательности символов, начинающейся со строчной буквы, за которой следует любая комбинация строчных букв, цифр, плюс ("+"), точка (".") или дефис ("-").

person BoltClock    schedule 04.09.2010