The system determines the list of template names that apply to a device or component. For device components, the list is defined by the meta type of the component (for example, FileSystem, CPU, or HardDisk). For devices, the list is defined by the zDeviceTemplates configuration property.
After defining the list, the system locates templates that match the names on the list. For each name, it searches the device and then searches the device class hierarchy. Zenoss Core uses the lowest template in the hierarchy that it can locate with the correct name, ignoring others of the same name that might exist further up the device class hierarchy.