A capability comprises attributes and commands for a driver. If a driver implements a capability, it tells the system what commands and attributes it supports to allow apps a standardized method of interacting with the device. The
Capability object provides a way to programatically insepect properties.
For more information on capabilities themselves, see: Driver Capability List,
Long: A unique id for the capability.
String: The name of the capability.
String: The reference for a capability. ie capability.refresh for the Refresh capability. This reference is used by App inputs to select devices.
>: A list of attributes supported by this capability.
List<Command>: A list of commands supported by this capability.