Json Schema ไฟล์นามสกุล


96

มีหลักการตั้งชื่อสำหรับนามสกุลไฟล์ json schema หรือไม่? XML มี. xsd (XML Schema Definition) ไฟล์สคีมา json ควรมีอะไรบ้าง, .jsd (JSON Schema Definition)


2
ในฐานะคนที่ทำงานเกี่ยวกับข้อกำหนดสคีมาของ JSON ในขณะนี้จึงไม่ใช่สิ่งที่ได้รับการพิจารณา หากคุณคิดว่าควรจะเป็นอย่าลังเลที่จะเปิดปัญหาใน github repo
เผยแพร่คำถาม

คำตอบ:


102

จากGary Court:

ส่วนตัวผมใช้. schema.json แต่ไม่มีนามสกุลไฟล์อย่างเป็นทางการ อย่างไรก็ตามประเภทละครใบ้อย่างเป็นทางการคือ "application / schema + json"


9
ฉันยังใช้ * .schema.json
jasonkarns

1
ฉันยังใช้ * .schema.json
Daniel Santos

20

ตามร่างล่าสุด (v4)ไม่มีส่วนขยายใหม่ที่เสนอสำหรับไฟล์ที่จัดเก็บ json-schemas ส่วนขยาย. json ถูกใช้อย่างล้นเหลือภายในเอกสารนั้น .json เป็นส่วนขยายที่ต้องการในโปรแกรมตรวจสอบความถูกต้อง (PHP, Ruby, Python)

ดังนั้นฉันคิดว่า. json ควรเป็นตัวเลือกที่ต้องการหากไม่มีนามสกุลใหม่อย่างเป็นทางการ / มาตรฐาน


3

ฉันเริ่มใช้.jschemaหลังจากที่ฉันรันด้วยตัวแยกวิเคราะห์ JSON Schema ที่ใช้ส่วนขยายซึ่งจะเพิ่ม id ลงในตัวอย่าง RAML ภายนอกโดยอัตโนมัติซึ่งก็เช่นกัน.jsonไฟล์โดยอัตโนมัติ

เป็นรูปแบบเฉพาะหลังจากทั้งหมด HTML คือ XML ซึ่งก็คือ UML และเราใช้นามสกุลไฟล์ที่แตกต่างกันสำหรับแต่ละไฟล์


2
ไม่ HTML ไม่ใช่ XML มีจำนวนมากและแตกต่างกันมาก
Mark Amery

3
เช่นเดียวกับ HTML5 HTML เป็นคำศัพท์ที่กำหนดไว้สำหรับสื่อที่เกี่ยวข้องสองประเภท: text / html (ซึ่งเป็นตัวแยกวิเคราะห์ที่ซับซ้อนโดยไม่อิงจากสิ่งใด ๆ ) และ application / xhtml + xml (ซึ่งเป็น XML มาตรฐาน)
awwright

ฉันคิดว่าคุณหมายถึง SGML ไม่ใช่ UML
Daniel Schilling

0

จากhttps://json-schema.org/understand-json-schema/basics.html#id3

เนื่องจาก JSON Schema เป็น JSON จึงไม่ใช่เรื่องง่ายเสมอไปที่จะบอกว่าบางสิ่งบางอย่างเป็น JSON Schema หรือเพียงแค่กลุ่ม JSON โดยพลการ $schemaคำหลักที่จะใช้ในการประกาศสิ่งที่เป็น JSON Schema โดยทั่วไปควรรวมไว้ด้วยแม้ว่าจะไม่จำเป็นก็ตาม

ดังนั้นคุณสามารถใช้.jsonเป็นนามสกุลไฟล์สำหรับสคีมา JSON แต่อาจใช้$schemaคีย์เวิร์ด (แม้ว่าจะเป็นทางเลือก) เพื่อความแตกต่างที่ดีขึ้น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.