Thanks! Very useful. I understand the concept, but I'm still not sure what the best approach would be to use virtual attributes against an integer column and somehow extract a string from that. Would I need to define a virtual attribute for each integer that I have mapped as an enum? In my case I have up to 10 enums in some columns.