ما الذي تتحقق منه الأداة
تقرأ الأداة النص وفق قواعد JSON في المعيار RFC 8259 الصادر عن فريق هندسة الإنترنت IETF. فالمفاتيح والنصوص تُكتب بين علامتي تنصيص مزدوجتين، والقيم الحرفية الوحيدة هي true وfalse وnull، ولا تبدأ الأرقام بصفر زائد ولا تنتهي بنقطة، ولا مكان للتعليقات ولا لفاصلة قبل القوس الختامي. وكل واحدة من هذه زلة شائعة عند النسخ واللصق، لذلك تسمّيها رسالة الخطأ بكلمات واضحة مثل «فاصلة زائدة قبل القوس» أو «علامات التنصيص المفردة غير مسموحة» بدل عبارة مبهمة مثل «رمز غير متوقع».
رقم السطر والعمود كما تراهما
يُحسب موضع الخطأ بالأحرف كما تظهر على الشاشة، بدءًا من السطر 1 والعمود 1. ويُعدّ الحرف العربي والحرف ذو العلامة والرمز التعبيري حرفًا واحدًا، فيطابق رقم العمود ما يعرضه محررك. واضغط «اذهب إلى الخطأ» ليقف المؤشر على الحرف نفسه، حتى في ملف من آلاف الأسطر.
الأرقام الكبيرة والمفاتيح المكررة
تمرّر معظم أدوات التنسيق نص JSON على المحلل المدمج في المتصفح، وهو يخزّن الأرقام بصيغة الفاصلة العائمة ذات 64 بتًا. ويذكر المعيار RFC 8259 أن الأعداد الصحيحة لا تُنقل بدقة تامة بهذه الطريقة إلا بين −(2^53 − 1) و2^53 − 1، فقد يعود رقم طلب من 19 خانة وقد تغيّرت خاناته الأخيرة. أما هذه الأداة فتُبقي كل رقم كما كُتب، وتنبّهك إذا تجاوز هذا المدى لأن برامج أخرى قد تقرّبه. ويوصي المعيار أيضًا بألا تتكرر المفاتيح في الكائن الواحد، فإن تكرر مفتاح أبقت الأداة القيمتين وذكرتهما بدل الاحتفاظ بالأخيرة بصمت.
ترتيب المفاتيح والتصغير
يرتّب خيار «ترتيب المفاتيح» مفاتيح كل كائن حسب ترتيب رموز يونيكود، وهو الترتيب الذي تستخدمه أدوات سطر الأوامر الشائعة، فيسهل مقارنة ملفين فيهما البيانات نفسها بترتيب مختلف. وتبقى المصفوفات على ترتيبها لأن للترتيب فيها معنى. أما «تصغير» فيحذف كل مسافة وسطر جديد خارج النصوص، فينتج أصغر ملف ممكن لطلب واجهة برمجية أو لقيمة إعداد، ولا يمس ما بين علامات التنصيص.
الترميز والنص العربي وخيار الهروب
يشترط المعيار RFC 8259 أن يكون نص JSON المتبادل بين الأنظمة بترميز UTF-8، ويمكن كتابة العربية وأي لغة أخرى داخل النصوص مباشرة. وإذا كان النظام الذي ترسل إليه لا يقبل إلا أحرف ASCII ففعّل خيار «تحويل الأحرف غير اللاتينية إلى رموز هروب»، فيُكتب كل حرف منها بصيغة \u متبوعة بأربع خانات. وتقبل الأداة علامة ترتيب البايتات في أول الملف وتنبّهك إليها، لأن المعيار يمنع المرسل من إضافتها.