Query external workflow from within a workflow

Is it currently possible to query the state of an external workflow from within a workflow? And, I suppose, is it a reasonable thing to be doing?

My understanding is QueryWorkflow is a client method that must not be used within a workflow, so the only alternative seems to be to call QueryWorkflow from an activity.

Yes, at this point querying from an activity using the client is the only option.

In some scenarios, the query is used to poll for other workflow reaching some state. For those sending a signal to the workflow and getting a reply signal when the state is reached is cleaner.