code: def validate(self) :
          
          if not self.mustValidate :
              return True
  
          res = {}
          for field in self.validators.keys() :
              try :
                  if isinstance(self.validators[field], dict) and field not in self.store :
                      self.store[field] = DocumentStore(self.collection, validators = self.validators[field], initDct = {}, subStore=True, validateInit=self.validateInit)
                  self.validateField(field)
              except InvalidDocument as e :
                  res.update(e.errors)
              except (ValidationError, SchemaViolation) as e:
                  res[field] = str(e)
  
          if len(res) > 0 :
              raise InvalidDocument(res)
          
          return True
docs: Validate the whole document