docs: def validate_collections(self, model, context=None):
          """
          Validate collection properties
          Performs validation on collection properties to return a result object.
          :param model:  object or dict
          :param context: object, dict or None
          :return: shiftschema.result.Result
          """
          result = Result()
          for property_name in self.collections:
              prop = self.collections[property_name]
              collection = self.get(model, property_name)
  
              errors = prop.validate(
                  value=collection,
                  model=model,
                  context=context
              )
              if len(errors):
                  result.add_collection_errors(
                      property_name=property_name,
                      direct_errors=errors
                  )
  
              collection_errors = prop.validate_with_schema(
                  collection=collection,
                  context=context
              )
  
              result.add_collection_errors(
                  property_name=property_name,
                  collection_errors=collection_errors
              )
  
          return result