Вопрос

В частности, параметр CN (Общее имя), например

Организатор; CN = John Doe, Eng: Mailto: jd@some.com

RFC расплывчан на этом, ИМХО. Очень ясно о Значения свойств из тип Текст, но для этого параметра это только говорит "Значение параметра это текст«. В любом случае, убежище, указанные для типа текста, не кажется полным для значений параметров (например,«: »не сбежете).

большое спасибо!

Это было полезно?

Решение

Давка,

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

; - semicolon
: - colon
, - comma

Незаконно иметь двойную цитату " символ внутри значений параметров, поэтому они должны быть удалены (или иным образом удалены из значения параметра).

Итак, с вашим приведенным выше примером правильный сбежав это:

ORGANIZER;CN="John Doe,Eng":mailto:jd@some.com

Обратите внимание, что однажды первая (необоснованная) толстая кишка : встречаются, разборные двигатели обрабатывают остальные как стоимость имущества. Отказ Юридически использовать толстую кишку : символ внутри значений свойств, так что толстая кишка в mailto:jd@some.com не нужно сбежать.

Мы можем сломать линию в его части:

  • ORGANIZER - Имя свойства
  • ; - Разделитель параметра
  • CN - Название параметра
  • = - Разделитель значения параметров
  • "John Doe,Eng" - значение параметра
  • : - разделитель значения свойства
  • mailto:jd@some.com - стоимость имущества

Вот цитата из раздела RFC 5545 3.2, которая объясняет, когда значения параметров окружены двойными кавычками, и сообщает двойные кавычки незаконно в значениях параметра:

Значения параметров свойств, которые содержат точечные сепараторы COMON, SEMICOLON, или COMMA, должны быть указаны в качестве цитируемых текстовых значений. Значения параметра свойств не должны содержать символ dquote. Характер DQuote используется в качестве разделителя для значений параметров, которые содержат ограниченный символ или текст URI. Например:

Описание; ALTREP = "CID: part1.0001@example.org": Конференция Wild Wizards Fall'98 - - Лас-Вегас , NV , США

Важно отметить, что параметры могут технически содержать несколько значений. Запятая используется для разделения этих нескольких значений:

(Из раздела 3.2.11 РФК 5545 :)

ATTENDEE;MEMBER="mailto:projectA@example.com","mailto:pr
 ojectB@example.com":mailto:janedoe@example.com

Не все iCalendar Engines примут несколько значений по всем параметрам, но следующие параметры должны разрешать несколько значений (в соответствии с RFC):

  • ЧЛЕН
  • Делегированный - от
  • Делегированный к

С уважением,

-Дуг

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top