docs: def _parse_sensor_record(self, sensor_data_rec, sensor_info, rem_values):
          """
          Parses values via sensor data record passed in.
          Returns parsed values AND how many items it consumed out of rem_values.
          """
          val_idx = 0
  
          # @TODO seems there is only a single field in each of these
          assert len(sensor_data_rec.field) == 1
          sensor_data_array = sensor_data_rec.field[0].content
  
          # there is probably not going to be a count in the def, it'll be in the data
          count = None
          count_text = sensor_data_array.elementCount.text
          if count_text:
              count = int(count_text.strip())
  
          if not count:
              count = int(rem_values[val_idx])
              val_idx += 1
  
          parsed = []
  
          for recnum in range(count):
              cur = []
  
              for f in sensor_data_array.elementType.field:
                  cur_val = rem_values[val_idx]
                  val_idx += 1
  
                  m = Member(name=f.name, standard=f.content.definition)
  
                  if hasattr(f.content, "uom"):
                      m["units"] = f.content.uom
  
                  try:
                      m["value"] = float(cur_val)
                  except ValueError:
                      m["value"] = cur_val
  
                  if len(f.quality):
                      m["quality"] = []
                      for qual in f.quality:
                          cur_qual = rem_values[val_idx]
                          val_idx += 1
  
                          # @TODO check this against constraints
                          m["quality"].append(cur_qual)
  
                  cur.append(m)
  
              parsed.append(cur)
  
          return parsed, val_idx