var typeOne = new Schema({
    info:String,
    message:String
})
var typeTwo = new Schema({
    url:String,
    names:[String]
})
var itemSchema = new Schema({
    authorId : { type:ObjectId, required:true, ref : 'user' },
    authorType : { type:String, required:true, enum:userTypes },
    detail :  {},//no any validation here
    itemType : {type:String,required:true,enum:itemTypes}
})
var itemSchema = new Schema({
    authorId : { type:ObjectId, required:true, ref : 'user' },
    authorType : { type:String, required:true, enum:userTypes },
    detail :  {type:[typeOne,typeTwo]},//I prefere it can be like this
    itemType : {type:String,required:true,enum:itemTypes}
})