Since the beginning of the IT and Networking CLI era in general, the only existent Data Format that was used so far was the human inventor’s language which, most of the cases, was English language.
Historically speaking since the beginning of the times, the Data Format has been used for inter-exchange structured data between the Network Operator and Infrastructure/Applications (human-to-machine communication).
With the emerging of DevNet & DevOps, the Data Format has been taking the same role but evolving in the way that the structured inter-exchange Infrastructure/Applications flow has been pushed more into machine-to-machine communication.
There are many different data formats used for your Applications to communicate with a wide range of APIs available on the Internet. Each format represents syntax coding data that could be read by another machine but in such a way that is easy to understand for humans, too.
For instance, if you want to use an API to configure Network Devices, you have to check which data types are supported by that API.
Then, you can start writing a request to be handled by that API that has an effect on your Network Device configuration. An API server comprehends your written code and translates it into instructions that are suitable for your Network Device (i.e. router) to process and create an action.
In the DevNet world, you will most likely encounter these common data formats:
• YAML Ain’t Markup Language (YAML)
• eXtensible Markup Language (XML)