It's a clever way of doing it, because at the moment, and just like you said, I'm adding another routing rule. Do you know how a colon is interpreted by a search engine?

I'm guessing that in your system you can also simulate that HTTP request within the parent module right? Something like this:

$this->getModule('child_module', array('action', 'param1', 'param2'));