code: func (rs *RuleSet) Apply(message *ab.Envelope) error {
  	for _, rule := range rs.rules {
  		err := rule.Apply(message)
  		if err != nil {
  			return err
  		}
  	}
  	return nil
  }
docs: // Apply applies the rules given for this set in order, returning nil on valid or err on invalid