Or DSP - Service (assuming you are using the DSP component subtypes which have no database update functions).
So, many many years ago we built our client/server app using uniface lists (and lists of lists, all the way down) to pass the data from the server to the client.
I have tried in the past to switch this to XML transfers with limited success, and am re-trying again to refactor our C/S transfers.
I'd like to be able to do without DTDs as these are (from my perspective) just another thing which will prevent the transfer of all the data from client to server unless the programmer is very very careful when adding new fields to an entity that they have found all the DTDs using that entity and included them. When you don't then any existing data is WIPED from the database when being re-saved (may only be true of down entities). So the DTD is a dangerous hole in the development. Also managing the maps is a pain in the proverbial.
I am therefore trying to use componenttostruct, structtojson, and vice versa to pass the data. I am using the /reconnecttags but can't see any sign of them in the JSON, (I don't think).
Short version of the question, how are people generally passing complex data from server to client and vice versa, maintaining the modification status? If it's XML are there any tricks to maintaining DTDs which make them less of a trap?
Cheers.
Iain




