الخلاصة

  • صُمم text/enriched في RFC 1523 بقدرات محدودة عمداً، بحيث تبقى بيانات ASCII أو ما يوافقها محتملة القراءة الخام، ويستطيع قارئ MIME أدنى حذف أوامر العرض والإبقاء على نثر مقروء.
  • كان ذلك إسقاطاً مضبوطاً لا نسخة مساوية؛ فقد تختفي آثار الأوامر المجهولة، والمعلمات غير المعروضة، وخيارات التنضيد المحلية، وتمثيل أغنى داخل multipart/alternative مع بقاء الكلمات.

معلومة موجودة في الرسالة لا تظهر على الشاشة

نُشر RFC 1523 في سبتمبر 1993 بوصفه وثيقة Informational، وعرّف text/enriched تطويراً لـ text/richtext الوارد في RFC 1341. لم يحاول نقل كل قدرات معالج النصوص إلى البريد. بل حصر اللغة فيما يُرجح أن تعرضه أداة المستخدم الرئيسية عرضاً صحيحاً.

كان <param> مثالاً دقيقاً على طبيعة هذا الاتفاق. يضع محتوىً تحتاجه إحدى أوامر التنسيق. يستطيع المفسر فهمه أو تجاهله، لكن لا يجوز له عرضه للقارئ. ولذلك كان التنفيذ الأدنى يحذف الأوامر ومحتوى المعلمة معاً. قد يبقى نص عام سليم، بينما تزول القيمة التي منحت امتداداً خاصاً معناه.

لم يكن هذا خطأ في التراجع. كان جزءاً محدداً منه. غير أن وصف الناتج بأنه «الرسالة نفسها» يمحو الفرق بين ما حملته البايتات وما أتاحته الشاشة للإنسان.

بنية صغيرة كي يستطيع الطرف الأضعف القراءة

اشترطت الوثيقة أن يتمكن نظام موجه إلى الطباعة الطرفية من نزع التنسيق وترك نص مفهوم. وإذا كان طقم المحارف ASCII أو امتداداً ذا ثمانية بتات، ينبغي أن تكون البيانات الخام مقبولة عند عرضها بقارئ لا يفهم MIME.

أسماء الأوامر كانت ASCII لا تتأثر بحالة الحروف، وتكتب بين قوسين زاويين، ولا تتجاوز 60 محرفاً. لكتابة < حرفياً استُخدم <<. وكان على البيئات أن تكون متوازنة ومتداخلة تداخلاً صحيحاً.

نقلت الصرامة عبئاً إلى برنامج التأليف، لكنها سمحت لقارئ بسيط باستعمال مكدس: يضيف حالة عند الفتح ويستعيد السابقة عند الإغلاق. أوصت الوثيقة بالتعامل المعقول مع البنية التالفة، من دون منح التداخل الخاطئ معنى معيارياً.

حتى نهايات السطر حُدد لها سلوك تراجعي. يتحول CRLF واحد إلى مسافة، وتتحول سلسلة من N إلى N−1 فواصل ظاهرة. بذلك لا يصبح الطي الذي أدخله النقل فقرة جديدة تلقائياً. والبايتات الأصلية، والأسطر المادية، والنص المعاد بناؤه، والصفحة المرئية تبقى سجلات منفصلة.

الأمر المجهول يفقد أثره لا عبارته

الأمر الذي لا يعرفه القارئ يعامل كعملية بلا أثر. تمر الكلمات الواقعة داخله، ويضيع التنسيق المقصود. خُصصت الأسماء البادئة بـ X- للامتدادات الخاصة، أما الإضافة الرسمية فتحتاج وثيقة إنترنت جديدة.

أتاح ذلك لقارئ قديم استقبال لغة أحدث. لكنه قد يحول تحذيراً مرئياً أو تمييزاً دلالياً إلى عبارة عادية. نجاح التحليل هنا دليل على الاستمرار، لا على اكتمال المعنى.

وأثبتت بيئتا nofill وverbatim أن حتى النازع البسيط يحتاج حالة. توقف الأولى ملء الأسطر ومعالجة CRLF المعتادة مع إبقاء ميزات أخرى، وتوقف الثانية أيضاً المحاذاة وتفسير الأوامر الداخلية إلى أن تبلغ وسم النهاية الخاص بها.

كان الحد الأدنى للمطابقة هو التعرف على المحدد الحرفي والبيئات اللازمة، وحذف العلامات والمعلمات، وتطبيق قواعد الأسطر. الناتج نص قابل للقراءة؛ ليس نسخة بصرية، ولا إثباتاً بأن التشديد أو الإزاحة أو المقصد بقي كما هو.

لم تملك الرسالة صفحة واحدة إلزامية

اختار المستقبل الخطوط وعرض السطر ومقدار الإزاحة والمحاذاة وما يستطيع جمعه من مؤثرات. إذا تعذر جمع أمرين جاز تفضيل الأمر المعروف الأعمق. وهكذا قد ينتج قارئان ملتزمان صفحتين مختلفتين.

للمحتوى الأغنى اقترح RFC 1523 وضع text/enriched واسع الوصول بجانب تمثيل مثل ODA داخل multipart/alternative. يختار قارئ الفرع الأغنى، ويختار آخر الفرع الأوسع دعماً. نجاح الاستلام في الجانبين لا يعني أن الشخصين قرآ التمثيل ذاته.

قالت الوثيقة إن الآلية لا تثير مسائل أمنية. نسجل ذلك كتقييم تاريخي للوثيقة، لا كضمان لكل امتداد أو محلل أو معالج MIME لاحق. أبطل RFC 1563 RFC 1523، ثم أبطل RFC 1896 RFC 1563؛ تعاقب النصوص لا يثبت اختفاء التطبيقات القديمة فوراً.

لا تسمي حزمة المصادر قارئاً أو نشراً عملياً أو رسالة بعينها، ولا تقيس التبني أو استجابة المستخدمين أو نتيجة مرصودة لمدخل تالف. وهي تثبت قواعد الصيغة وتعاقب الوثائق، لا سلوك تثبيت محدد.

السجل القابل للتحقق يفصل البايتات وطقم المحارف، وCRLF المادي، ومكدس التحليل، وقرارات الأوامر المعروفة والمجهولة، والمعلمات المخفية، والبديل المختار، والعرض المحلي، وفهم الإنسان. قيمة التراجع المقروء أنه جعل بعض الخسارة قابلة للتحمل، لا أنه منع الخسارة كلها.

المصادر