Davka,
Ja, Parameterwerte können durch rund um den Wert in doppelte Anführungszeichen maskiert werden. Parameterwerte müssen entwertet werden, wenn sie eine der folgenden Zeichen enthalten:
; - semicolon
: - colon
, - comma
Es ist illegal, ein doppeltes Anführungszeichen "
Zeichen innerhalb Parameterwerte haben, so sollten sie (oder auf andere Weise aus dem Parameterwert entfernt) gelöscht werden.
also mit Ihrem obigen Beispiel die korrekte Entkommen ist dies:
ORGANIZER;CN="John Doe,Eng":mailto:[email protected]
Beachten Sie, dass, sobald das erste (nicht kotierte) Kolon :
angetroffen wird, Parsen Motoren den Rest als Eigenschaftswert behandeln. Es ist zulässig, den Doppelpunkt :
in Eigenschaftswerten zu verwenden, damit der Doppelpunkt in mailto:[email protected]
nicht maskiert werden muss.
Wir brechen die Linie in seinen Teilen:
ORGANIZER
- Eigenschaftsname
;
- Parameter Trennzeichen
CN
- Parametername
=
- Parameterwert Begrenzer
"John Doe,Eng"
- Parameterwert
:
- Eigenschaftswert Begrenzer
mailto:[email protected]
- Eigenschaftswert
Hier ist ein Zitat aus dem RFC 5545 Abschnitt 3.2, der erklärt, wenn die Parameterwerte mit doppelten Anführungszeichen umgeben sind, und sagt uns, doppelte Anführungszeichen sind illegal in Parameterwerten :
Objektparameterwerte, die Kolon SEMIKOLON oder COMMA Charakter Separatoren MÜSSEN als quoted-string Textwerte enthalten angegeben werden. Eigenschaft Parameterwerte MÜSSEN das DQUOTE-Zeichen NICHT enthalten.Das Zeichen DQUOTE wird als Trennzeichen für Parameterwerte verwendet, die eingeschränkte Zeichen oder URI-Text enthalten. Zum Beispiel:
BESCHREIBUNG; ALTREP = "cid: [email protected]": Die Fall'98 Wilde Wizards Conference - - Las Vegas \, NV \, USA
Es ist Wichtig zu beachten, dass Parameter technisch mehrere Werte enthalten können. Ein Komma wird verwendet, um diese mehrere Werte zu trennen:
(aus Abschnitt 3.2.11 von RFC 5545 :)
ATTENDEE;MEMBER="mailto:[email protected]","mailto:pr
[email protected]":mailto:[email protected]
Nicht alle iCalendar-Motoren mehrere Werte für alle Parameter akzeptieren, aber die folgenden Parameter sollten erlauben mehrere Werte (nach der RFC):
- MEMBER
- DELEGATED-FROM
- DELEGATED-TO
012.351.
Grüße,
-Doug
Dank eine große Menge für die ausführliche Antwort! – davka
Kein Problem - froh, dass ich helfen konnte :) – Doug
Ich konnte den Komma-Ansatz nicht in Outlook 2013 arbeiten lassen und habe einfach mehrere ATTENDEE-Zeilen angegeben. –