code: func (h *Holder) applySchema(schema *Schema) error {
  	// Create indexes that don't exist.
  	for _, index := range schema.Indexes {
  		idx, err := h.CreateIndexIfNotExists(index.Name, index.Options)
  		if err != nil {
  			return errors.Wrap(err, "creating index")
  		}
  		// Create fields that don't exist.
  		for _, f := range index.Fields {
  			field, err := idx.createFieldIfNotExists(f.Name, f.Options)
  			if err != nil {
  				return errors.Wrap(err, "creating field")
  			}
  			// Create views that don't exist.
  			for _, v := range f.Views {
  				_, err := field.createViewIfNotExists(v.Name)
  				if err != nil {
  					return errors.Wrap(err, "creating view")
  				}
  			}
  		}
  	}
  	return nil
  }
docs: // applySchema applies an internal Schema to Holder.