Yeah, seems acceptable. Doing fancy weird stuff can be handled in a listener on the load metadata event