JSON Schema လမ်းညွှန်
ကျွန်ုပ်တို့ JSON Schema သို့မ၀င်မီ JSON နှင့် JSON Schema အကြား ခြားနားချက်ကို သိရန် အရေးကြီးပါသည်။
JSON
JSON သည် JavaScript Object Notation ၏ အတိုကောက်ဖြစ်ပြီး ၎င်းသည် API များမှ တောင်းဆိုချက်များနှင့် အဖြေများပေးပို့ရန် အသုံးပြုသည့် ဘာသာစကား-လွတ်လပ်သောဒေတာဖော်မတ်တစ်ခုဖြစ်သည်။ JSON သည် လူများသာမက စက်များအတွက်ပါ လွယ်ကူစွာ ဖတ်နိုင်၊ ရေးသားနိုင်သည် ။ JSON သည် ဘာသာစကားနှင့် ဆက်စပ်မှုမရှိသော စာသားအခြေခံဖော်မတ် (Language independent) ဖြစ်သည်။
json schema
JSON Schema သည် JSON ဒေတာဖွဲ့စည်းပုံကို အတည်ပြုရန်အတွက် အသုံးဝင်သောကိရိယာတစ်ခုဖြစ်သည်။ JSON ၏ ဖွဲ့စည်းပုံကို သတ်မှတ်ရန်၊ JSON-based ဖော်မတ်ကို အသုံးပြုပါ။ ၎င်း၏ရည်ရွယ်ချက်မှာ JSON ဒေတာကို လက်ခံနိုင်စေရန်ဖြစ်သည်။ ကျွန်ုပ်တို့၏ အပလီကေးရှင်း၏ JSON ဒေတာအတွက် ကွန်ဗင်းရှင်းကို schema သုံးပြီး သတ်မှတ်နိုင်ပါသည်။
JSON Schema သတ်မှတ်ချက်တွင် အဓိက အပိုင်းသုံးပိုင်းရှိသည်။
JSON Hyper-Schema-
JSON Hyper-Schema သည် JSON စာရွက်စာတမ်းများကို ဟိုက်ပါလင့်ခ်များနှင့် ပြင်ပ JSON ရင်းမြစ်များကို ပြောင်းလဲခြင်းအတွက် စာသား- HTTP ကဲ့သို့သော ပတ်ဝန်းကျင်များမှတစ်ဆင့် ဟိုက်ပါလင့်ခ်များ၊ လမ်းညွှန်ချက်များဖြင့် တံဆိပ်ကပ်ရန် အသုံးပြုနိုင်သည့် JSON Schema ဘာသာစကားတစ်ခုဖြစ်သည်။ နှိပ်ပါ။ ဒီမှာ JSON Hyper-Schema အကြောင်းပိုမိုလေ့လာရန်။
JSON Schema Core-
၎င်းသည် JSON စာရွက်စာတမ်းများကို အညွှန်းတပ်ခြင်းနှင့် တရားဝင်ခြင်းအတွက် စည်းမျဉ်းများဖြစ်သည်။
JSON Schema Core-
- သင်လက်ရှိရှိနေသည့် ဒေတာဖော်မတ်ကို ဖော်ပြသည်။
- အလိုအလျောက် စမ်းသပ်ခြင်းတွင် အသုံးပြုနိုင်သည့် ဒေတာကို မှန်ကန်ကြောင်း အတည်ပြုသည်။
- ဖောက်သည်များပေးသော အချက်အလက်များ၏ တိကျမှုကို အာမခံသည်။
- လူနှင့် စက်များအတွက် ဖတ်နိုင်သော စာရွက်စာတမ်းများကို ပေးသည်။
JSON Schema အတည်ပြုခြင်း-
JSON Schema ပေါ်အခြေခံ၍ မှန်ကန်ကြောင်းအတည်ပြုခြင်းသည် instance data ၏ဖွဲ့စည်းပုံအပေါ်ကန့်သတ်ချက်များချမှတ်သည်။ ထို့နောက်တွင် မည်သည့်သော့ချက်စာလုံးမဆို အခိုင်အမာပြောဆိုခြင်းမရှိပါ။ သတင်းအချက်အလက်ဖော်ပြချက် မက်တာဒေတာနှင့် အသုံးပြုမှု ညွှန်ပြချက်များကဲ့သို့သော၊ ကြေညာထားသော ကန့်သတ်ချက်များအားလုံးကို ကိုက်ညီသည့် ဥပမာအနေအထားတစ်ခုသို့ ပေါင်းထည့်ထားသည်။
Newtonsoft ၏ JSON Schema Validator tool သည် သင့်ဘရောက်ဆာတွင် တိုက်ရိုက်အသုံးပြုနိုင်သည့် ကိရိယာတစ်ခုဖြစ်ပြီး အခမဲ့ဖြစ်သည်။ သင်၏ JSON schema ၏ဖွဲ့စည်းပုံကိုစမ်းသပ်ရန် ဤကိရိယာကိုသုံးနိုင်သည်။ ဤစာမျက်နှာတွင် သင့်အား စတင်ရန်အတွက် ထိန်းချုပ်မှုများနှင့် ရှင်းပြချက်များပါရှိသည်။ ထိုနည်းအားဖြင့်၊ သင်၏ JSON ဖွဲ့စည်းပုံကို မည်ကဲ့သို့ မြှင့်တင်ရမည်ကို လွယ်ကူစွာ မြင်နိုင်သည်။
JSON Schema Validation Tool ကို အသုံးပြု၍ ကျွန်ုပ်တို့၏ JSON Object ကို စစ်ဆေးနိုင်သည်-
အထက်ပုံတွင်ပြထားသည့်အတိုင်း ကျွန်ုပ်တို့တွင် အသက်အတည်ပြုချက် (အနည်းဆုံး = 20 နှင့် အများဆုံး = 40) ရှိသည်။ အမှားအယွင်းများ မတွေ့ရှိခဲ့ပါ။
အသက်အတည်ပြုချက်ကို မှားယွင်းစွာထည့်သွင်းပါက ၎င်းသည် အမှားအယွင်းတစ်ခုပြသခဲ့သည်။
JSON Schema ၏ဖန်တီးမှု
ငါတို့ပြောနေတာတွေကိုကြည့်ဖို့ JSON Schema ရဲ့ ဥပမာတစ်ခုကို ကြည့်ရအောင်။ ထုတ်ကုန်ကတ်တလောက်ကို ဖော်ပြသည့် အခြေခံ JSON Object သည် အောက်ပါအတိုင်းဖြစ်သည်-
၎င်း၏ JSON Schema ကို အောက်ပါအတိုင်း ရေးသားနိုင်ပါသည်။
JSON Schema သည် JSON စာရွက်စာတမ်းဖြစ်ပြီး၊ ထိုစာရွက်စာတမ်းသည် အရာဝတ္ထုတစ်ခုဖြစ်ရပါမည်။ သော့ချက်စာလုံးများသည် JSON Schema မှ သတ်မှတ်ထားသော အရာဝတ္ထုအဖွဲ့ဝင်/အင်္ဂါရပ်များဖြစ်သည်။ JSON Schema ရှိ “သော့ချက်စကားလုံးများ” သည် အရာဝတ္ထုတစ်ခုရှိ သော့/တန်ဖိုးပေါင်းစပ်မှု၏ “သော့” အပိုင်းကို ရည်ညွှန်းသည်။ JSON Schema တစ်ခုရေးခြင်းသည် အစိတ်အပိုင်းအများစုအတွက် အရာဝတ္ထုတစ်ခုအတွင်းရှိ တန်ဖိုးတစ်ခုအတွက် သီးခြား "သော့ချက်စကားလုံး" ကို ပုံဖော်ခြင်း ပါဝင်သည်။
ကျွန်ုပ်တို့၏နမူနာတွင်အသုံးပြုခဲ့သော အဓိကစကားလုံးများကို အနီးကပ်လေ့လာကြည့်ကြပါစို့။
အရင်းအမြစ်၏ schema လိုက်နာသည့် JSON schema ကို ဤရည်ညွှန်းချက်ဖြင့် ရေးသားထားသည်။ ဤ schema ကို "" မှသတ်မှတ်ထားသည့်အတိုင်း မူကြမ်း v4 စံနှုန်းအတိုင်း ရေးထားပါသည်။$ schema"သော့ချက်စာလုံး။ ၎င်းသည် သင်၏ schema အဟောင်းများနှင့် သဟဇာတမဖြစ်နိုင်သည့် လက်ရှိဗားရှင်းသို့ ပြန်ကျသွားစေရန် တားဆီးထားသည်။
အဆိုပါ "ခေါင်းစဥ်"နှင့်"ဖေါ်ပြချက်“သော့ချက်စာလုံးများသည် ရှင်းလင်းချက်မျှသာဖြစ်သည်။ ၎င်းတို့သည် စစ်ဆေးသည့် ဒေတာအပေါ် ကန့်သတ်ချက်များ ချမှတ်ထားခြင်း မရှိပေ။ ဤသော့ချက်စကားလုံးနှစ်လုံးသည် schema ၏ရည်ရွယ်ချက်ကိုဖော်ပြသည်- ၎င်းသည် ထုတ်ကုန်တစ်ခုကိုဖော်ပြသည်။
အဆိုပါ "ပုံစံ” သော့ချက်စကားလုံးသည် ကျွန်ုပ်တို့၏ JSON ဒေတာ၏ ပထမဆုံး နယ်နိမိတ်အခြေအနေကို သတ်မှတ်သည်။ JSON Object ဖြစ်ရမည်။ schema အားလုံးအတွက် အမျိုးအစားကို မသတ်မှတ်ပါက၊ ကုဒ် အလုပ်မလုပ်ပါ။ အချို့သော ဘုံအမျိုးအစားများမှာ "နံပါတ်" "Boolean" "integer" "null" "object" "array" "string" ဖြစ်သည်။
JSON Schema ကို အောက်ပါစာကြည့်တိုက်များမှ ပံ့ပိုးပေးသည်-
ဘာသာစကား | စာကြည့်တိုက် |
C | WJElement |
Python ကို | jschon |
PHP ကို | Opis Json Schema |
JavaScript ကို | ajv |
Go | gojsonschema |
Kotlin | Media-တရားဝင် |
ပတ္တမြား | JSONSchemer |
JSON (အထားအသို)
JSON ၏ အခြေခံအထားအသိုကို အတိုချုံးကြည့်ကြပါစို့။ JSON syntax သည် အောက်ပါဒြပ်စင်များ ပါဝင်သော JavaScript syntax ၏ အခွဲတစ်ခုဖြစ်သည်။
- ဒေတာကိုကိုယ်စားပြုသော အမည်/တန်ဖိုးအတွဲများကို အသုံးပြုပါသည်။
- အရာဝတ္ထုများကို အကောက်ကောက်များဖြင့် ဆုပ်ကိုင်ထားပြီး၊ အမည်တစ်ခုစီကို “,” (ကော်မာ) ဖြင့် ပိုင်းခြားထားသော တန်ဖိုးအတွဲများ ':' (ကော်လံ) ဖြင့် ဦးဆောင်ထားသည်။
- တန်ဖိုးများကို “,” (ကော်မာ) ဖြင့် ပိုင်းခြားထားပြီး array များကို စတုရန်းကွင်းပိတ်များဖြင့် ထိန်းထားသည်။
အောက်ပါ ဒေတာတည်ဆောက်ပုံနှစ်ခုကို JSON က ပံ့ပိုးပေးသည်-
- မှာယူထားသော တန်ဖိုးများစာရင်း- ၎င်းသည် array တစ်ခု၊ စာရင်းတစ်ခု သို့မဟုတ် vector တစ်ခု ဖြစ်နိုင်သည်။
- အမည်/တန်ဖိုးအတွဲများ စုစည်းမှု- မတူညီသော ကွန်ပျူတာဘာသာစကားများသည် ဤ Data Structure ကို ပံ့ပိုးပေးသည်။
JSON (အရာဝတ္ထု)
JSON schema သည် မတူညီသော JSON အရာဝတ္ထုတစ်ခု၏ အမျိုးအစားနှင့် ဖွဲ့စည်းတည်ဆောက်ပုံကို ဖော်ပြသော JSON အရာတစ်ခုဖြစ်သည်။ JavaScript object expression သည် JavaScript runtime environments တွင် JSON အရာတစ်ခုကို ကိုယ်စားပြုနိုင်သည်။ မှန်ကန်သော schema အရာဝတ္ထုများ၏ နမူနာအချို့မှာ အောက်ပါအတိုင်းဖြစ်သည်-
schema | မီးခြစ် |
{} | တန်ဖိုးတစ်ခုခု |
{အမျိုးအစား- 'အရာဝတ္ထု' } | JavaScript object တစ်ခု |
{အမျိုးအစား- 'နံပါတ်' } | JavaScript နံပါတ်တစ်ခု |
{အမျိုးအစား- 'စာကြောင်း'} | JavaScript စာကြောင်းတစ်ခု |
ဥပမာ:
ဗလာဖြစ်နေသော အရာဝတ္ထုအသစ်တစ်ခုကို ပြုလုပ်ခြင်း-
var JSON_Obj = { };
အရာဝတ္ထုအသစ် ဖန်တီးခြင်း-
var JSON_Obj = အရာဝတ္ထုအသစ်()
JSON (XML နှင့် နှိုင်းယှဉ်ခြင်း)
JSON နှင့် XML တို့သည် ဘာသာစကား-လွတ်လပ်စွာ လူသားဖတ်နိုင်သော ဖော်မတ်များဖြစ်သည်။ လက်တွေ့ကမ္ဘာအခြေအနေများတွင်၊ ၎င်းတို့သည် ဖန်တီးနိုင်၊ ဖတ်နိုင်၊ ကုဒ်လုပ်နိုင်သည်။ အောက်ပါစံနှုန်းများအပေါ် အခြေခံ၍ ကျွန်ုပ်တို့သည် JSON နှင့် XML ကို နှိုင်းယှဉ်နိုင်ပါသည်။
ရှုပ်ထွေး
XML သည် JSON ထက် ပိုရှုပ်ထွေးသောကြောင့် ပရိုဂရမ်မာများသည် JSON ကို ပိုနှစ်သက်သည်။
Arrays ကိုအသုံးပြုခြင်း။
XML ကို တည်ဆောက်ပုံဒေတာဖော်ပြရန် အသုံးပြုသည်။ သို့သော်၊ XML သည် array များကို မပံ့ပိုးသော်လည်း JSON က လုပ်ဆောင်သည်။
ဆန်းစစ်ခြင်း
JSON သည် JavaScript ၏ အကဲဖြတ်သည့်လုပ်ဆောင်ချက်ကို အသုံးပြု၍ ဘာသာပြန်ပါသည်။ eval သည် JSON နှင့်အသုံးပြုသောအခါ ဖော်ပြထားသော အရာအား ပြန်ပေးသည်။
ဥပမာ:
JSON | XML ကို |
{ "ကုမ္ပဏီ"- Ferrari၊ "အမည်"- "GTS"၊ ဈေးနှုန်း 404000 ပါ။ } |
ဖာရာရီ
GTS
၄၀၄၀၀၀
|
JSON Schema အားသာချက်များ
JSON သည် လူနှင့် စက်ဖြင့်ဖတ်နိုင်သော ဘာသာစကားဖြင့် လှည့်ပြောင်းရန် ဒီဇိုင်းထုတ်ထားသည်။ သို့သော် အချို့သော ချိန်ညှိမှုမရှိဘဲ၊ ၎င်းသည် မဖြစ်နိုင်ပါ။ JSON Schema တွင် JSON ကို စက်များနှင့် လူသားများအတွက် ပိုမိုနားလည်နိုင်စေရန်အတွက် အားသာချက်ရှိသည်။
JSON Schema ကိုအသုံးပြုခြင်းဖြင့် client-side updates အများအပြားလိုအပ်မှုကိုလည်း ဖယ်ရှားပေးပါသည်။ အသုံးများသော HTML ကုဒ်များစာရင်းပြုလုပ်ပြီးနောက် ၎င်းတို့ကို ကလိုင်းယင့်ဘက်တွင် အကောင်အထည်ဖော်ခြင်းသည် ကလိုင်းယင့်ဘက်ခြမ်းကို တည်ဆောက်ရန်အတွက် ပုံမှန်ဖြစ်သော်လည်း မတိကျသောနည်းလမ်းတစ်ခုဖြစ်သည်။ API ကို အက်ပ်များ သို့သော်၊ ဆာဗာဘက်ရှိ အပြောင်းအလဲများသည် အချို့သောလုပ်ဆောင်ချက်များကို ချွတ်ယွင်းသွားစေနိုင်သောကြောင့် ၎င်းသည် အကြီးမားဆုံးဗျူဟာမဟုတ်ပေ။
JSON Schema ၏ အဓိကအားသာချက်မှာ ပရိုဂရမ်းမင်းဘာသာစကားအမျိုးမျိုးနှင့် လိုက်ဖက်ညီမှု၊ တိကျမှုနှင့် ကိုက်ညီမှုရှိခြင်း တို့ဖြစ်သည်။
JSON schema သည် ကျယ်ပြန့်သော ဘရောက်ဆာများနှင့် ပံ့ပိုးပေးသည်။ လည်ပတ်မှုစနစ်များထို့ကြောင့် JSON တွင်ရေးထားသောအက်ပ်များသည် ၎င်းတို့အားလုံးကို ဘရောက်ဆာအားလုံးသဟဇာတဖြစ်အောင်ပြုလုပ်ရန် များစွာအားထုတ်မှုမပြုလုပ်ပါ။ ဖွံ့ဖြိုးတိုးတက်မှုကာလအတွင်း၊ ဆော့ဖ်ဝဲအင်ဂျင်နီယာများသည် JSON တွင် လုပ်ဆောင်နိုင်စွမ်းရှိပြီးသားဖြစ်သော်လည်း ဘရောက်ဆာများစွာကို ထည့်သွင်းစဉ်းစားပါသည်။
JSON သည် အသံ၊ ဗီဒီယိုနှင့် အခြားမီဒီယာများအပါအဝင် မည်သည့်အရွယ်အစားမဆို ဒေတာမျှဝေရန် အထိရောက်ဆုံးနည်းလမ်းဖြစ်သည်။ ယင်းမှာ JSON မှ ဒေတာများကို အခင်းအကျင်းများတွင် သိမ်းဆည်းထားသောကြောင့် ဒေတာပေးပို့မှုကို ပိုမိုလွယ်ကူစေပါသည်။ ရလဒ်အနေဖြင့် JSON သည် အွန်လိုင်း API များနှင့် ဖွံ့ဖြိုးတိုးတက်မှုအတွက် အကောင်းဆုံး ဖိုင်ဖော်မတ်ဖြစ်သည်။
APIs များ ပိုမိုအဖြစ်များလာသည်နှင့်အမျှ API ၏တရားဝင်မှုနှင့် စမ်းသပ်မှုသည် ပို၍အရေးကြီးလာမည်ဟု ယူဆရန် ယုတ္တိတန်ပါသည်။ JSON သည် အချိန်ကြာလာသည်နှင့်အမျှ ပိုမိုရိုးရှင်းဖွယ်မရှိဟုလည်း လက်တွေ့ကျပါသည်။ ဒါက အချိန်ကြာလာတာနဲ့အမျှ သင့်ဒေတာအတွက် schema တစ်ခုရှိခြင်းက ပိုအရေးကြီးလာမှာကို ဆိုလိုတာပါ။ JSON သည် APIs များနှင့်အလုပ်လုပ်ရန်အတွက်စံဖိုင်ဖော်မတ်ဖြစ်သောကြောင့် JSON Schema သည် APIs များနှင့်အလုပ်လုပ်သူများအတွက်ကောင်းမွန်သောအစားထိုးတစ်ခုဖြစ်သည်။