code: func restGetValueDescriptorsForDeviceName(w http.ResponseWriter, r *http.Request) {
  	vars := mux.Vars(r)
  	n, err := url.QueryUnescape(vars[DEVICENAME])
  	if err != nil {
  		http.Error(w, err.Error(), http.StatusBadRequest)
  		LoggingClient.Error(err.Error())
  		return
  	}
  
  	// Get all the associated device reports
  	reports, err := dbClient.GetDeviceReportByDeviceName(n)
  	if err != nil {
  		LoggingClient.Error(err.Error())
  		http.Error(w, err.Error(), http.StatusInternalServerError)
  		return
  	}
  
  	valueDescriptors := []string{}
  	for _, report := range reports {
  		for _, e := range report.Expected {
  			valueDescriptors = append(valueDescriptors, e)
  		}
  	}
  
  	w.Header().Set("Content-Type", "application/json")
  	json.NewEncoder(w).Encode(valueDescriptors)
  }
docs: // Get a list of value descriptor names
  // The names are a union of all the value descriptors from the device reports for the given device