Düzenli JSON, verinin doğru olduğunu kanıtlamaz

Girinti, ayarları karşılaştırmayı ve hizmet yanıtını incelemeyi kolaylaştırır. Fiyatın doğru, alanın zorunlu veya ölçüm biriminin uygun olup olmadığını söylemez.

Sözdizimi ilk kontroldür, son değil

JSON metinler ve özellik adları için çift tırnak kullanır. Yorumlar ve son öğeden sonraki virgül standart sözdiziminde yoktur.

Okuma başarılı olduktan sonra sözleşmeyi denetleyin: gerekli alanlar, türler, birimler ve izinli değerler. Metin türündeki quantity geçerli JSON olabilir, ancak sayı bekleyen hizmet için uygun olmayabilir.

Kaynaklar: RFC 8259 — JSON syntax and interoperability

Metnin içindeki boşluk veridir

Yapısal noktalama çevresindeki boşluklar yapıyı değiştirmeden düzenlenebilir. Tırnak içindekiler değere aittir; küçültme bütün boşlukları silme izni değildir.

ToolRoof sayı ve metinlerin özgün gösterimini korur. Biçimlendirme "0042" kimliğini 42 sayısına çevirmez veya 1e3 ifadesini yalnızca görünüş için yeniden yazmaz.

Kaynaklar: RFC 8259 — JSON syntax and interoperability

Yinelenen anahtar ayrıca karara bağlanmalıdır

Standart nesne içindeki adların benzersiz olmasını önerir; yazılımlar tekrarları farklı ele alır. Başarılı biçimlendirme, hangi değerin amaçlandığını göstermez.

Son değerin her zaman kazanacağını varsaymak yerine tekrarı kaynak sözleşmesine göre çözün. Büyük sayının burada korunması, başka sistemde aynı hassasiyetle okunmasını da garanti etmez.

Kaynaklar: RFC 8259 — JSON syntax and interoperability

Örnek: hesaplanacak sayı değil, kutunun kodu

{"item":"box blue","quantity":2,"amount":1e3,"code":"0042"} içinde adın 2 boşluğu, sayısal quantity, üstel amount ve başında 2 sıfır bulunan metinsel code vardır. Girinti bu ayrımları silmemelidir.

Küçültme box blue içindeki 2 boşluğu, 1e3 gösterimini ve "0042" metnini korur. {"count":2,"count":3} ise kaynakta karar gerektirir; güzel görünüm amaçlanan sayıyı belirlemez.

Kaynaklar