def build_slice_name( experiment_name, variable_name, time_index, xy_slice_index ):
    """
    Builds a unique name for a slice based on the experiment, variable, and location
    within the dataset.

    Takes 4 arguments:

      experiment_name - String specifying the experiment that generated the slice.
      variable_name   - String specifying the variable associated with the slice.
      time_index      - Non-negative index specifying the time step associated with
                        the slice.
      xy_slice_index  - Non-negative index specifying the XY slice.

    Returns 1 value:

      slice_name - String containing the constructed name.

    """

    return "{:s}-{:s}-z={:03d}-Nt={:03d}".format(
        experiment_name,
        variable_name,
        xy_slice_index,
        time_index )