A YAML file for a device class has the following base structure:

Section Description
name Name of the device class
config Specific configurations for devices of this class
match Conditions under which devices are assigned to this class
identify Specifies how to read out identification properties
components Specifies how to read out information about different components of a device

name and match are mandatory and need to be defined. All other sections are optional and can be inherited by a parent device class. Further information on each section of a device class can be found on their documentation page.