docs: def is_single_trajectory(nc, variable):
      '''
      Returns true if the variable is a single trajectory feature
  
      :param netCDF4.Dataset nc: An open netCDF dataset
      :param str variable: name of the variable to check
      '''
      # x(o), y(o), z(o), t(o)
      # X(o)
      # cf_role must be trajectory
      dims = nc.variables[variable].dimensions
  
      cmatrix = coordinate_dimension_matrix(nc)
      # Time is required for trajectories
      if 't' not in cmatrix:
          return False
      # Coordinates changing with time are optional
      if 'x' in cmatrix:
          if cmatrix['x'] != cmatrix['t']:
              return False
      if 'y' in cmatrix:
          if cmatrix['y'] != cmatrix['t']:
              return False
      if 'z' in cmatrix:
          if cmatrix['z'] != cmatrix['t']:
              return False
      if dims != cmatrix['t']:
          return False
      traj_ids = nc.get_variables_by_attributes(cf_role="trajectory_id")
      if len(traj_ids) != 1:
          return False
      return True