Data Formats: Reading and writing JSON – XML - YAML

CSUC - Consorci de Serveis Universitaris de Catalunya
CSUC - Consorci de Serveis Universitaris de CatalunyaPromotion & Marketing Coordinator um CSUC - Consorci de Serveis Universitaris de Catalunya
GN5-1
Public (PU)
Internet2 Technology Exchange, 19-09-2023
Minneapolis, USA
Data Formats: Reading and writing
JSON – XML - YAML
Maria Isabel Gandia Carriedo, CSUC/RedIRIS
network-eacademy@lists.geant.org
2 | GN5-1
Definitions
• Data modelling (YANG, TOSCA)
• Defines a representation of real-world
entities, their relationships and
structure
• Data formats (XML, JSON, YAML)
• Define how to encode the information
in a standardized way
• Protocols (NETCONF, RESTCONF, gRPC...)
• Define the operations, the requests
and responses of interactions
The real world
Gets represented as a
Data model
Is encoded in a
Data format
Protocol
Are used within a
3 | GN5-1
Data Serialisation Examples – Human Readable
XML
</>
JSON
{}
YAML
indentation
---
device:
type: router
vendor: MyOAVvendor
ports: 4
description: Access
{
“device”: {
“type”: “router”,
“vendor”: “MyOAVvendor”,
“ports”: 4,
“description”: “Access”
}
}
<network>
<device>
<type>router</type>
<vendor>MyOAVvendor</vendor>
<ports>4</ports>
<description>Access</description>
</device>
</network>
4 | GN5-1
Writing JSON, XML and YAML files
• You can write JSON, XML and YAML files with any text editor like vim or emacs
• If you like syntax highlighting, editors/IDEs such as Visual Studio Code,
Notepad++, Sublime.
5 | GN5-1
Challenges Achievements Conclusions Q&A
Some Free Tools to Help You Write, Validate and Convert Your Files
• You can check your syntax, format your files or convert them using useful free
tools:
• https://www.freeformatter.com
• https://www.liquid-technologies.com/online-xml-validator
• https://onlineyamltools.com/edit-yaml
• https://www.yamllint.com/
• https://www.json2yaml.com/
6 | GN5-1
Some Cases Where We Use JSON, YAML, XML
• Web API output (AWS, Google maps, Github, X,...)
• Jenkins
• ELK stack (Elasticsearch, Logstash, Kibana)
JSON:
• Jenkins
• NETCONF
• RESTCONF
XML:
• Ansible
• Kubernetes
• Docker
YAML:
- hosts: core
tasks:
- name: Describe router interfaces
ios_interface:
name: "{{ item.name }}"
description: "{{ item.description }}"
state: present
provider: "{{ credentials }}"
with_items:
- { name: Ethernet0/0, description: “One" }
- { name: Ethernet0/1, description: “Two” }
<copy-config>
<target>
<startup/>
</target>
<source>
<running/>
</source>
</copy-config>
7 | GN5-1
Challenges Achievements Conclusions Q&A
More Information in the Network Automation eAcademy
https://wiki.geant.org/display/NETDEV/OAV+Training+Portal
• Formats: YAML (30')
• Formats: XML (60’)
• Formats: JSON (45’)
www.geant.org
Thank You!
https://wiki.geant.org/display/NETDEV/NeA
network-eacademy@lists.geant.org
netdev@lists.geant.org
1 von 8

Más contenido relacionado

Más de CSUC - Consorci de Serveis Universitaris de Catalunya(20)

The Research Portal of Catalonia: Growing more (information) & more (services)The Research Portal of Catalonia: Growing more (information) & more (services)
The Research Portal of Catalonia: Growing more (information) & more (services)
CSUC - Consorci de Serveis Universitaris de Catalunya51 views
Facilitar la gestión, visibilidad y reutilización de los datos de investigaci...Facilitar la gestión, visibilidad y reutilización de los datos de investigaci...
Facilitar la gestión, visibilidad y reutilización de los datos de investigaci...
CSUC - Consorci de Serveis Universitaris de Catalunya51 views
La gestión de datos de investigación en las bibliotecas universitarias españolasLa gestión de datos de investigación en las bibliotecas universitarias españolas
La gestión de datos de investigación en las bibliotecas universitarias españolas
CSUC - Consorci de Serveis Universitaris de Catalunya103 views
Disposes de recursos il·limitats? Prioritza estratègicament els teus projecte...Disposes de recursos il·limitats? Prioritza estratègicament els teus projecte...
Disposes de recursos il·limitats? Prioritza estratègicament els teus projecte...
CSUC - Consorci de Serveis Universitaris de Catalunya16 views
Les persones i les seves capacitats en el nucli de la transformació digital. ...Les persones i les seves capacitats en el nucli de la transformació digital. ...
Les persones i les seves capacitats en el nucli de la transformació digital. ...
CSUC - Consorci de Serveis Universitaris de Catalunya13 views
Enginyeria Informàtica: una cursa de fonsEnginyeria Informàtica: una cursa de fons
Enginyeria Informàtica: una cursa de fons
CSUC - Consorci de Serveis Universitaris de Catalunya10 views
Transformació de rols i habilitats en un món ple d'IATransformació de rols i habilitats en un món ple d'IA
Transformació de rols i habilitats en un món ple d'IA
CSUC - Consorci de Serveis Universitaris de Catalunya13 views
Difusió del coneixement a l'Il·lustre Col·legi de l'Advocacia de BarcelonaDifusió del coneixement a l'Il·lustre Col·legi de l'Advocacia de Barcelona
Difusió del coneixement a l'Il·lustre Col·legi de l'Advocacia de Barcelona
CSUC - Consorci de Serveis Universitaris de Catalunya12 views
Fons de discos perforats de cartróFons de discos perforats de cartró
Fons de discos perforats de cartró
CSUC - Consorci de Serveis Universitaris de Catalunya11 views
Biblioteca Digital GencatBiblioteca Digital Gencat
Biblioteca Digital Gencat
CSUC - Consorci de Serveis Universitaris de Catalunya19 views
El fons Enrique Tierno Galván: recepció, tractament i difusióEl fons Enrique Tierno Galván: recepció, tractament i difusió
El fons Enrique Tierno Galván: recepció, tractament i difusió
CSUC - Consorci de Serveis Universitaris de Catalunya13 views
El CIDMA: més enllà dels espais físicsEl CIDMA: més enllà dels espais físics
El CIDMA: més enllà dels espais físics
CSUC - Consorci de Serveis Universitaris de Catalunya21 views
Els serveis del CSUC per a la comunitat CCUCEls serveis del CSUC per a la comunitat CCUC
Els serveis del CSUC per a la comunitat CCUC
CSUC - Consorci de Serveis Universitaris de Catalunya24 views
SIG-NOC Tools SurveySIG-NOC Tools Survey
SIG-NOC Tools Survey
CSUC - Consorci de Serveis Universitaris de Catalunya50 views
Orchestration, Automation and Virtualisation Maturity ModelOrchestration, Automation and Virtualisation Maturity Model
Orchestration, Automation and Virtualisation Maturity Model
CSUC - Consorci de Serveis Universitaris de Catalunya62 views
Open Science Area ActivitiesOpen Science Area Activities
Open Science Area Activities
CSUC - Consorci de Serveis Universitaris de Catalunya308 views
La información como bien público: reflexiones desde el espacio de ciencia abi...La información como bien público: reflexiones desde el espacio de ciencia abi...
La información como bien público: reflexiones desde el espacio de ciencia abi...
CSUC - Consorci de Serveis Universitaris de Catalunya18 views
Orchestration, Automation and Virtualisation Maturity ModelOrchestration, Automation and Virtualisation Maturity Model
Orchestration, Automation and Virtualisation Maturity Model
CSUC - Consorci de Serveis Universitaris de Catalunya79 views
 Network eAcademy Network eAcademy
Network eAcademy
CSUC - Consorci de Serveis Universitaris de Catalunya61 views
Your Networks are the key - Track: Teaching, Research, and CommunityYour Networks are the key - Track: Teaching, Research, and Community
Your Networks are the key - Track: Teaching, Research, and Community
CSUC - Consorci de Serveis Universitaris de Catalunya27 views

Último(20)

ChatGPT and AI for Web DevelopersChatGPT and AI for Web Developers
ChatGPT and AI for Web Developers
Maximiliano Firtman152 views
Java Platform Approach 1.0 - Picnic MeetupJava Platform Approach 1.0 - Picnic Meetup
Java Platform Approach 1.0 - Picnic Meetup
Rick Ossendrijver23 views
Web Dev - 1 PPT.pdfWeb Dev - 1 PPT.pdf
Web Dev - 1 PPT.pdf
gdsczhcet48 views
METHOD AND SYSTEM FOR PREDICTING OPTIMAL LOAD FOR WHICH THE YIELD IS MAXIMUM ...METHOD AND SYSTEM FOR PREDICTING OPTIMAL LOAD FOR WHICH THE YIELD IS MAXIMUM ...
METHOD AND SYSTEM FOR PREDICTING OPTIMAL LOAD FOR WHICH THE YIELD IS MAXIMUM ...
Prity Khastgir IPR Strategic India Patent Attorney Amplify Innovation23 views
[2023] Putting the R! in R&D.pdf[2023] Putting the R! in R&D.pdf
[2023] Putting the R! in R&D.pdf
Eleanor McHugh34 views

Data Formats: Reading and writing JSON – XML - YAML

  • 1. GN5-1 Public (PU) Internet2 Technology Exchange, 19-09-2023 Minneapolis, USA Data Formats: Reading and writing JSON – XML - YAML Maria Isabel Gandia Carriedo, CSUC/RedIRIS network-eacademy@lists.geant.org
  • 2. 2 | GN5-1 Definitions • Data modelling (YANG, TOSCA) • Defines a representation of real-world entities, their relationships and structure • Data formats (XML, JSON, YAML) • Define how to encode the information in a standardized way • Protocols (NETCONF, RESTCONF, gRPC...) • Define the operations, the requests and responses of interactions The real world Gets represented as a Data model Is encoded in a Data format Protocol Are used within a
  • 3. 3 | GN5-1 Data Serialisation Examples – Human Readable XML </> JSON {} YAML indentation --- device: type: router vendor: MyOAVvendor ports: 4 description: Access { “device”: { “type”: “router”, “vendor”: “MyOAVvendor”, “ports”: 4, “description”: “Access” } } <network> <device> <type>router</type> <vendor>MyOAVvendor</vendor> <ports>4</ports> <description>Access</description> </device> </network>
  • 4. 4 | GN5-1 Writing JSON, XML and YAML files • You can write JSON, XML and YAML files with any text editor like vim or emacs • If you like syntax highlighting, editors/IDEs such as Visual Studio Code, Notepad++, Sublime.
  • 5. 5 | GN5-1 Challenges Achievements Conclusions Q&A Some Free Tools to Help You Write, Validate and Convert Your Files • You can check your syntax, format your files or convert them using useful free tools: • https://www.freeformatter.com • https://www.liquid-technologies.com/online-xml-validator • https://onlineyamltools.com/edit-yaml • https://www.yamllint.com/ • https://www.json2yaml.com/
  • 6. 6 | GN5-1 Some Cases Where We Use JSON, YAML, XML • Web API output (AWS, Google maps, Github, X,...) • Jenkins • ELK stack (Elasticsearch, Logstash, Kibana) JSON: • Jenkins • NETCONF • RESTCONF XML: • Ansible • Kubernetes • Docker YAML: - hosts: core tasks: - name: Describe router interfaces ios_interface: name: "{{ item.name }}" description: "{{ item.description }}" state: present provider: "{{ credentials }}" with_items: - { name: Ethernet0/0, description: “One" } - { name: Ethernet0/1, description: “Two” } <copy-config> <target> <startup/> </target> <source> <running/> </source> </copy-config>
  • 7. 7 | GN5-1 Challenges Achievements Conclusions Q&A More Information in the Network Automation eAcademy https://wiki.geant.org/display/NETDEV/OAV+Training+Portal • Formats: YAML (30') • Formats: XML (60’) • Formats: JSON (45’)