Attempted to address here in this branch:
https://github.com/jsouter/odin-fastcs/tree/names
For each controller, the parameter names are shortened by iterating over the URIs from the last part, the name for each attribute is composed from the fewest URI parts needed to make it unique.
e.g. status/hdf/rank and config/hdf/process/rank become hdf_rank and process_rank. It's possible that shortening the names could lead to ambiguity as to the meaning of the parameter, though hopefully the grouping of PVs on the screen makes this clearer.
We could also change the logic to only shorten parameter names that would exceed the EPICS character limit, though that logic would probably be better implemented in the EPICS handling part of FastCS itself