Extensión de archivo Json Schema

96

¿Existe alguna convención de nomenclatura para una extensión de archivo de esquema json? XML tiene .xsd (Definición de esquema XML), ¿qué deberían tener los archivos de esquema json, .jsd (Definición de esquema JSON)?

Fresa
fuente
2
Como alguien que trabaja en la especificación JSON Schema actualmente, no es algo que se haya considerado. Si cree que debería serlo, no dude en abrir un problema en el repositorio de github.
Relequestual

Respuestas:

102

Desde Gary Court:

Yo personalmente uso .schema.json, pero no hay una extensión de archivo oficial. Sin embargo, el tipo de mimo oficial es "application / schema + json".

Eric Hartford
fuente
9
También uso * .schema.json
jasonkarns
1
También también uso * .schema.json
Daniel Santos
20

Según el último borrador (v4) , no se ha propuesto una nueva extensión para los archivos que almacenan esquemas json. La extensión .json se usa profusamente dentro de ese documento. .json también es la extensión preferida en validadores (PHP, Ruby, Python).

Entonces creo que .json debería ser la opción preferida en ausencia de una nueva extensión oficial / estándar.

jruizaranguren
fuente
3

Comencé a usarlo .jschemadespués de que me encontré con un analizador de esquema JSON basado en extensiones que agregaba automáticamente identificadores a ejemplos RAML externos que también son .jsonarchivos.

Son un formato específico, después de todo. HTML es XML, que es UML, y usamos una extensión de archivo diferente para cada uno de ellos.

Michał Tatarynowicz
fuente
2
No, HTML no es XML. Hay muchísimas diferencias.
Mark Amery
3
Bueno, a partir de HTML5, HTML es un vocabulario definido para dos tipos de medios relacionados: texto / html (que es un analizador complicado que no se basa en nada) y application / xhtml + xml (que es XML estándar).
awwright
Creo que te refieres a SGML, no a UML.
Daniel Schilling
0

De https://json-schema.org/understanding-json-schema/basics.html#id3

Dado que JSON Schema es JSON en sí mismo, no siempre es fácil saber cuándo algo es JSON Schema o simplemente un fragmento arbitrario de JSON. La $schemapalabra clave se usa para declarar que algo es JSON Schema. Generalmente es una buena práctica incluirlo, aunque no es obligatorio .

Por lo tanto, puede usarlo .jsoncomo extensión de archivo para el esquema JSON, pero tal vez con una $schemapalabra clave (aunque opcional) para una mejor distinción.

Saikat
fuente