As far as I know and I've seen countless MVP Embarcadero videos, to exchange information with environments outside the DataSnap universe, yourself already gave the answer: send "JSON", receive "JSON" or XML, or any other thing!
There is no need for any other client application to know what goes on behind the data server, even if it is a Datasnap application/DLL.
The only attention you should have is this: What kind of data does the server deliver and what kind of data does the client expect to get from the server?
In the same way that many web-services (API) propagate their services properly documented, as in the case of public APIs (ex.: Facebook, Google, etc...), such services talk to, practically, which other services all through protocols duly negotiated between the parties. That is, if you need to receive or send some type of data to a server made in Delphi/CBuilder using DataSnap technology (based on DBX classes), you just need to determine how this data will travel between the parts.
DataSnap can seamlessly send and receive data using standard JSON, XML or its own style of sending and receiving data. There is not necessarily a tie to this technology.
If you need to send an "object" that only exists in your programming language, for example, you can encapsulate it in standard JSON, for example, which is much lighter than XML, and in the client application, you will unpack the received data, and, recreate the object you expected.
So, as in communication between "MODEM" -- one modulates, and the other demodulates.
----------------------------------------------
The higher the degree, the greater the respect given to the humblest!RAD 11.3
Representational State Transfer (REST) is a new architecture for Web Services that is having a significant impact on the industry. Most of the new public web services from large vendors (Google, Yahoo, Amazon, now also Microsoft) rely on REST as the technology for sharing and merging information from multiple sources. Delphi XE supports REST through the DataSnap infrastructure, support for WebBroker integration, and the creation of JavaScript proxies for methods exposed by web service.