This post will discuss common web services.
Rather than retrieve and parse HTML documents, web services are URLs designed specifically to hand you data back for your application.
XML and JSON are the two commonly used web services to format language going back and forth across the internet.
The problem is finding a way to send data that different programming languages can agree on. A Python dictionary, for example, is internally different from a Java hashmap, even though these data structures serve the same purpose. A “wire protocol” is how you send data structures in Python, that Java can agree on.
The need for this wire protocol spawned two new terms.
Serialize is the act of taking an internal data structure, and creating a wire format.
De-Serialize is the act of taking the wire format and creating an internal data structure in a different language.
The wire protocol allows us to create sets of applications that work in different languages. Below is an example of the XML wire format.
The next picture below is an example of the JSON wire format.
XML and JSON are the two most common wire formats used for applications to exchange data.