JSON Schema जनरेटर
आपके ब्राउज़र में स्थानीय रूप से चलता हैनमूना JSON से Draft 2020-12 JSON Schema अनुमानित करें
JSON नमूना
JSON Schema Generator क्या करता है
यह उदाहरण JSON पढ़कर JSON Schema Draft 2020-12 दस्तावेज़ लिखता है, जिसमें "$schema" URI https://json-schema.org/draft/2020-12/schema होता है। नेस्टेड ऑब्जेक्ट नेस्टेड properties बनते हैं, array को items स्कीमा मिलता है, पूर्णांक integer और बाकी संख्याएँ number के रूप में दर्ज होती हैं, और null स्वीकार करने वाले फ़ील्ड ["string", "null"] जैसी प्रकार सूची लेते हैं। जब किसी स्थान पर ऑब्जेक्ट या array के साथ दूसरे प्रकार भी हों, तो स्कीमा हर प्रकार के लिए एक शाखा वाला anyOf इस्तेमाल करता है, इसलिए मिले-जुले array से जनरेशन नहीं रुकता।
कैसे इस्तेमाल करें
- 1.JSON नमूना चिपकाएँ, एक .json फ़ाइल अपलोड करें या खींचकर छोड़ें, या उदाहरण लोड करें। कई रिकॉर्ड वाला array सबसे सटीक परिणाम देता है।
- 2.टाइप करते समय स्कीमा अपडेट होता है; 2 MB से बड़े इनपुट स्कीमा बनाएँ बटन का इंतज़ार करते हैं।
- 3.चाहें तो शीर्षक जोड़ें और फ़ॉर्मैट पहचानें, उदाहरण शामिल करें, आवश्यक फ़ील्ड अनुमानित करें तथा enum अनुमानित करें चुनें।
- 4.वैकल्पिक, केवल-null, मिश्रित और enum फ़ील्ड के लिए अनुमान नोट्स पढ़ें।
- 5.नमूना सत्यापित करें चुनें, फिर स्कीमा कॉपी करें या schema.json डाउनलोड करें।
विकल्प कैसे काम करते हैं
आवश्यक फ़ील्ड वे कुंजियाँ हैं जो किसी स्थान पर दिखे हर ऑब्जेक्ट में मौजूद हों, इसलिए रिकॉर्ड के array में किसी एक रिकॉर्ड में न मिलने वाली कुंजी वैकल्पिक रहती है। अकेले ऑब्जेक्ट से यह पता नहीं चलता कि कौन-सी कुंजियाँ वैकल्पिक हैं, और टूल यह साफ़ बताता है। फ़ॉर्मैट (email, uri, date-time, date, time, uuid, ipv4) तभी जोड़े जाते हैं जब किसी स्थान की हर स्ट्रिंग ठीक एक ही फ़ॉर्मैट से मेल खाए; पहचान बंद करने पर हर format कीवर्ड हट जाता है। enum डिफ़ॉल्ट रूप से बंद रहते हैं और केवल दोहराए गए, कम अलग मानों वाले ऐसे टेक्स्ट के लिए बनते हैं जो ID जैसा, फ़ॉर्मैट वाला या मुक्त टेक्स्ट न हो; इनमें नमूने का हर मान शामिल रहता है।
सत्यापन, सीमाएँ और गोपनीयता
नमूना सत्यापित करें स्कीमा को Ajv के Draft 2020-12 strict मोड और ajv-formats के साथ कंपाइल करके आपके नमूने की जाँच करता है, और हर विफलता का JSON Pointer तथा नियम दिखाता है। उदाहरणों से बना स्कीमा केवल वही बताता है जो नमूने में दिखता है: ऑब्जेक्ट अतिरिक्त कुंजियों के लिए खुले रहते हैं, और मानों की सीमा, पैटर्न या लंबाई का अनुमान नहीं लगाया जाता। JavaScript की सटीकता से बड़ी संख्याओं का प्रकार सही रहता है, पर उन्हें उदाहरणों में नहीं रखा जाता। सब कुछ आपके ब्राउज़र में चलता है, और वैलिडेटर केवल माँगने पर लोड होता है।
