جزء الرابط بعد علامة # يسمى fragment، وقد يحدد موضعا داخل مورد. إذا أعطى المراجع المساعد رابطين لفقرتين من الصفحة نفسها، لا ينبغي أن يحولهما إلى مصدرين مستقلين لمجرد اختلاف هذا الجزء. نقرأ تفسير MDN، ثم نؤلف صفحة ذات قسمين دون إنشاء موقع أو اختبار متصفح.
الخلاصة السريعة
ليس بالضرورة؛ fragment يحدد جزءا من المورد، ولا يرسل إلى الخادم في طلب URI، بل يعالجه العميل بعد جلب المورد. [1] احفظ المورد والموضع معا.
- يشرح MDN أن fragment يبدأ بـ# ويحدد جزءا من المورد، ويعالجه العميل بعد جلبه دون إرساله في الطلب إلى الخادم. [1]
- في صفحة ورقتنا ذات القسمين terms وhours، رابطا #terms و#hours يختاران موضعين في المورد المعلن نفسه؛ لا يصنعان تأييدا من ناشرين مختلفين.
- في HTML يمكن أن يقود الجزء إلى عنصر ذي id. [1] إذا غاب الموضع المسمى في نسخة الورقة، لا يثبت اسمه وجود القسم أو وصول القارئ إليه.
- لا تخلط تغيير fragment بتغيير المسار، ولا تجعل الرابط دليلا على صحة الادعاء أو استقلال المصدر؛ لم نجلب صفحة المثال أو نجرب دعم متصفح.
أي جزء من العنوان يحدد الموضع؟
يسمي MDN آخر جزء يبدأ بـ# بالـfragment؛ لا يرسل في طلب المورد إلى الخادم، ويعالجه العميل بعد جلبه. [1]
نستعمل «موضع داخل المورد» لشرحه، مع إبقاء الرمز عند قراءة عنوان. ليست كل سلسلة نصية بعده اسم ملف جديد، ولا تشبه في دورها إضافة صفحة أخرى إلى مسار الموقع.
هذا وصف للعقد المرجعي، لا إثبات بأن عنوانا بعينه فتح أو أن خادما تلقى طلبا. لا نحول الفصل بين الأجزاء إلى قاعدة عن خصوصية كل بيانات التطبيق أو طريقة برمجته.
هل قسمان يساويان مصدرين مستقلين؟
نؤلف موردا عنوانه https://example.invalid/guide وله قسمان معلنان: terms للشروط وhours للمواعيد. نختار .invalid كي تبقى الورقة مثالا رمزيا، ولا نقدم رابطا حيا للقراءة.
عنوان ينتهي بـ#terms وآخر بـ#hours يختلفان في الموضع المختار، مع بقاء المورد المعلن guide واحدا. إذا كرر القسمان عبارة مؤلفة، لا نعدها شهادتين من ناشرين مستقلين في هذا المثال.
| عنوان رمزي مختصر | المورد في الورقة | الموضع المقصود |
|---|---|---|
| guide#terms | guide | الشروط |
| guide#hours | guide | المواعيد |
| other#hours | other | موضع في مورد آخر |
ماذا لو بقي الاسم وتغيرت الصفحة؟
يشرح MDN أن مرساة في HTML يمكن أن تشير إلى عنصر يحمل id، فيتنقل المتصفح إلى العنصر. [1]
نعلن نسخة ثانية من guide حذف منها عنصر hours، دون تغيير نص الرابط المكتوب في بطاقة قديمة. بقاء البطاقة لا يعيد إنشاء العنصر. إذا لم نفحص النسخة، لا نقول إن المتصفح وصل إلى قسمها أو إن المواعيد موجودة هناك.
ولا نخترع سلوك الرجوع عند غياب المرساة في متصفح معين. لم نجر تنقلا أو نقارن دعما. ما نستنتجه من ورقتنا أن الوصف القديم للموضع لا يثبت وجوده في مادة جديدة.
كيف يسجل المساعد المرجع بدقة؟
نقترح حفظ عنوان المورد وموضع الاستشهاد والنسخة التي قرئت، مع فصل رابط يحاول الوصول من مادة راجعها الكاتب. يتيح هذا للمراجع أن يعرف هل تغير المسار أم تغير الموضع داخل الصفحة المعلنة.
قد يشير fragment في موارد أخرى إلى وقت أو نص؛ لا نفرض أن كل جزء هو عنوان قسم HTML. يبقى تفسيره مرتبطا بنوع المورد والمرجع الذي يصفه.
لم نثبت صحة ناشر أو استقلال خبر أو استمرار رابط. المقال يشرح وظيفة جزء عنوان، ويمنع عد اختلاف المواضع وحده تعددا في مصادر الاستدلال، دون إجراء شبكة أو فحص موقع المثال.
المصادر ومتابعة القراءة
- MDN: URI fragment (يفتح في نافذة جديدة)developer.mozilla.org
أُعدّ هذا المقال بصياغة عربية أصلية بالاستناد إلى المصادر أعلاه، وهو مدخل تمهيدي إلى الموضوع. اقرأ منهجية المحتوى وحدوده.
