चांगला schema client-driven, कडांना default नुसार nullable, आणि versions शिवाय evolvable असतो. तो domain ला clients प्रत्यक्ष वापरतात त्या भाषेत मॉडेल करतो, तुमच्या database tables नुसार नव्हे.
Nullability
एखादी field non-null (!) तेव्हाच करा जेव्हा तुम्ही ती नेहमी परत करू शकता. ! चा अतिवापर हा एक सापळा आहे: non-null field error झाली, तर ती तिचा संपूर्ण parent object null करते, ज्यामुळे लहान अपयशाचे मोठे रिकामे रूपांतर होते. downstream service वर अवलंबून असणाऱ्या कोणत्याही गोष्टीसाठी nullable ला प्राधान्य द्या.
