title: Why does Mongoose add blank arrays?
body: <p>I am trying to start using Mongoose as an ODM for MongoDB with my node.js application. I have noticed that when I design a schema with an embedded document that if I don't add a value to it, it store a blank array "[]" in Mongo. Why is this? I am trying to store historical changes to records and a blank array would mean that that change deleted the value. Here is a sample schema.</p>
  
  <pre><code>schema.Client = new mongoose.Schema({
      name:{type:String, required:true},
      products:[{
          name:{type:String, index:true},
          startDate:Date,
          endDate:Date
      }],
      subdomain:{type:String, index:{unique:true}},
  })
  </code></pre>
  
  <p>Here is the resulting document when I save a document with just name and subdomain.</p>
  
  <pre><code>{
      "name": "Smith Company",
      "products": [],
      "subdomain": "smith"
  }
  </code></pre>
  
  <p>Why did it add products with a blank array by default and how can I stop it?</p>