एम्बेडेड वस्तुओं की स्कीमा को सादे वस्तुओं का उपयोग करके परिभाषित करने की आवश्यकता है, इसलिए यदि आप परिभाषाओं को अलग रखना चाहते हैं तो आप इसे इस प्रकार कर सकते हैं:
var SomeOther = {
a : { type:String, default:'test' },
b : { type:Boolean, default:false }
...
};
var SomeOtherSchema = new Schema(SomeOther); // Optional, if needed elsewhere
var GroupSettings = {
x : { type:Number, default:20 },
y : { type:Boolean, default:false },
...
else : SomeOther
};
var GroupSettingSchema = new Schema(GroupSettings); // Optional, if needed elsewhere
var GroupSchema = new Schema({
name : { type:String , required:true, unique:true},
description : { type:String, required:true },
...
settings : GroupSettings
});