Я предлагаю сделать запрос на получение страницы с очень маленькими издержками, содержащей только те данные, которые необходимы для проверки изменения версии.
В приложении для iOS сохраните значение последней сохраненной версиии сравните это с этой маленькой страницей, которую вы тянете.Если значение на странице больше (новее), извлеките полный XML-файл.
Это значение может быть либо датой, когда оно было обновлено, либо номером версии.В данный момент я не на Mac, поэтому тестирование кода Obj-C не является тривиальным, но вот некоторый псевдокод:
int versionNumber; // can be a datetime as well
...
void pullXmlIfAvailable() {
int latestVersionNumber = parseVersionNumberFromPage(URLget("myurl.com/check.xml")).to_i();
if (latestVersionNumber > versionNumber)
DataClass xml = parseDataFromLargerFile(URLget("myurl.com/bigfile.xml"));
}