We use the similar in workunit sort. I think the advantage is easy (a little) to read, add or delete an item. For example, if we want to add "ABC" after "ABB", we may find idABB inside the mapEnums and add idABC/"ABC" after that. Otherwise, we may need to cound the position.

I can change it to simple array lookup. Please let me know.