I have a problem to break down and implement.
At first look it seems, as if it should be done in polymorphic way. I imagine it as having this "abstract" class model Thing and then many many many different concrete_thing_types. My doubt is though - I am not really able to tell now what and how many of those different concrete_thing_types there will be. There may be "hundreds" of them and during the application's lifecycle, that set will probably expand.
Any suggestions then?
Cheers,
M