سؤال

على وجه التحديد ، المعلمة CN (الاسم المشترك) ، على سبيل المثال

منظم ؛ CN = John Doe ، Eng: Mailto: jd@some.com

RFC غامضة على هذا ، IMHO. من الواضح جدا قيم الممتلكات من يكتب نص ، ولكن بالنسبة لهذه المعلمة يقول فقط "قيمة المعلمة هي النص". على أي حال ، لا يبدو الهروب المحدد لنوع النص كاملًا لقيم المعلمات (على سبيل المثال:" لم يفلت).

شكر كثيرا!

هل كانت مفيدة؟

المحلول

دافكا ،

نعم ، يمكن الهروب من قيم المعلمات عن طريق المحيط بالقيمة في الربعات المزدوجة. يجب الهروب من قيم المعلمات إذا كانت تحتوي على أي من الأحرف التالية:

; - 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 يشرح عندما تكون قيم المعلمة محاطة بقطاعات مزدوجة ، ويخبرنا بأنها غير قانونية غير قانونية في قيم المعلمات:

يجب تحديد قيم معلمة الخصائص التي تحتوي على فواصل أحرف القولون أو الفاصلة الفاصلة أو الفاصلة كقيم نصية مقتبسة. يجب ألا تحتوي قيم معلمة الخاصية على حرف Dquote. يتم استخدام حرف DQUOTE كحدد لقيم المعلمة التي تحتوي على أحرف مقيدة أو نص URI. علي سبيل المثال:

الوصف ؛ altrep = "CID: part1.0001@example.org": The Fall'98 Wild Wizards Conference - - Las Vegas ، NV ، USA

من المهم أن نلاحظ أن المعلمات يمكن أن تحتوي من الناحية الفنية على قيم متعددة. يتم استخدام فاصلة لفصل هذه القيم المتعددة:

(من القسم 3.2.11 من RFC 5545 :)

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

لن تقبل جميع محركات icalendar قيمًا متعددة على جميع المعلمات ، ولكن يجب أن تسمح المعلمات التالية بقيم متعددة (وفقًا لـ RFC):

  • عضو
  • مفوضة من
  • المفوضة لل

يعتبر،

-دوغ

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top