Currently, I'm developing an app that gets a lot JSON data from web services. In the past, I did several apps but the results were retrieved, parsed into NSArray of NSDictionarie and shown on the fly (when internet was ON only). There's a similar post , the difference is I will need to cache it in local DB for later reuse. The size of the database in server is 15 - 20 tables, and I will have to develop multiple screens and will have to handle multiple JSON data lists. The rules should be these: if internet is ON then renew local DB and show. If internet is OFF then show info from local db cache.
Currently, I'm designing XML data format that will be implemented by our server person when he will be implementing these web services. So, I'm trying to foresee and to avoid possible problems. IMHO all web services should return aggregated and formatted data, that could be shown on required screens without any additional computations or formatting. But how to store (cache) them on local core data db? After each JSON data parse, I have NSArray of NSdictionaries. Do I have to extract all the data, normalize it and store in normalized core data (min 1, max 3rd normal form)? Or would it be enough to serialize parsed NSArrays of NSDictionaries into several dummy core data tables?
ps. any hints on how to perform such serialization are also desirable :)