Validar un archivo JSON significa comprobar que cumple estrictamente con las reglas de sintaxis. Un JSON válido debe:
{ }
y corchetes [ ]
balanceados.Si el archivo contiene cualquier error de sintaxis, deja de ser válido y las aplicaciones que intenten leerlo generarán un error de parsing.
{
"nombre": "Ana",
"edad": 28,
"activo": True, // Error: True debe ser true y no se permiten comentarios
}
Errores detectados:
"True"
con mayúscula — JSON solo acepta true
.true
.//
— JSON no lo permite.Son la forma más rápida de comprobar si un JSON está bien escrito. Algunos de los más usados:
📌 Funcionamiento:
Hoy casi todos los editores tienen soporte nativo para JSON.
En Linux/macOS con jq:
jq es un procesador de JSON muy popular.
📌 Ejemplo:
jq . archivo.json
import json
with open("archivo.json", "r", encoding="utf-8") as f:
try:
data = json.load(f)
print("El JSON es válido")
except json.JSONDecodeError as e:
print("Error en el JSON:", e)
En Node.js:
node -e "JSON.parse(require('fs').readFileSync('archivo.json'))"
Más allá de la sintaxis, a veces necesitamos verificar que un JSON siga un formato esperado. Para eso se usa JSON Schema, un estándar que define reglas sobre:
📌 Ejemplo de JSON Schema (estructura de un producto):
{
"type": "object",
"properties": {
"codigo": { "type": "integer" },
"descripcion": { "type": "string" },
"precio": { "type": "number" }
},
"required": ["codigo", "descripcion"]
}
Este esquema define que:
codigo
debe ser entero.descripcion
debe ser string.precio
debe ser número.codigo
y descripcion
son obligatorios.