I just wrote this up as a Design Pattern:
For better or worse, encoding the value in the Item name IS the elegant solution.