code: func (a *ActionDefinition) EffectiveSchemes() []string {
  	// Compute the schemes
  	schemes := a.Schemes
  	if len(schemes) == 0 {
  		res := a.Parent
  		schemes = res.Schemes
  		parent := res.Parent()
  		for len(schemes) == 0 && parent != nil {
  			schemes = parent.Schemes
  			parent = parent.Parent()
  		}
  		if len(schemes) == 0 {
  			schemes = Design.Schemes
  		}
  	}
  	return schemes
  }
docs: // EffectiveSchemes return the URL schemes that apply to the action. Looks recursively into action
  // resource, parent resources and API.