Overview
The data model formally defines the format of the data input files. We differentiate between three types of data models:
- Controller-Centric Data Models: These data models are built around APIs exposed by controllers, such as APIC, Catalyst SD-WAN Manager or Meraki Dashboard. The model is typically closly aligned with the API structure and is used to configure the controller.
- Device-Centric Data Models: These data models are built around the configuration of individual network devices, such as Catalyst switches, routers or Nexus Switches. The model is typically aligned with the CLI device configuration structure and is used to configure the device.
- Solution-Centric Data Models: These data models are built around a specific solution, for example VXLAN EVPN, which can be deployed to multiple platforms and/or controllers. VXLAN EVPN is one such solution, which can be deployed to Catalyst switches, Nexus switches, with or without controllers.
Diagrams
Each specific part of the data model is visualized by a class diagram following these conventions:
- A
*
before an attribute denotes a mandatory attribute - After the attribute the data type follows (eg. Str, Int, Enum, Dict, List, etc.)
Relationships
The composition relationship is used for dictionary child elements.
The association relationship is used for list elements (1:n relationship).
The dependency relationship is used for other classes being referenced by one of its members.