Alternate possibility: add a new interface, "RetrievableChildrenInterface" or similar, and have the ViewModel also implement that interface. That way we can combine the two interfaces (or have the ViewModelInterface extend it) in 3.0, and users can test for that interface prior to calling the method.