JSON şema (taslak-04) 'de tanımları nasıl kullanılır:Ben örnek aşağıdaki benzer ile çalışıyorum dinlenme hizmeti yanıtı, sadece burada 3 alanları dahil ettik ama çok daha fazla vardır
{
"results": [
{
"type": "Person",
"name": "Mr Bean",
"dateOfBirth": "14 Dec 1981"
},
{
"type": "Company",
"name": "Pi",
"tradingName": "Pi Engineering Limited"
}
]
}
ben yukarıda (taslak-04) açıkça belirtmek hangi bir JSON şema dosyası yazmak istiyorum:
if type == Person then list of required properties is ["type", "name", "dateOfBirth", etc]
OR
if type == "Company" then list of required properties is ["type", "name", "tradingName", etc]
Ancak bunu nasıl herhangi belgelerine veya örnek bulamıyorum.
anda benim JSON şema aşağıdaki gibidir:
{
"$schema": "http://json-schema.org/draft-04/schema",
"type": "object",
"required": ["results" ],
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"required": ["type", "name"],
"properties": {
"type": { "type": "string" },
"name": { "type": "string" },
"dateOfBirth": { "type": "string" },
"tradingName": { "type": "string" }
}
}
}
}
}
Herhangi işaretçiler/Bu nasıl işlemesi gerektiğini örnekler.
: Ama http://usingjsonschema.com kitapta mülkiyet ve tanımı hem bağımlılıkları açıkladı: Tür Kişi MyObject öğesini genişletir, Şirket MyObject öğesini genişletir ve ana şemanda MyObject türünde bir dizi tanımla MyObject –
JSONSchema'nın XSD'ye ne kadar benzediğini bilmiyorum, ancak XSD hakkında ne hatırlayabildiğimden ortak bir yere ihtiyacınız yok. nesneniz için süper sınıf. Şemalar içinde mirasınızı tercih edersiniz. Örneğinizdeki şema ve şirket şemasının yerini alabilmesi için ana şemanızdaki soyut bir yer tutucu. – atomman
Bağımlılıkların da 3. maddede olduğunu görüyorum. Hiç kimse 3. ve 4. taslaklar arasındaki bağımlılıklar ile ilgili herhangi bir farklılığı açıklıyor mu? – Relequestual