I don't think what I am trying to do can be done with my current setup, but before I embark on some rework, I just wanted to check I haven't missed an approach...
I have a scheduled class that executes a batch. So far so good. But to run that batch, I need to check a date from an external web service to include in the SOQL - and this is where I am running into a problem. A scheduled class can only make a callout if the callout is run in an @future context. But sadly, a class running as @future can't then execute a batch, or even schedule a batch to run in the future using system.schedulebatch. So is there any approach that would let me schedule a class to make a callout, and then also execute/schedule a batch that I am missing? Right now, I am thinking I need my scheduled class to make the callout via @future and have the @future update a custom setting with the results, and have the scheduled class also schedule a class to execute my batches run in x mins to allow time for @future to run?