Davka,
Да, значения параметров можно экранировать, заключив их в двойные кавычки.Значения параметров должны быть экранированы, если они содержат любой из следующих символов:
; - 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, который объясняет, когда значения параметров заключены в двойные кавычки, и говорит нам, что двойные кавычки недопустимы в значениях параметров:
Значения параметров свойств, которые содержат символьные разделители COLON, SEMICOLON или COMMA, ДОЛЖНЫ бытьуказано как текстовые значения в кавычках.Значения параметров свойства НЕ ДОЛЖНЫ содержать символ DQUOTE.Символ DQUOTE используется в качестве разделителя для значений параметров, которые содержат запрещенные символы или текст URI.Например:
ОПИСАНИЕ; ALTREP = "cid: part1.0001@example.org": Конференция Wild Wizards осени'98 - - Лас-Вегас \, Невада \, США
Важно отметить, что параметры технически могут содержать несколько значений.Запятая используется для разделения этих нескольких значений:
(из Раздела 3.2.11 RFC 5545:)
ATTENDEE;MEMBER="mailto:projectA@example.com","mailto:pr
ojectB@example.com":mailto:janedoe@example.com
Не все механизмы iCalendar будут принимать несколько значений для всех параметров, ноСледующие параметры ДОЛЖНЫ разрешать множественные значения (в соответствии с RFC):
- MEMBER
- DELEGATED-FROM
- DELEGATED-TO
С уважением,
-Doug