الخلاصة
- تنقل المسودة
draft-ietf-netmod-yang-xml-00قواعد ترميز XML لبيانات YANG إلى وثيقة مستقلة، بما يشمل الأسماء وnamespaces وترتيب القوائم والقيم والمراجع. - سلامة XML أو نجاح validation أو تساوي canonical bytes لا يثبت شجرة YANG الفعلية ولا طريقة defaults ولا قبول العملية ولا تغير datastore ولا النتيجة الخارجية.
يعرض نظام المراجعة ملفين على أنهما متساويان. يستخدم الأول default namespace، ويستخدم الثاني prefix محلياً؛ أزال canonicalizer اختلاف ترتيب السمات والمسافات. لكن أحد الخادمين حذف default nodes من الرد وفق وضع trim، بينما كتب العميل القيم نفسها صراحة في الآخر. الشاشة واحدة، إلا أن سجل القرار مختلف، وقد يتباعد السلوك حين يتغير default في إصدار لاحق.
نُشرت النسخة 00 من XML Encoding of Data Modeled with YANG في 8 يونيو 2026. هدفها نقل التعريف المعياري للترميز من RFC 7950، وهي تشمل configuration وstate ومعاملات RPC/action وnotifications. لكنها Internet-Draft تنتهي في 10 ديسمبر 2026، وما زالت أقسام IANA وSecurity Considerations تحمل FIXME. لا ينبغي تقديمها على أنها RFC مكتملة أو دليل امتثال منتج.
الهوية في namespace لا في شكل prefix
تُمثَّل عقدة YANG بعنصر XML: الاسم المحلي هو معرّف العقدة، وnamespace يأتي من module الذي عرّفها. يجب تحديد namespace للعناصر العليا، وتغييره عندما تكون العقدة الابنة من module آخر.
يمكن لبادئتين مختلفتين أن ترتبطا بالـURI نفسه. لذلك تفشل المقارنة النصية في التعرف على التكافؤ. وفي المقابل، فإن توحيد prefixes مع إهمال bindings قد يدمج اسمين مختلفين.
تحمل قيمة identityref اسماً مؤهلاً بالـnamespace، ويمكن كتابة الهوية نفسها ببادئات محلية مختلفة. أما instance-identifier فيلزم prefix صريحاً لكل اسم عقدة، مع بقاء تلك البادئات محلية للوثيقة. يحتاج حل القيمة إلى schema الصحيح، ولا يثبت الحل وحده وجود العقدة المشار إليها في datastore المعني.
للترتيب أكثر من صاحب
يمكن ترتيب أبناء container العادي بأي نسق، بينما تتبع معاملات إدخال وإخراج RPC/action ترتيب الـschema. تأتي مفاتيح list أولاً. وتحافظ عناصر ordered-by user على ترتيب المستخدم، في حين يحدد التنفيذ ترتيب system-ordered.
فرز كل العناصر قبل المقارنة يزيل ضوضاء غير مهمة، لكنه قد يمحو أولوية أو سياسة first-match. واعتبار كل حركة تغييراً دلالياً ينتج إنذارات كاذبة. ينبغي ربط التسلسل الأصلي بمسار YANG وقاعدة ordered-by وقراءة الخادم.
العقدة الغائبة قد تبقى فعالة
لا تعرف المسودة 00 أوضاع NETCONF الخاصة بالـdefaults. يحدد RFC 7950 متى تكون القيمة الافتراضية in use، ويطلب من الخادم أن يتصرف كأن العقدة موجودة؛ وقد تمنع when أو if-feature ذلك. ويحدد RFC 6243 أوضاع report-all وtrim وexplicit وreport-all-tagged.
لذلك لا يعني غياب leaf عن XML غيابه عن الشجرة الفعلية. ولا يكشف وجود قيمة مطابقة للـdefault هل كتبها العميل أو أنشأها الخادم أو خزنها. قبل المقارنة يجب تسمية العرض: bytes المنقولة، configuration المخزنة، accessible tree مع defaults المستخدمة، أو رد with-defaults محدد.
Canonical XML لا يطبق دلالة YANG
يثبت Canonical XML 1.1 تفاصيل فيزيائية مثل encoding الحروف وترتيب السمات وتعريفات namespaces. ويقول W3C صراحة إن خوارزمية XML عامة لا تستطيع احتواء كل قواعد التكافؤ الخاصة بالتطبيق. قد تختلف canonical forms وتبقى الدلالة واحدة داخل تطبيق؛ كما أن تساويها لا يضيف قواعد YANG الخارجية.
تشمل هذه القواعد revision وfeatures وdeviations والصيغ المعجمية والقياسية للأنواع والـdefaults والترتيب والقيود والمراجع. لا يختار C14N module set ولا يوسع defaults ولا يحل leafref.
تعلن YANG Library في RFC 8525 schema-set للخادم، لكن الإعلان يحتاج إلى ربطه بما حملته العملية فعلاً. ويسمح RFC 8528 بأن تستخدم نسخ مختلفة من mount point نفسه schemas مركبة مختلفة. يفقد XML fragment المعزول هذا السياق.
تنقل metadata في RFC 7952 عبر XML attributes. قد يحذف وسيط السمات غير المعروفة ويبقي البيانات العادية قابلة للتحقق، لكنه يفقد annotation تحدد الأصل أو الشرط. كذلك لا توجد ضمانة عامة لتحويل anydata مجهولة النموذج أو anyxml إلى ترميز آخر ثم العودة بلا خسارة.
يبدأ دليل التنفيذ بعد اكتمال التمثيل
ملف XML صحيح ليس دليلاً على وصول NETCONF RPC. يميز RFC 6241 بين <rpc-reply> و<rpc-error> و<ok>. تشير <ok> إلى معالجة بلا error أو warning وبلا بيانات للعودة؛ ولا تشهد على الأثر الفيزيائي اللاحق.
يجب ربط request وmessage-id والجلسة الموثقة وcapabilities وYANG Library والرد وقراءات datastore قبل وبعد. ويفصل RFC 8342 بين running وintended وoperational لأن التكوين الصحيح والنية المحولة والحالة المطبقة قد تختلف. تأتي الملاحظة الخارجية للخدمة في النهاية.
تحدد المواصفة ما يحق للأطراف أن تتوقعه. ويبين running code ما حدث فعلاً. الدقة تأتي من وصل الأدلة، لا من توسيع أول علامة نجاح.
المصادر
- https://www.ietf.org/archive/id/draft-ietf-netmod-yang-xml-00.txt
- https://datatracker.ietf.org/doc/draft-ietf-netmod-yang-xml/
- https://datatracker.ietf.org/doc/draft-ietf-netmod-yang-xml/history/
- https://www.rfc-editor.org/rfc/rfc7950.html
- https://www.rfc-editor.org/rfc/rfc6241.html
- https://www.rfc-editor.org/rfc/rfc6243.html
- https://www.rfc-editor.org/rfc/rfc7952.html
- https://www.rfc-editor.org/rfc/rfc8342.html
- https://www.rfc-editor.org/rfc/rfc8525.html
- https://www.rfc-editor.org/rfc/rfc8528.html
- https://www.w3.org/TR/xml-c14n11/
- https://www.rfc-editor.org/rfc/rfc8040.html
- https://heng.lu/running-code-primary-the-patch-needed-to-preserve-the-internet-original-design/
- https://heng.lu/minimum-initial-specification-localized-future-decision-voluntary-adoption-internet-coordination-system/
- https://heng.lu/on-data-sovereignty-technical-vs-practical-realities/
إحاطة الأعضاء
سياق أعمق للملف الشخصي
سجّل الدخول بمستوى العضوية المناسب لفتح الإحاطة الكاملة وملاحظات المصادر.
للدائرة الاستراتيجية فقط
الدائرة الاستراتيجية
مفتوح لجميع القراء. افتح إحاطات الملف الشخصي بعد الانضمام وتسجيل الدخول.
انضم إلى الدائرة الاستراتيجيةلأعضاء تحالف القيادات فقط
تحالف القيادات
لأصحاب الأصول الفكرية المؤهلين وللإدارة؛ سجّل الدخول للوصول إلى إحاطات التحالف.
انضم إلى تحالف القيادات
