+1 for a isComposed() method on MD. But then, I saw some instanceof checks elsewhere, which should be changed to isComposed()