diff --git a/data_model/clusters/ACL-Cluster.xml b/data_model/1.3/clusters/ACL-Cluster.xml
similarity index 100%
rename from data_model/clusters/ACL-Cluster.xml
rename to data_model/1.3/clusters/ACL-Cluster.xml
diff --git a/data_model/clusters/AccountLogin.xml b/data_model/1.3/clusters/AccountLogin.xml
similarity index 100%
rename from data_model/clusters/AccountLogin.xml
rename to data_model/1.3/clusters/AccountLogin.xml
diff --git a/data_model/clusters/AdminCommissioningCluster.xml b/data_model/1.3/clusters/AdminCommissioningCluster.xml
similarity index 100%
rename from data_model/clusters/AdminCommissioningCluster.xml
rename to data_model/1.3/clusters/AdminCommissioningCluster.xml
diff --git a/data_model/clusters/AirQuality.xml b/data_model/1.3/clusters/AirQuality.xml
similarity index 100%
rename from data_model/clusters/AirQuality.xml
rename to data_model/1.3/clusters/AirQuality.xml
diff --git a/data_model/clusters/AlarmBase.xml b/data_model/1.3/clusters/AlarmBase.xml
similarity index 100%
rename from data_model/clusters/AlarmBase.xml
rename to data_model/1.3/clusters/AlarmBase.xml
diff --git a/data_model/clusters/ApplicationBasic.xml b/data_model/1.3/clusters/ApplicationBasic.xml
similarity index 100%
rename from data_model/clusters/ApplicationBasic.xml
rename to data_model/1.3/clusters/ApplicationBasic.xml
diff --git a/data_model/clusters/ApplicationLauncher.xml b/data_model/1.3/clusters/ApplicationLauncher.xml
similarity index 100%
rename from data_model/clusters/ApplicationLauncher.xml
rename to data_model/1.3/clusters/ApplicationLauncher.xml
diff --git a/data_model/clusters/AudioOutput.xml b/data_model/1.3/clusters/AudioOutput.xml
similarity index 100%
rename from data_model/clusters/AudioOutput.xml
rename to data_model/1.3/clusters/AudioOutput.xml
diff --git a/data_model/clusters/BallastConfiguration.xml b/data_model/1.3/clusters/BallastConfiguration.xml
similarity index 100%
rename from data_model/clusters/BallastConfiguration.xml
rename to data_model/1.3/clusters/BallastConfiguration.xml
diff --git a/data_model/clusters/BasicInformationCluster.xml b/data_model/1.3/clusters/BasicInformationCluster.xml
similarity index 100%
rename from data_model/clusters/BasicInformationCluster.xml
rename to data_model/1.3/clusters/BasicInformationCluster.xml
diff --git a/data_model/clusters/Binding-Cluster.xml b/data_model/1.3/clusters/Binding-Cluster.xml
similarity index 100%
rename from data_model/clusters/Binding-Cluster.xml
rename to data_model/1.3/clusters/Binding-Cluster.xml
diff --git a/data_model/clusters/BooleanState.xml b/data_model/1.3/clusters/BooleanState.xml
similarity index 100%
rename from data_model/clusters/BooleanState.xml
rename to data_model/1.3/clusters/BooleanState.xml
diff --git a/data_model/clusters/BooleanStateConfiguration.xml b/data_model/1.3/clusters/BooleanStateConfiguration.xml
similarity index 100%
rename from data_model/clusters/BooleanStateConfiguration.xml
rename to data_model/1.3/clusters/BooleanStateConfiguration.xml
diff --git a/data_model/clusters/Channel.xml b/data_model/1.3/clusters/Channel.xml
similarity index 100%
rename from data_model/clusters/Channel.xml
rename to data_model/1.3/clusters/Channel.xml
diff --git a/data_model/clusters/ColorControl.xml b/data_model/1.3/clusters/ColorControl.xml
similarity index 100%
rename from data_model/clusters/ColorControl.xml
rename to data_model/1.3/clusters/ColorControl.xml
diff --git a/data_model/clusters/ConcentrationMeasurement.xml b/data_model/1.3/clusters/ConcentrationMeasurement.xml
similarity index 100%
rename from data_model/clusters/ConcentrationMeasurement.xml
rename to data_model/1.3/clusters/ConcentrationMeasurement.xml
diff --git a/data_model/clusters/ContentAppObserver.xml b/data_model/1.3/clusters/ContentAppObserver.xml
similarity index 100%
rename from data_model/clusters/ContentAppObserver.xml
rename to data_model/1.3/clusters/ContentAppObserver.xml
diff --git a/data_model/clusters/ContentControl.xml b/data_model/1.3/clusters/ContentControl.xml
similarity index 100%
rename from data_model/clusters/ContentControl.xml
rename to data_model/1.3/clusters/ContentControl.xml
diff --git a/data_model/clusters/ContentLauncher.xml b/data_model/1.3/clusters/ContentLauncher.xml
similarity index 100%
rename from data_model/clusters/ContentLauncher.xml
rename to data_model/1.3/clusters/ContentLauncher.xml
diff --git a/data_model/clusters/Descriptor-Cluster.xml b/data_model/1.3/clusters/Descriptor-Cluster.xml
similarity index 100%
rename from data_model/clusters/Descriptor-Cluster.xml
rename to data_model/1.3/clusters/Descriptor-Cluster.xml
diff --git a/data_model/clusters/DeviceEnergyManagement.xml b/data_model/1.3/clusters/DeviceEnergyManagement.xml
similarity index 100%
rename from data_model/clusters/DeviceEnergyManagement.xml
rename to data_model/1.3/clusters/DeviceEnergyManagement.xml
diff --git a/data_model/clusters/DiagnosticLogsCluster.xml b/data_model/1.3/clusters/DiagnosticLogsCluster.xml
similarity index 100%
rename from data_model/clusters/DiagnosticLogsCluster.xml
rename to data_model/1.3/clusters/DiagnosticLogsCluster.xml
diff --git a/data_model/clusters/DiagnosticsEthernet.xml b/data_model/1.3/clusters/DiagnosticsEthernet.xml
similarity index 100%
rename from data_model/clusters/DiagnosticsEthernet.xml
rename to data_model/1.3/clusters/DiagnosticsEthernet.xml
diff --git a/data_model/clusters/DiagnosticsGeneral.xml b/data_model/1.3/clusters/DiagnosticsGeneral.xml
similarity index 100%
rename from data_model/clusters/DiagnosticsGeneral.xml
rename to data_model/1.3/clusters/DiagnosticsGeneral.xml
diff --git a/data_model/clusters/DiagnosticsSoftware.xml b/data_model/1.3/clusters/DiagnosticsSoftware.xml
similarity index 100%
rename from data_model/clusters/DiagnosticsSoftware.xml
rename to data_model/1.3/clusters/DiagnosticsSoftware.xml
diff --git a/data_model/clusters/DiagnosticsThread.xml b/data_model/1.3/clusters/DiagnosticsThread.xml
similarity index 100%
rename from data_model/clusters/DiagnosticsThread.xml
rename to data_model/1.3/clusters/DiagnosticsThread.xml
diff --git a/data_model/clusters/DiagnosticsWiFi.xml b/data_model/1.3/clusters/DiagnosticsWiFi.xml
similarity index 100%
rename from data_model/clusters/DiagnosticsWiFi.xml
rename to data_model/1.3/clusters/DiagnosticsWiFi.xml
diff --git a/data_model/clusters/DishwasherAlarm.xml b/data_model/1.3/clusters/DishwasherAlarm.xml
similarity index 100%
rename from data_model/clusters/DishwasherAlarm.xml
rename to data_model/1.3/clusters/DishwasherAlarm.xml
diff --git a/data_model/clusters/DoorLock.xml b/data_model/1.3/clusters/DoorLock.xml
similarity index 100%
rename from data_model/clusters/DoorLock.xml
rename to data_model/1.3/clusters/DoorLock.xml
diff --git a/data_model/clusters/ElectricalEnergyMeasurement.xml b/data_model/1.3/clusters/ElectricalEnergyMeasurement.xml
similarity index 100%
rename from data_model/clusters/ElectricalEnergyMeasurement.xml
rename to data_model/1.3/clusters/ElectricalEnergyMeasurement.xml
diff --git a/data_model/clusters/ElectricalPowerMeasurement.xml b/data_model/1.3/clusters/ElectricalPowerMeasurement.xml
similarity index 100%
rename from data_model/clusters/ElectricalPowerMeasurement.xml
rename to data_model/1.3/clusters/ElectricalPowerMeasurement.xml
diff --git a/data_model/clusters/EnergyEVSE.xml b/data_model/1.3/clusters/EnergyEVSE.xml
similarity index 100%
rename from data_model/clusters/EnergyEVSE.xml
rename to data_model/1.3/clusters/EnergyEVSE.xml
diff --git a/data_model/clusters/EnergyPreference.xml b/data_model/1.3/clusters/EnergyPreference.xml
similarity index 100%
rename from data_model/clusters/EnergyPreference.xml
rename to data_model/1.3/clusters/EnergyPreference.xml
diff --git a/data_model/clusters/FanControl.xml b/data_model/1.3/clusters/FanControl.xml
similarity index 100%
rename from data_model/clusters/FanControl.xml
rename to data_model/1.3/clusters/FanControl.xml
diff --git a/data_model/clusters/FlowMeasurement.xml b/data_model/1.3/clusters/FlowMeasurement.xml
similarity index 100%
rename from data_model/clusters/FlowMeasurement.xml
rename to data_model/1.3/clusters/FlowMeasurement.xml
diff --git a/data_model/clusters/GeneralCommissioningCluster.xml b/data_model/1.3/clusters/GeneralCommissioningCluster.xml
similarity index 100%
rename from data_model/clusters/GeneralCommissioningCluster.xml
rename to data_model/1.3/clusters/GeneralCommissioningCluster.xml
diff --git a/data_model/clusters/Group-Key-Management-Cluster.xml b/data_model/1.3/clusters/Group-Key-Management-Cluster.xml
similarity index 100%
rename from data_model/clusters/Group-Key-Management-Cluster.xml
rename to data_model/1.3/clusters/Group-Key-Management-Cluster.xml
diff --git a/data_model/clusters/Groups.xml b/data_model/1.3/clusters/Groups.xml
similarity index 100%
rename from data_model/clusters/Groups.xml
rename to data_model/1.3/clusters/Groups.xml
diff --git a/data_model/clusters/ICDManagement.xml b/data_model/1.3/clusters/ICDManagement.xml
similarity index 100%
rename from data_model/clusters/ICDManagement.xml
rename to data_model/1.3/clusters/ICDManagement.xml
diff --git a/data_model/clusters/Identify.xml b/data_model/1.3/clusters/Identify.xml
similarity index 100%
rename from data_model/clusters/Identify.xml
rename to data_model/1.3/clusters/Identify.xml
diff --git a/data_model/clusters/IlluminanceMeasurement.xml b/data_model/1.3/clusters/IlluminanceMeasurement.xml
similarity index 100%
rename from data_model/clusters/IlluminanceMeasurement.xml
rename to data_model/1.3/clusters/IlluminanceMeasurement.xml
diff --git a/data_model/clusters/KeypadInput.xml b/data_model/1.3/clusters/KeypadInput.xml
similarity index 100%
rename from data_model/clusters/KeypadInput.xml
rename to data_model/1.3/clusters/KeypadInput.xml
diff --git a/data_model/clusters/Label-Cluster-FixedLabelCluster.xml b/data_model/1.3/clusters/Label-Cluster-FixedLabelCluster.xml
similarity index 100%
rename from data_model/clusters/Label-Cluster-FixedLabelCluster.xml
rename to data_model/1.3/clusters/Label-Cluster-FixedLabelCluster.xml
diff --git a/data_model/clusters/Label-Cluster-LabelCluster.xml b/data_model/1.3/clusters/Label-Cluster-LabelCluster.xml
similarity index 100%
rename from data_model/clusters/Label-Cluster-LabelCluster.xml
rename to data_model/1.3/clusters/Label-Cluster-LabelCluster.xml
diff --git a/data_model/clusters/Label-Cluster-UserLabelCluster.xml b/data_model/1.3/clusters/Label-Cluster-UserLabelCluster.xml
similarity index 100%
rename from data_model/clusters/Label-Cluster-UserLabelCluster.xml
rename to data_model/1.3/clusters/Label-Cluster-UserLabelCluster.xml
diff --git a/data_model/clusters/LaundryDryerControls.xml b/data_model/1.3/clusters/LaundryDryerControls.xml
similarity index 100%
rename from data_model/clusters/LaundryDryerControls.xml
rename to data_model/1.3/clusters/LaundryDryerControls.xml
diff --git a/data_model/clusters/LaundryWasherControls.xml b/data_model/1.3/clusters/LaundryWasherControls.xml
similarity index 100%
rename from data_model/clusters/LaundryWasherControls.xml
rename to data_model/1.3/clusters/LaundryWasherControls.xml
diff --git a/data_model/clusters/LevelControl.xml b/data_model/1.3/clusters/LevelControl.xml
similarity index 100%
rename from data_model/clusters/LevelControl.xml
rename to data_model/1.3/clusters/LevelControl.xml
diff --git a/data_model/clusters/LocalizationConfiguration.xml b/data_model/1.3/clusters/LocalizationConfiguration.xml
similarity index 100%
rename from data_model/clusters/LocalizationConfiguration.xml
rename to data_model/1.3/clusters/LocalizationConfiguration.xml
diff --git a/data_model/clusters/LocalizationTimeFormat.xml b/data_model/1.3/clusters/LocalizationTimeFormat.xml
similarity index 100%
rename from data_model/clusters/LocalizationTimeFormat.xml
rename to data_model/1.3/clusters/LocalizationTimeFormat.xml
diff --git a/data_model/clusters/LocalizationUnit.xml b/data_model/1.3/clusters/LocalizationUnit.xml
similarity index 100%
rename from data_model/clusters/LocalizationUnit.xml
rename to data_model/1.3/clusters/LocalizationUnit.xml
diff --git a/data_model/clusters/LowPower.xml b/data_model/1.3/clusters/LowPower.xml
similarity index 100%
rename from data_model/clusters/LowPower.xml
rename to data_model/1.3/clusters/LowPower.xml
diff --git a/data_model/clusters/MediaInput.xml b/data_model/1.3/clusters/MediaInput.xml
similarity index 100%
rename from data_model/clusters/MediaInput.xml
rename to data_model/1.3/clusters/MediaInput.xml
diff --git a/data_model/clusters/MediaPlayback.xml b/data_model/1.3/clusters/MediaPlayback.xml
similarity index 100%
rename from data_model/clusters/MediaPlayback.xml
rename to data_model/1.3/clusters/MediaPlayback.xml
diff --git a/data_model/clusters/Messages.xml b/data_model/1.3/clusters/Messages.xml
similarity index 100%
rename from data_model/clusters/Messages.xml
rename to data_model/1.3/clusters/Messages.xml
diff --git a/data_model/clusters/MicrowaveOvenControl.xml b/data_model/1.3/clusters/MicrowaveOvenControl.xml
similarity index 100%
rename from data_model/clusters/MicrowaveOvenControl.xml
rename to data_model/1.3/clusters/MicrowaveOvenControl.xml
diff --git a/data_model/clusters/ModeBase.xml b/data_model/1.3/clusters/ModeBase.xml
similarity index 100%
rename from data_model/clusters/ModeBase.xml
rename to data_model/1.3/clusters/ModeBase.xml
diff --git a/data_model/clusters/ModeSelect.xml b/data_model/1.3/clusters/ModeSelect.xml
similarity index 100%
rename from data_model/clusters/ModeSelect.xml
rename to data_model/1.3/clusters/ModeSelect.xml
diff --git a/data_model/clusters/Mode_DeviceEnergyManagement.xml b/data_model/1.3/clusters/Mode_DeviceEnergyManagement.xml
similarity index 100%
rename from data_model/clusters/Mode_DeviceEnergyManagement.xml
rename to data_model/1.3/clusters/Mode_DeviceEnergyManagement.xml
diff --git a/data_model/clusters/Mode_Dishwasher.xml b/data_model/1.3/clusters/Mode_Dishwasher.xml
similarity index 100%
rename from data_model/clusters/Mode_Dishwasher.xml
rename to data_model/1.3/clusters/Mode_Dishwasher.xml
diff --git a/data_model/clusters/Mode_EVSE.xml b/data_model/1.3/clusters/Mode_EVSE.xml
similarity index 100%
rename from data_model/clusters/Mode_EVSE.xml
rename to data_model/1.3/clusters/Mode_EVSE.xml
diff --git a/data_model/clusters/Mode_LaundryWasher.xml b/data_model/1.3/clusters/Mode_LaundryWasher.xml
similarity index 100%
rename from data_model/clusters/Mode_LaundryWasher.xml
rename to data_model/1.3/clusters/Mode_LaundryWasher.xml
diff --git a/data_model/clusters/Mode_MicrowaveOven.xml b/data_model/1.3/clusters/Mode_MicrowaveOven.xml
similarity index 100%
rename from data_model/clusters/Mode_MicrowaveOven.xml
rename to data_model/1.3/clusters/Mode_MicrowaveOven.xml
diff --git a/data_model/clusters/Mode_Oven.xml b/data_model/1.3/clusters/Mode_Oven.xml
similarity index 100%
rename from data_model/clusters/Mode_Oven.xml
rename to data_model/1.3/clusters/Mode_Oven.xml
diff --git a/data_model/clusters/Mode_RVCClean.xml b/data_model/1.3/clusters/Mode_RVCClean.xml
similarity index 100%
rename from data_model/clusters/Mode_RVCClean.xml
rename to data_model/1.3/clusters/Mode_RVCClean.xml
diff --git a/data_model/clusters/Mode_RVCRun.xml b/data_model/1.3/clusters/Mode_RVCRun.xml
similarity index 100%
rename from data_model/clusters/Mode_RVCRun.xml
rename to data_model/1.3/clusters/Mode_RVCRun.xml
diff --git a/data_model/clusters/Mode_Refrigerator.xml b/data_model/1.3/clusters/Mode_Refrigerator.xml
similarity index 100%
rename from data_model/clusters/Mode_Refrigerator.xml
rename to data_model/1.3/clusters/Mode_Refrigerator.xml
diff --git a/data_model/clusters/NetworkCommissioningCluster.xml b/data_model/1.3/clusters/NetworkCommissioningCluster.xml
similarity index 100%
rename from data_model/clusters/NetworkCommissioningCluster.xml
rename to data_model/1.3/clusters/NetworkCommissioningCluster.xml
diff --git a/data_model/clusters/OTAProvider.xml b/data_model/1.3/clusters/OTAProvider.xml
similarity index 100%
rename from data_model/clusters/OTAProvider.xml
rename to data_model/1.3/clusters/OTAProvider.xml
diff --git a/data_model/clusters/OTARequestor.xml b/data_model/1.3/clusters/OTARequestor.xml
similarity index 100%
rename from data_model/clusters/OTARequestor.xml
rename to data_model/1.3/clusters/OTARequestor.xml
diff --git a/data_model/clusters/OccupancySensing.xml b/data_model/1.3/clusters/OccupancySensing.xml
similarity index 100%
rename from data_model/clusters/OccupancySensing.xml
rename to data_model/1.3/clusters/OccupancySensing.xml
diff --git a/data_model/clusters/OnOff.xml b/data_model/1.3/clusters/OnOff.xml
similarity index 100%
rename from data_model/clusters/OnOff.xml
rename to data_model/1.3/clusters/OnOff.xml
diff --git a/data_model/clusters/OperationalCredentialCluster.xml b/data_model/1.3/clusters/OperationalCredentialCluster.xml
similarity index 100%
rename from data_model/clusters/OperationalCredentialCluster.xml
rename to data_model/1.3/clusters/OperationalCredentialCluster.xml
diff --git a/data_model/clusters/OperationalState.xml b/data_model/1.3/clusters/OperationalState.xml
similarity index 100%
rename from data_model/clusters/OperationalState.xml
rename to data_model/1.3/clusters/OperationalState.xml
diff --git a/data_model/clusters/OperationalState_Oven.xml b/data_model/1.3/clusters/OperationalState_Oven.xml
similarity index 100%
rename from data_model/clusters/OperationalState_Oven.xml
rename to data_model/1.3/clusters/OperationalState_Oven.xml
diff --git a/data_model/clusters/OperationalState_RVC.xml b/data_model/1.3/clusters/OperationalState_RVC.xml
similarity index 100%
rename from data_model/clusters/OperationalState_RVC.xml
rename to data_model/1.3/clusters/OperationalState_RVC.xml
diff --git a/data_model/clusters/PowerSourceCluster.xml b/data_model/1.3/clusters/PowerSourceCluster.xml
similarity index 100%
rename from data_model/clusters/PowerSourceCluster.xml
rename to data_model/1.3/clusters/PowerSourceCluster.xml
diff --git a/data_model/clusters/PowerSourceConfigurationCluster.xml b/data_model/1.3/clusters/PowerSourceConfigurationCluster.xml
similarity index 100%
rename from data_model/clusters/PowerSourceConfigurationCluster.xml
rename to data_model/1.3/clusters/PowerSourceConfigurationCluster.xml
diff --git a/data_model/clusters/PowerTopology.xml b/data_model/1.3/clusters/PowerTopology.xml
similarity index 100%
rename from data_model/clusters/PowerTopology.xml
rename to data_model/1.3/clusters/PowerTopology.xml
diff --git a/data_model/clusters/PressureMeasurement.xml b/data_model/1.3/clusters/PressureMeasurement.xml
similarity index 100%
rename from data_model/clusters/PressureMeasurement.xml
rename to data_model/1.3/clusters/PressureMeasurement.xml
diff --git a/data_model/clusters/ProxyConfiguration-Cluster.xml b/data_model/1.3/clusters/ProxyConfiguration-Cluster.xml
similarity index 100%
rename from data_model/clusters/ProxyConfiguration-Cluster.xml
rename to data_model/1.3/clusters/ProxyConfiguration-Cluster.xml
diff --git a/data_model/clusters/ProxyDiscovery-Cluster.xml b/data_model/1.3/clusters/ProxyDiscovery-Cluster.xml
similarity index 100%
rename from data_model/clusters/ProxyDiscovery-Cluster.xml
rename to data_model/1.3/clusters/ProxyDiscovery-Cluster.xml
diff --git a/data_model/clusters/PumpConfigurationControl.xml b/data_model/1.3/clusters/PumpConfigurationControl.xml
similarity index 100%
rename from data_model/clusters/PumpConfigurationControl.xml
rename to data_model/1.3/clusters/PumpConfigurationControl.xml
diff --git a/data_model/clusters/RefrigeratorAlarm.xml b/data_model/1.3/clusters/RefrigeratorAlarm.xml
similarity index 100%
rename from data_model/clusters/RefrigeratorAlarm.xml
rename to data_model/1.3/clusters/RefrigeratorAlarm.xml
diff --git a/data_model/clusters/ResourceMonitoring.xml b/data_model/1.3/clusters/ResourceMonitoring.xml
similarity index 100%
rename from data_model/clusters/ResourceMonitoring.xml
rename to data_model/1.3/clusters/ResourceMonitoring.xml
diff --git a/data_model/clusters/Scenes.xml b/data_model/1.3/clusters/Scenes.xml
similarity index 100%
rename from data_model/clusters/Scenes.xml
rename to data_model/1.3/clusters/Scenes.xml
diff --git a/data_model/clusters/SmokeCOAlarm.xml b/data_model/1.3/clusters/SmokeCOAlarm.xml
similarity index 100%
rename from data_model/clusters/SmokeCOAlarm.xml
rename to data_model/1.3/clusters/SmokeCOAlarm.xml
diff --git a/data_model/clusters/Switch.xml b/data_model/1.3/clusters/Switch.xml
similarity index 100%
rename from data_model/clusters/Switch.xml
rename to data_model/1.3/clusters/Switch.xml
diff --git a/data_model/clusters/TargetNavigator.xml b/data_model/1.3/clusters/TargetNavigator.xml
similarity index 100%
rename from data_model/clusters/TargetNavigator.xml
rename to data_model/1.3/clusters/TargetNavigator.xml
diff --git a/data_model/clusters/TemperatureControl.xml b/data_model/1.3/clusters/TemperatureControl.xml
similarity index 100%
rename from data_model/clusters/TemperatureControl.xml
rename to data_model/1.3/clusters/TemperatureControl.xml
diff --git a/data_model/clusters/TemperatureMeasurement.xml b/data_model/1.3/clusters/TemperatureMeasurement.xml
similarity index 100%
rename from data_model/clusters/TemperatureMeasurement.xml
rename to data_model/1.3/clusters/TemperatureMeasurement.xml
diff --git a/data_model/clusters/Thermostat.xml b/data_model/1.3/clusters/Thermostat.xml
similarity index 100%
rename from data_model/clusters/Thermostat.xml
rename to data_model/1.3/clusters/Thermostat.xml
diff --git a/data_model/clusters/ThermostatUserInterfaceConfiguration.xml b/data_model/1.3/clusters/ThermostatUserInterfaceConfiguration.xml
similarity index 100%
rename from data_model/clusters/ThermostatUserInterfaceConfiguration.xml
rename to data_model/1.3/clusters/ThermostatUserInterfaceConfiguration.xml
diff --git a/data_model/clusters/TimeSync.xml b/data_model/1.3/clusters/TimeSync.xml
similarity index 100%
rename from data_model/clusters/TimeSync.xml
rename to data_model/1.3/clusters/TimeSync.xml
diff --git a/data_model/clusters/ValidProxies-Cluster.xml b/data_model/1.3/clusters/ValidProxies-Cluster.xml
similarity index 100%
rename from data_model/clusters/ValidProxies-Cluster.xml
rename to data_model/1.3/clusters/ValidProxies-Cluster.xml
diff --git a/data_model/clusters/ValveConfigurationControl.xml b/data_model/1.3/clusters/ValveConfigurationControl.xml
similarity index 100%
rename from data_model/clusters/ValveConfigurationControl.xml
rename to data_model/1.3/clusters/ValveConfigurationControl.xml
diff --git a/data_model/clusters/WakeOnLAN.xml b/data_model/1.3/clusters/WakeOnLAN.xml
similarity index 100%
rename from data_model/clusters/WakeOnLAN.xml
rename to data_model/1.3/clusters/WakeOnLAN.xml
diff --git a/data_model/clusters/WaterContentMeasurement.xml b/data_model/1.3/clusters/WaterContentMeasurement.xml
similarity index 100%
rename from data_model/clusters/WaterContentMeasurement.xml
rename to data_model/1.3/clusters/WaterContentMeasurement.xml
diff --git a/data_model/clusters/WindowCovering.xml b/data_model/1.3/clusters/WindowCovering.xml
similarity index 100%
rename from data_model/clusters/WindowCovering.xml
rename to data_model/1.3/clusters/WindowCovering.xml
diff --git a/data_model/clusters/bridge-clusters-ActionsCluster.xml b/data_model/1.3/clusters/bridge-clusters-ActionsCluster.xml
similarity index 100%
rename from data_model/clusters/bridge-clusters-ActionsCluster.xml
rename to data_model/1.3/clusters/bridge-clusters-ActionsCluster.xml
diff --git a/data_model/clusters/bridge-clusters-BridgedDeviceBasicInformationCluster.xml b/data_model/1.3/clusters/bridge-clusters-BridgedDeviceBasicInformationCluster.xml
similarity index 100%
rename from data_model/clusters/bridge-clusters-BridgedDeviceBasicInformationCluster.xml
rename to data_model/1.3/clusters/bridge-clusters-BridgedDeviceBasicInformationCluster.xml
diff --git a/data_model/clusters/cluster_ids.json b/data_model/1.3/clusters/cluster_ids.json
similarity index 100%
rename from data_model/clusters/cluster_ids.json
rename to data_model/1.3/clusters/cluster_ids.json
diff --git a/data_model/device_types/Aggregator.xml b/data_model/1.3/device_types/Aggregator.xml
similarity index 100%
rename from data_model/device_types/Aggregator.xml
rename to data_model/1.3/device_types/Aggregator.xml
diff --git a/data_model/device_types/AirPurifier.xml b/data_model/1.3/device_types/AirPurifier.xml
similarity index 100%
rename from data_model/device_types/AirPurifier.xml
rename to data_model/1.3/device_types/AirPurifier.xml
diff --git a/data_model/device_types/AirQualitySensor.xml b/data_model/1.3/device_types/AirQualitySensor.xml
similarity index 100%
rename from data_model/device_types/AirQualitySensor.xml
rename to data_model/1.3/device_types/AirQualitySensor.xml
diff --git a/data_model/device_types/BaseDeviceType.xml b/data_model/1.3/device_types/BaseDeviceType.xml
similarity index 100%
rename from data_model/device_types/BaseDeviceType.xml
rename to data_model/1.3/device_types/BaseDeviceType.xml
diff --git a/data_model/device_types/BasicVideoPlayer.xml b/data_model/1.3/device_types/BasicVideoPlayer.xml
similarity index 100%
rename from data_model/device_types/BasicVideoPlayer.xml
rename to data_model/1.3/device_types/BasicVideoPlayer.xml
diff --git a/data_model/device_types/BridgedNode.xml b/data_model/1.3/device_types/BridgedNode.xml
similarity index 100%
rename from data_model/device_types/BridgedNode.xml
rename to data_model/1.3/device_types/BridgedNode.xml
diff --git a/data_model/device_types/CastingVideoClient.xml b/data_model/1.3/device_types/CastingVideoClient.xml
similarity index 100%
rename from data_model/device_types/CastingVideoClient.xml
rename to data_model/1.3/device_types/CastingVideoClient.xml
diff --git a/data_model/device_types/CastingVideoPlayer.xml b/data_model/1.3/device_types/CastingVideoPlayer.xml
similarity index 100%
rename from data_model/device_types/CastingVideoPlayer.xml
rename to data_model/1.3/device_types/CastingVideoPlayer.xml
diff --git a/data_model/device_types/ColorDimmerSwitch.xml b/data_model/1.3/device_types/ColorDimmerSwitch.xml
similarity index 100%
rename from data_model/device_types/ColorDimmerSwitch.xml
rename to data_model/1.3/device_types/ColorDimmerSwitch.xml
diff --git a/data_model/device_types/ColorTemperatureLight.xml b/data_model/1.3/device_types/ColorTemperatureLight.xml
similarity index 100%
rename from data_model/device_types/ColorTemperatureLight.xml
rename to data_model/1.3/device_types/ColorTemperatureLight.xml
diff --git a/data_model/device_types/ContactSensor.xml b/data_model/1.3/device_types/ContactSensor.xml
similarity index 100%
rename from data_model/device_types/ContactSensor.xml
rename to data_model/1.3/device_types/ContactSensor.xml
diff --git a/data_model/device_types/ContentApp.xml b/data_model/1.3/device_types/ContentApp.xml
similarity index 100%
rename from data_model/device_types/ContentApp.xml
rename to data_model/1.3/device_types/ContentApp.xml
diff --git a/data_model/device_types/ControlBridge.xml b/data_model/1.3/device_types/ControlBridge.xml
similarity index 100%
rename from data_model/device_types/ControlBridge.xml
rename to data_model/1.3/device_types/ControlBridge.xml
diff --git a/data_model/device_types/CookSurface.xml b/data_model/1.3/device_types/CookSurface.xml
similarity index 100%
rename from data_model/device_types/CookSurface.xml
rename to data_model/1.3/device_types/CookSurface.xml
diff --git a/data_model/device_types/Cooktop.xml b/data_model/1.3/device_types/Cooktop.xml
similarity index 100%
rename from data_model/device_types/Cooktop.xml
rename to data_model/1.3/device_types/Cooktop.xml
diff --git a/data_model/device_types/DeviceEnergyManagement.xml b/data_model/1.3/device_types/DeviceEnergyManagement.xml
similarity index 100%
rename from data_model/device_types/DeviceEnergyManagement.xml
rename to data_model/1.3/device_types/DeviceEnergyManagement.xml
diff --git a/data_model/device_types/DimmableLight.xml b/data_model/1.3/device_types/DimmableLight.xml
similarity index 100%
rename from data_model/device_types/DimmableLight.xml
rename to data_model/1.3/device_types/DimmableLight.xml
diff --git a/data_model/device_types/DimmablePlug-InUnit.xml b/data_model/1.3/device_types/DimmablePlug-InUnit.xml
similarity index 100%
rename from data_model/device_types/DimmablePlug-InUnit.xml
rename to data_model/1.3/device_types/DimmablePlug-InUnit.xml
diff --git a/data_model/device_types/DimmerSwitch.xml b/data_model/1.3/device_types/DimmerSwitch.xml
similarity index 100%
rename from data_model/device_types/DimmerSwitch.xml
rename to data_model/1.3/device_types/DimmerSwitch.xml
diff --git a/data_model/device_types/Dishwasher.xml b/data_model/1.3/device_types/Dishwasher.xml
similarity index 100%
rename from data_model/device_types/Dishwasher.xml
rename to data_model/1.3/device_types/Dishwasher.xml
diff --git a/data_model/device_types/DoorLock.xml b/data_model/1.3/device_types/DoorLock.xml
similarity index 100%
rename from data_model/device_types/DoorLock.xml
rename to data_model/1.3/device_types/DoorLock.xml
diff --git a/data_model/device_types/DoorLockController.xml b/data_model/1.3/device_types/DoorLockController.xml
similarity index 100%
rename from data_model/device_types/DoorLockController.xml
rename to data_model/1.3/device_types/DoorLockController.xml
diff --git a/data_model/device_types/EVSE.xml b/data_model/1.3/device_types/EVSE.xml
similarity index 100%
rename from data_model/device_types/EVSE.xml
rename to data_model/1.3/device_types/EVSE.xml
diff --git a/data_model/device_types/ElectricalSensor.xml b/data_model/1.3/device_types/ElectricalSensor.xml
similarity index 100%
rename from data_model/device_types/ElectricalSensor.xml
rename to data_model/1.3/device_types/ElectricalSensor.xml
diff --git a/data_model/device_types/ExtendedColorLight.xml b/data_model/1.3/device_types/ExtendedColorLight.xml
similarity index 100%
rename from data_model/device_types/ExtendedColorLight.xml
rename to data_model/1.3/device_types/ExtendedColorLight.xml
diff --git a/data_model/device_types/ExtractorHood.xml b/data_model/1.3/device_types/ExtractorHood.xml
similarity index 100%
rename from data_model/device_types/ExtractorHood.xml
rename to data_model/1.3/device_types/ExtractorHood.xml
diff --git a/data_model/device_types/Fan.xml b/data_model/1.3/device_types/Fan.xml
similarity index 100%
rename from data_model/device_types/Fan.xml
rename to data_model/1.3/device_types/Fan.xml
diff --git a/data_model/device_types/FlowSensor.xml b/data_model/1.3/device_types/FlowSensor.xml
similarity index 100%
rename from data_model/device_types/FlowSensor.xml
rename to data_model/1.3/device_types/FlowSensor.xml
diff --git a/data_model/device_types/GenericSwitch.xml b/data_model/1.3/device_types/GenericSwitch.xml
similarity index 100%
rename from data_model/device_types/GenericSwitch.xml
rename to data_model/1.3/device_types/GenericSwitch.xml
diff --git a/data_model/device_types/HumiditySensor.xml b/data_model/1.3/device_types/HumiditySensor.xml
similarity index 100%
rename from data_model/device_types/HumiditySensor.xml
rename to data_model/1.3/device_types/HumiditySensor.xml
diff --git a/data_model/device_types/LaundryDryer.xml b/data_model/1.3/device_types/LaundryDryer.xml
similarity index 100%
rename from data_model/device_types/LaundryDryer.xml
rename to data_model/1.3/device_types/LaundryDryer.xml
diff --git a/data_model/device_types/LaundryWasher.xml b/data_model/1.3/device_types/LaundryWasher.xml
similarity index 100%
rename from data_model/device_types/LaundryWasher.xml
rename to data_model/1.3/device_types/LaundryWasher.xml
diff --git a/data_model/device_types/LightSensor.xml b/data_model/1.3/device_types/LightSensor.xml
similarity index 100%
rename from data_model/device_types/LightSensor.xml
rename to data_model/1.3/device_types/LightSensor.xml
diff --git a/data_model/device_types/MicrowaveOven.xml b/data_model/1.3/device_types/MicrowaveOven.xml
similarity index 100%
rename from data_model/device_types/MicrowaveOven.xml
rename to data_model/1.3/device_types/MicrowaveOven.xml
diff --git a/data_model/device_types/ModeSelectDeviceType.xml b/data_model/1.3/device_types/ModeSelectDeviceType.xml
similarity index 100%
rename from data_model/device_types/ModeSelectDeviceType.xml
rename to data_model/1.3/device_types/ModeSelectDeviceType.xml
diff --git a/data_model/device_types/OccupancySensor.xml b/data_model/1.3/device_types/OccupancySensor.xml
similarity index 100%
rename from data_model/device_types/OccupancySensor.xml
rename to data_model/1.3/device_types/OccupancySensor.xml
diff --git a/data_model/device_types/OnOffLight.xml b/data_model/1.3/device_types/OnOffLight.xml
similarity index 100%
rename from data_model/device_types/OnOffLight.xml
rename to data_model/1.3/device_types/OnOffLight.xml
diff --git a/data_model/device_types/OnOffLightSwitch.xml b/data_model/1.3/device_types/OnOffLightSwitch.xml
similarity index 100%
rename from data_model/device_types/OnOffLightSwitch.xml
rename to data_model/1.3/device_types/OnOffLightSwitch.xml
diff --git a/data_model/device_types/OnOffPlug-inUnit.xml b/data_model/1.3/device_types/OnOffPlug-inUnit.xml
similarity index 100%
rename from data_model/device_types/OnOffPlug-inUnit.xml
rename to data_model/1.3/device_types/OnOffPlug-inUnit.xml
diff --git a/data_model/device_types/OnOffSensor.xml b/data_model/1.3/device_types/OnOffSensor.xml
similarity index 100%
rename from data_model/device_types/OnOffSensor.xml
rename to data_model/1.3/device_types/OnOffSensor.xml
diff --git a/data_model/device_types/OtaProvider.xml b/data_model/1.3/device_types/OtaProvider.xml
similarity index 100%
rename from data_model/device_types/OtaProvider.xml
rename to data_model/1.3/device_types/OtaProvider.xml
diff --git a/data_model/device_types/OtaRequestor.xml b/data_model/1.3/device_types/OtaRequestor.xml
similarity index 100%
rename from data_model/device_types/OtaRequestor.xml
rename to data_model/1.3/device_types/OtaRequestor.xml
diff --git a/data_model/device_types/Oven.xml b/data_model/1.3/device_types/Oven.xml
similarity index 100%
rename from data_model/device_types/Oven.xml
rename to data_model/1.3/device_types/Oven.xml
diff --git a/data_model/device_types/PowerSource.xml b/data_model/1.3/device_types/PowerSource.xml
similarity index 100%
rename from data_model/device_types/PowerSource.xml
rename to data_model/1.3/device_types/PowerSource.xml
diff --git a/data_model/device_types/PressureSensor.xml b/data_model/1.3/device_types/PressureSensor.xml
similarity index 100%
rename from data_model/device_types/PressureSensor.xml
rename to data_model/1.3/device_types/PressureSensor.xml
diff --git a/data_model/device_types/Pump.xml b/data_model/1.3/device_types/Pump.xml
similarity index 100%
rename from data_model/device_types/Pump.xml
rename to data_model/1.3/device_types/Pump.xml
diff --git a/data_model/device_types/PumpController.xml b/data_model/1.3/device_types/PumpController.xml
similarity index 100%
rename from data_model/device_types/PumpController.xml
rename to data_model/1.3/device_types/PumpController.xml
diff --git a/data_model/device_types/RainSensor.xml b/data_model/1.3/device_types/RainSensor.xml
similarity index 100%
rename from data_model/device_types/RainSensor.xml
rename to data_model/1.3/device_types/RainSensor.xml
diff --git a/data_model/device_types/Refrigerator.xml b/data_model/1.3/device_types/Refrigerator.xml
similarity index 100%
rename from data_model/device_types/Refrigerator.xml
rename to data_model/1.3/device_types/Refrigerator.xml
diff --git a/data_model/device_types/RoboticVacuumCleaner.xml b/data_model/1.3/device_types/RoboticVacuumCleaner.xml
similarity index 100%
rename from data_model/device_types/RoboticVacuumCleaner.xml
rename to data_model/1.3/device_types/RoboticVacuumCleaner.xml
diff --git a/data_model/device_types/RoomAirConditioner.xml b/data_model/1.3/device_types/RoomAirConditioner.xml
similarity index 100%
rename from data_model/device_types/RoomAirConditioner.xml
rename to data_model/1.3/device_types/RoomAirConditioner.xml
diff --git a/data_model/device_types/RootNodeDeviceType.xml b/data_model/1.3/device_types/RootNodeDeviceType.xml
similarity index 100%
rename from data_model/device_types/RootNodeDeviceType.xml
rename to data_model/1.3/device_types/RootNodeDeviceType.xml
diff --git a/data_model/device_types/SmokeCOAlarm.xml b/data_model/1.3/device_types/SmokeCOAlarm.xml
similarity index 100%
rename from data_model/device_types/SmokeCOAlarm.xml
rename to data_model/1.3/device_types/SmokeCOAlarm.xml
diff --git a/data_model/device_types/Speaker.xml b/data_model/1.3/device_types/Speaker.xml
similarity index 100%
rename from data_model/device_types/Speaker.xml
rename to data_model/1.3/device_types/Speaker.xml
diff --git a/data_model/device_types/TemperatureControlledCabinet.xml b/data_model/1.3/device_types/TemperatureControlledCabinet.xml
similarity index 100%
rename from data_model/device_types/TemperatureControlledCabinet.xml
rename to data_model/1.3/device_types/TemperatureControlledCabinet.xml
diff --git a/data_model/device_types/TemperatureSensor.xml b/data_model/1.3/device_types/TemperatureSensor.xml
similarity index 100%
rename from data_model/device_types/TemperatureSensor.xml
rename to data_model/1.3/device_types/TemperatureSensor.xml
diff --git a/data_model/device_types/Thermostat.xml b/data_model/1.3/device_types/Thermostat.xml
similarity index 100%
rename from data_model/device_types/Thermostat.xml
rename to data_model/1.3/device_types/Thermostat.xml
diff --git a/data_model/device_types/VideoRemoteControl.xml b/data_model/1.3/device_types/VideoRemoteControl.xml
similarity index 100%
rename from data_model/device_types/VideoRemoteControl.xml
rename to data_model/1.3/device_types/VideoRemoteControl.xml
diff --git a/data_model/device_types/WaterFreezeDetector.xml b/data_model/1.3/device_types/WaterFreezeDetector.xml
similarity index 100%
rename from data_model/device_types/WaterFreezeDetector.xml
rename to data_model/1.3/device_types/WaterFreezeDetector.xml
diff --git a/data_model/device_types/WaterLeakDetector.xml b/data_model/1.3/device_types/WaterLeakDetector.xml
similarity index 100%
rename from data_model/device_types/WaterLeakDetector.xml
rename to data_model/1.3/device_types/WaterLeakDetector.xml
diff --git a/data_model/device_types/WaterValve.xml b/data_model/1.3/device_types/WaterValve.xml
similarity index 100%
rename from data_model/device_types/WaterValve.xml
rename to data_model/1.3/device_types/WaterValve.xml
diff --git a/data_model/device_types/WindowCovering.xml b/data_model/1.3/device_types/WindowCovering.xml
similarity index 100%
rename from data_model/device_types/WindowCovering.xml
rename to data_model/1.3/device_types/WindowCovering.xml
diff --git a/data_model/device_types/WindowCoveringController.xml b/data_model/1.3/device_types/WindowCoveringController.xml
similarity index 100%
rename from data_model/device_types/WindowCoveringController.xml
rename to data_model/1.3/device_types/WindowCoveringController.xml
diff --git a/data_model/scraper_version b/data_model/1.3/scraper_version
similarity index 100%
rename from data_model/scraper_version
rename to data_model/1.3/scraper_version
diff --git a/data_model/spec_sha b/data_model/1.3/spec_sha
similarity index 100%
rename from data_model/spec_sha
rename to data_model/1.3/spec_sha
diff --git a/data_model/master/clusters/ACL-Cluster.xml b/data_model/master/clusters/ACL-Cluster.xml
new file mode 100644
index 00000000000000..5c4c96a687cb13
--- /dev/null
+++ b/data_model/master/clusters/ACL-Cluster.xml
@@ -0,0 +1,252 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/AccountLogin.xml b/data_model/master/clusters/AccountLogin.xml
new file mode 100644
index 00000000000000..8a9ed7d9389f40
--- /dev/null
+++ b/data_model/master/clusters/AccountLogin.xml
@@ -0,0 +1,118 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/AdminCommissioningCluster.xml b/data_model/master/clusters/AdminCommissioningCluster.xml
new file mode 100644
index 00000000000000..ccbb579134dc00
--- /dev/null
+++ b/data_model/master/clusters/AdminCommissioningCluster.xml
@@ -0,0 +1,142 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/AirQuality.xml b/data_model/master/clusters/AirQuality.xml
new file mode 100644
index 00000000000000..c05717863c5ff4
--- /dev/null
+++ b/data_model/master/clusters/AirQuality.xml
@@ -0,0 +1,122 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/AlarmBase.xml b/data_model/master/clusters/AlarmBase.xml
new file mode 100644
index 00000000000000..fd0ccb5bc19d46
--- /dev/null
+++ b/data_model/master/clusters/AlarmBase.xml
@@ -0,0 +1,134 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ApplicationBasic.xml b/data_model/master/clusters/ApplicationBasic.xml
new file mode 100644
index 00000000000000..ee39b8a421209d
--- /dev/null
+++ b/data_model/master/clusters/ApplicationBasic.xml
@@ -0,0 +1,139 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ApplicationLauncher.xml b/data_model/master/clusters/ApplicationLauncher.xml
new file mode 100644
index 00000000000000..57d6858dd8ce14
--- /dev/null
+++ b/data_model/master/clusters/ApplicationLauncher.xml
@@ -0,0 +1,162 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/AudioOutput.xml b/data_model/master/clusters/AudioOutput.xml
new file mode 100644
index 00000000000000..27bb5a20bb7952
--- /dev/null
+++ b/data_model/master/clusters/AudioOutput.xml
@@ -0,0 +1,139 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/BallastConfiguration.xml b/data_model/master/clusters/BallastConfiguration.xml
new file mode 100644
index 00000000000000..0f37d86067e994
--- /dev/null
+++ b/data_model/master/clusters/BallastConfiguration.xml
@@ -0,0 +1,162 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/BasicInformationCluster.xml b/data_model/master/clusters/BasicInformationCluster.xml
new file mode 100644
index 00000000000000..428c683a0ea803
--- /dev/null
+++ b/data_model/master/clusters/BasicInformationCluster.xml
@@ -0,0 +1,364 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Binding-Cluster.xml b/data_model/master/clusters/Binding-Cluster.xml
new file mode 100644
index 00000000000000..444c99b315348d
--- /dev/null
+++ b/data_model/master/clusters/Binding-Cluster.xml
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/BooleanState.xml b/data_model/master/clusters/BooleanState.xml
new file mode 100644
index 00000000000000..5bb29f53ae0c3e
--- /dev/null
+++ b/data_model/master/clusters/BooleanState.xml
@@ -0,0 +1,84 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/BooleanStateConfiguration.xml b/data_model/master/clusters/BooleanStateConfiguration.xml
new file mode 100644
index 00000000000000..01444d565294b3
--- /dev/null
+++ b/data_model/master/clusters/BooleanStateConfiguration.xml
@@ -0,0 +1,220 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Channel.xml b/data_model/master/clusters/Channel.xml
new file mode 100644
index 00000000000000..17144c9032c3e5
--- /dev/null
+++ b/data_model/master/clusters/Channel.xml
@@ -0,0 +1,465 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ColorControl.xml b/data_model/master/clusters/ColorControl.xml
new file mode 100644
index 00000000000000..90d999fa20b4ac
--- /dev/null
+++ b/data_model/master/clusters/ColorControl.xml
@@ -0,0 +1,1168 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/CommissionerControlCluster.xml b/data_model/master/clusters/CommissionerControlCluster.xml
new file mode 100644
index 00000000000000..eaaa3c51ec4a30
--- /dev/null
+++ b/data_model/master/clusters/CommissionerControlCluster.xml
@@ -0,0 +1,154 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ConcentrationMeasurement.xml b/data_model/master/clusters/ConcentrationMeasurement.xml
new file mode 100644
index 00000000000000..4b51cffa124321
--- /dev/null
+++ b/data_model/master/clusters/ConcentrationMeasurement.xml
@@ -0,0 +1,264 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ContentAppObserver.xml b/data_model/master/clusters/ContentAppObserver.xml
new file mode 100644
index 00000000000000..d6808baf982215
--- /dev/null
+++ b/data_model/master/clusters/ContentAppObserver.xml
@@ -0,0 +1,106 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ContentControl.xml b/data_model/master/clusters/ContentControl.xml
new file mode 100644
index 00000000000000..b2539cf445c289
--- /dev/null
+++ b/data_model/master/clusters/ContentControl.xml
@@ -0,0 +1,428 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ContentLauncher.xml b/data_model/master/clusters/ContentLauncher.xml
new file mode 100644
index 00000000000000..9a5674efa8eb64
--- /dev/null
+++ b/data_model/master/clusters/ContentLauncher.xml
@@ -0,0 +1,374 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/DemandResponseLoadControl.xml b/data_model/master/clusters/DemandResponseLoadControl.xml
new file mode 100644
index 00000000000000..c20a7c3b7f013f
--- /dev/null
+++ b/data_model/master/clusters/DemandResponseLoadControl.xml
@@ -0,0 +1,453 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Descriptor-Cluster.xml b/data_model/master/clusters/Descriptor-Cluster.xml
new file mode 100644
index 00000000000000..94d262473d4c9c
--- /dev/null
+++ b/data_model/master/clusters/Descriptor-Cluster.xml
@@ -0,0 +1,125 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/DeviceEnergyManagement.xml b/data_model/master/clusters/DeviceEnergyManagement.xml
new file mode 100644
index 00000000000000..ee1b2f0f2725e6
--- /dev/null
+++ b/data_model/master/clusters/DeviceEnergyManagement.xml
@@ -0,0 +1,668 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/DiagnosticLogsCluster.xml b/data_model/master/clusters/DiagnosticLogsCluster.xml
new file mode 100644
index 00000000000000..38520e81a85e16
--- /dev/null
+++ b/data_model/master/clusters/DiagnosticLogsCluster.xml
@@ -0,0 +1,136 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/DiagnosticsEthernet.xml b/data_model/master/clusters/DiagnosticsEthernet.xml
new file mode 100644
index 00000000000000..dfcd3d11c41f52
--- /dev/null
+++ b/data_model/master/clusters/DiagnosticsEthernet.xml
@@ -0,0 +1,176 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/DiagnosticsGeneral.xml b/data_model/master/clusters/DiagnosticsGeneral.xml
new file mode 100644
index 00000000000000..4da912b03dc3df
--- /dev/null
+++ b/data_model/master/clusters/DiagnosticsGeneral.xml
@@ -0,0 +1,374 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/DiagnosticsSoftware.xml b/data_model/master/clusters/DiagnosticsSoftware.xml
new file mode 100644
index 00000000000000..7cb3c9ff39ad2f
--- /dev/null
+++ b/data_model/master/clusters/DiagnosticsSoftware.xml
@@ -0,0 +1,138 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/DiagnosticsThread.xml b/data_model/master/clusters/DiagnosticsThread.xml
new file mode 100644
index 00000000000000..120efaddf8c08e
--- /dev/null
+++ b/data_model/master/clusters/DiagnosticsThread.xml
@@ -0,0 +1,698 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/DiagnosticsWiFi.xml b/data_model/master/clusters/DiagnosticsWiFi.xml
new file mode 100644
index 00000000000000..b3951d967dc31f
--- /dev/null
+++ b/data_model/master/clusters/DiagnosticsWiFi.xml
@@ -0,0 +1,258 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/DishwasherAlarm.xml b/data_model/master/clusters/DishwasherAlarm.xml
new file mode 100644
index 00000000000000..bdc399f9399486
--- /dev/null
+++ b/data_model/master/clusters/DishwasherAlarm.xml
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/DoorLock.xml b/data_model/master/clusters/DoorLock.xml
new file mode 100644
index 00000000000000..ea4b9fe1ebbbf8
--- /dev/null
+++ b/data_model/master/clusters/DoorLock.xml
@@ -0,0 +1,2284 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ElectricalEnergyMeasurement.xml b/data_model/master/clusters/ElectricalEnergyMeasurement.xml
new file mode 100644
index 00000000000000..d89b19472a6bbb
--- /dev/null
+++ b/data_model/master/clusters/ElectricalEnergyMeasurement.xml
@@ -0,0 +1,224 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ElectricalPowerMeasurement.xml b/data_model/master/clusters/ElectricalPowerMeasurement.xml
new file mode 100644
index 00000000000000..89ad5fa3255fcd
--- /dev/null
+++ b/data_model/master/clusters/ElectricalPowerMeasurement.xml
@@ -0,0 +1,317 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/EnergyCalendar.xml b/data_model/master/clusters/EnergyCalendar.xml
new file mode 100644
index 00000000000000..40a8a87f04ec17
--- /dev/null
+++ b/data_model/master/clusters/EnergyCalendar.xml
@@ -0,0 +1,287 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/EnergyEVSE.xml b/data_model/master/clusters/EnergyEVSE.xml
new file mode 100644
index 00000000000000..53605899d05550
--- /dev/null
+++ b/data_model/master/clusters/EnergyEVSE.xml
@@ -0,0 +1,586 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/EnergyPreference.xml b/data_model/master/clusters/EnergyPreference.xml
new file mode 100644
index 00000000000000..37559dfbc30850
--- /dev/null
+++ b/data_model/master/clusters/EnergyPreference.xml
@@ -0,0 +1,144 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/EnergyPrice.xml b/data_model/master/clusters/EnergyPrice.xml
new file mode 100644
index 00000000000000..fa46810900890f
--- /dev/null
+++ b/data_model/master/clusters/EnergyPrice.xml
@@ -0,0 +1,233 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/FanControl.xml b/data_model/master/clusters/FanControl.xml
new file mode 100644
index 00000000000000..12d57967801646
--- /dev/null
+++ b/data_model/master/clusters/FanControl.xml
@@ -0,0 +1,300 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/FlowMeasurement.xml b/data_model/master/clusters/FlowMeasurement.xml
new file mode 100644
index 00000000000000..d488b5899b05f0
--- /dev/null
+++ b/data_model/master/clusters/FlowMeasurement.xml
@@ -0,0 +1,95 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/GeneralCommissioningCluster.xml b/data_model/master/clusters/GeneralCommissioningCluster.xml
new file mode 100644
index 00000000000000..519285af02f103
--- /dev/null
+++ b/data_model/master/clusters/GeneralCommissioningCluster.xml
@@ -0,0 +1,254 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Group-Key-Management-Cluster.xml b/data_model/master/clusters/Group-Key-Management-Cluster.xml
new file mode 100644
index 00000000000000..c1819628e34d7b
--- /dev/null
+++ b/data_model/master/clusters/Group-Key-Management-Cluster.xml
@@ -0,0 +1,235 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Groups.xml b/data_model/master/clusters/Groups.xml
new file mode 100644
index 00000000000000..1f168e13fad933
--- /dev/null
+++ b/data_model/master/clusters/Groups.xml
@@ -0,0 +1,197 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Humidistat.xml b/data_model/master/clusters/Humidistat.xml
new file mode 100644
index 00000000000000..b709b5d50d2f24
--- /dev/null
+++ b/data_model/master/clusters/Humidistat.xml
@@ -0,0 +1,283 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ICDManagement.xml b/data_model/master/clusters/ICDManagement.xml
new file mode 100644
index 00000000000000..0f15a2729052fa
--- /dev/null
+++ b/data_model/master/clusters/ICDManagement.xml
@@ -0,0 +1,267 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Identify.xml b/data_model/master/clusters/Identify.xml
new file mode 100644
index 00000000000000..dbb9daca72fce4
--- /dev/null
+++ b/data_model/master/clusters/Identify.xml
@@ -0,0 +1,155 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/IlluminanceMeasurement.xml b/data_model/master/clusters/IlluminanceMeasurement.xml
new file mode 100644
index 00000000000000..75cf30cd35d931
--- /dev/null
+++ b/data_model/master/clusters/IlluminanceMeasurement.xml
@@ -0,0 +1,114 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/JointFabricDatastoreCluster.xml b/data_model/master/clusters/JointFabricDatastoreCluster.xml
new file mode 100644
index 00000000000000..40e46ecc78519c
--- /dev/null
+++ b/data_model/master/clusters/JointFabricDatastoreCluster.xml
@@ -0,0 +1,435 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/JointFabricPKICluster.xml b/data_model/master/clusters/JointFabricPKICluster.xml
new file mode 100644
index 00000000000000..3519a11cec79c6
--- /dev/null
+++ b/data_model/master/clusters/JointFabricPKICluster.xml
@@ -0,0 +1,99 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/KeypadInput.xml b/data_model/master/clusters/KeypadInput.xml
new file mode 100644
index 00000000000000..57d6ef4650e013
--- /dev/null
+++ b/data_model/master/clusters/KeypadInput.xml
@@ -0,0 +1,367 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Label-Cluster-FixedLabelCluster.xml b/data_model/master/clusters/Label-Cluster-FixedLabelCluster.xml
new file mode 100644
index 00000000000000..98106b6fc33e40
--- /dev/null
+++ b/data_model/master/clusters/Label-Cluster-FixedLabelCluster.xml
@@ -0,0 +1,77 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Label-Cluster-LabelCluster.xml b/data_model/master/clusters/Label-Cluster-LabelCluster.xml
new file mode 100644
index 00000000000000..0ca5566f0dc132
--- /dev/null
+++ b/data_model/master/clusters/Label-Cluster-LabelCluster.xml
@@ -0,0 +1,88 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Label-Cluster-UserLabelCluster.xml b/data_model/master/clusters/Label-Cluster-UserLabelCluster.xml
new file mode 100644
index 00000000000000..eba0099ffb59d2
--- /dev/null
+++ b/data_model/master/clusters/Label-Cluster-UserLabelCluster.xml
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/LaundryDryerControls.xml b/data_model/master/clusters/LaundryDryerControls.xml
new file mode 100644
index 00000000000000..af4f787c0432b7
--- /dev/null
+++ b/data_model/master/clusters/LaundryDryerControls.xml
@@ -0,0 +1,96 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/LaundryWasherControls.xml b/data_model/master/clusters/LaundryWasherControls.xml
new file mode 100644
index 00000000000000..ff001c3a405652
--- /dev/null
+++ b/data_model/master/clusters/LaundryWasherControls.xml
@@ -0,0 +1,134 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/LevelControl.xml b/data_model/master/clusters/LevelControl.xml
new file mode 100644
index 00000000000000..c98db485e6e00a
--- /dev/null
+++ b/data_model/master/clusters/LevelControl.xml
@@ -0,0 +1,316 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/LocalizationConfiguration.xml b/data_model/master/clusters/LocalizationConfiguration.xml
new file mode 100644
index 00000000000000..66809f545389be
--- /dev/null
+++ b/data_model/master/clusters/LocalizationConfiguration.xml
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/LocalizationTimeFormat.xml b/data_model/master/clusters/LocalizationTimeFormat.xml
new file mode 100644
index 00000000000000..db8b809b0341a9
--- /dev/null
+++ b/data_model/master/clusters/LocalizationTimeFormat.xml
@@ -0,0 +1,148 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/LocalizationUnit.xml b/data_model/master/clusters/LocalizationUnit.xml
new file mode 100644
index 00000000000000..2c6e1ecbd648e6
--- /dev/null
+++ b/data_model/master/clusters/LocalizationUnit.xml
@@ -0,0 +1,93 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/LowPower.xml b/data_model/master/clusters/LowPower.xml
new file mode 100644
index 00000000000000..cf75cb0c680164
--- /dev/null
+++ b/data_model/master/clusters/LowPower.xml
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/MediaInput.xml b/data_model/master/clusters/MediaInput.xml
new file mode 100644
index 00000000000000..a92985ff924a75
--- /dev/null
+++ b/data_model/master/clusters/MediaInput.xml
@@ -0,0 +1,168 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/MediaPlayback.xml b/data_model/master/clusters/MediaPlayback.xml
new file mode 100644
index 00000000000000..03175277dc12c5
--- /dev/null
+++ b/data_model/master/clusters/MediaPlayback.xml
@@ -0,0 +1,475 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Messages.xml b/data_model/master/clusters/Messages.xml
new file mode 100644
index 00000000000000..402310c4b92eea
--- /dev/null
+++ b/data_model/master/clusters/Messages.xml
@@ -0,0 +1,333 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/MicrowaveOvenControl.xml b/data_model/master/clusters/MicrowaveOvenControl.xml
new file mode 100644
index 00000000000000..b927685e534e0c
--- /dev/null
+++ b/data_model/master/clusters/MicrowaveOvenControl.xml
@@ -0,0 +1,192 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ModeBase.xml b/data_model/master/clusters/ModeBase.xml
new file mode 100644
index 00000000000000..48b4d4adac1634
--- /dev/null
+++ b/data_model/master/clusters/ModeBase.xml
@@ -0,0 +1,158 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ModeSelect.xml b/data_model/master/clusters/ModeSelect.xml
new file mode 100644
index 00000000000000..cfdf7adb92761c
--- /dev/null
+++ b/data_model/master/clusters/ModeSelect.xml
@@ -0,0 +1,148 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Mode_DeviceEnergyManagement.xml b/data_model/master/clusters/Mode_DeviceEnergyManagement.xml
new file mode 100644
index 00000000000000..9cb426eb51785d
--- /dev/null
+++ b/data_model/master/clusters/Mode_DeviceEnergyManagement.xml
@@ -0,0 +1,82 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Mode_Dishwasher.xml b/data_model/master/clusters/Mode_Dishwasher.xml
new file mode 100644
index 00000000000000..40a19828d44ebb
--- /dev/null
+++ b/data_model/master/clusters/Mode_Dishwasher.xml
@@ -0,0 +1,97 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Mode_EVSE.xml b/data_model/master/clusters/Mode_EVSE.xml
new file mode 100644
index 00000000000000..ffce1a6a2980ce
--- /dev/null
+++ b/data_model/master/clusters/Mode_EVSE.xml
@@ -0,0 +1,82 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Mode_LaundryWasher.xml b/data_model/master/clusters/Mode_LaundryWasher.xml
new file mode 100644
index 00000000000000..5d3cce891790e1
--- /dev/null
+++ b/data_model/master/clusters/Mode_LaundryWasher.xml
@@ -0,0 +1,97 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Mode_MicrowaveOven.xml b/data_model/master/clusters/Mode_MicrowaveOven.xml
new file mode 100644
index 00000000000000..6f1e8ed895f489
--- /dev/null
+++ b/data_model/master/clusters/Mode_MicrowaveOven.xml
@@ -0,0 +1,90 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Mode_Oven.xml b/data_model/master/clusters/Mode_Oven.xml
new file mode 100644
index 00000000000000..bf6c1b57928a57
--- /dev/null
+++ b/data_model/master/clusters/Mode_Oven.xml
@@ -0,0 +1,82 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Mode_RVCClean.xml b/data_model/master/clusters/Mode_RVCClean.xml
new file mode 100644
index 00000000000000..b48ffa24a35b50
--- /dev/null
+++ b/data_model/master/clusters/Mode_RVCClean.xml
@@ -0,0 +1,98 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Mode_RVCRun.xml b/data_model/master/clusters/Mode_RVCRun.xml
new file mode 100644
index 00000000000000..ddfad8adc89d2e
--- /dev/null
+++ b/data_model/master/clusters/Mode_RVCRun.xml
@@ -0,0 +1,98 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Mode_Refrigerator.xml b/data_model/master/clusters/Mode_Refrigerator.xml
new file mode 100644
index 00000000000000..b4550283daf9e5
--- /dev/null
+++ b/data_model/master/clusters/Mode_Refrigerator.xml
@@ -0,0 +1,97 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Mode_WaterHeater.xml b/data_model/master/clusters/Mode_WaterHeater.xml
new file mode 100644
index 00000000000000..482ea0e33d0f9a
--- /dev/null
+++ b/data_model/master/clusters/Mode_WaterHeater.xml
@@ -0,0 +1,82 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/NetworkCommissioningCluster.xml b/data_model/master/clusters/NetworkCommissioningCluster.xml
new file mode 100644
index 00000000000000..cb6e935dcd189e
--- /dev/null
+++ b/data_model/master/clusters/NetworkCommissioningCluster.xml
@@ -0,0 +1,601 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/NetworkIdentityManagement.xml b/data_model/master/clusters/NetworkIdentityManagement.xml
new file mode 100644
index 00000000000000..0cb3ee17251741
--- /dev/null
+++ b/data_model/master/clusters/NetworkIdentityManagement.xml
@@ -0,0 +1,169 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/OTAProvider.xml b/data_model/master/clusters/OTAProvider.xml
new file mode 100644
index 00000000000000..2a5be10961f02c
--- /dev/null
+++ b/data_model/master/clusters/OTAProvider.xml
@@ -0,0 +1,203 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/OTARequestor.xml b/data_model/master/clusters/OTARequestor.xml
new file mode 100644
index 00000000000000..f6a5ff0365abed
--- /dev/null
+++ b/data_model/master/clusters/OTARequestor.xml
@@ -0,0 +1,227 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/OccupancySensing.xml b/data_model/master/clusters/OccupancySensing.xml
new file mode 100644
index 00000000000000..2aae8530b1d512
--- /dev/null
+++ b/data_model/master/clusters/OccupancySensing.xml
@@ -0,0 +1,418 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/OnOff.xml b/data_model/master/clusters/OnOff.xml
new file mode 100644
index 00000000000000..a12de2b2e25eb8
--- /dev/null
+++ b/data_model/master/clusters/OnOff.xml
@@ -0,0 +1,238 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/OperationalCredentialCluster.xml b/data_model/master/clusters/OperationalCredentialCluster.xml
new file mode 100644
index 00000000000000..2aa070f96b2573
--- /dev/null
+++ b/data_model/master/clusters/OperationalCredentialCluster.xml
@@ -0,0 +1,325 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/OperationalState.xml b/data_model/master/clusters/OperationalState.xml
new file mode 100644
index 00000000000000..124362e459e429
--- /dev/null
+++ b/data_model/master/clusters/OperationalState.xml
@@ -0,0 +1,224 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/OperationalState_Oven.xml b/data_model/master/clusters/OperationalState_Oven.xml
new file mode 100644
index 00000000000000..fbcc634330faa7
--- /dev/null
+++ b/data_model/master/clusters/OperationalState_Oven.xml
@@ -0,0 +1,68 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/OperationalState_RVC.xml b/data_model/master/clusters/OperationalState_RVC.xml
new file mode 100644
index 00000000000000..f33791fcf86407
--- /dev/null
+++ b/data_model/master/clusters/OperationalState_RVC.xml
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/PowerSourceCluster.xml b/data_model/master/clusters/PowerSourceCluster.xml
new file mode 100644
index 00000000000000..1c01cc548bfdee
--- /dev/null
+++ b/data_model/master/clusters/PowerSourceCluster.xml
@@ -0,0 +1,829 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/PowerSourceConfigurationCluster.xml b/data_model/master/clusters/PowerSourceConfigurationCluster.xml
new file mode 100644
index 00000000000000..6a47ce1b54cdbd
--- /dev/null
+++ b/data_model/master/clusters/PowerSourceConfigurationCluster.xml
@@ -0,0 +1,75 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/PowerTopology.xml b/data_model/master/clusters/PowerTopology.xml
new file mode 100644
index 00000000000000..4ebdda614a4aec
--- /dev/null
+++ b/data_model/master/clusters/PowerTopology.xml
@@ -0,0 +1,102 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/PressureMeasurement.xml b/data_model/master/clusters/PressureMeasurement.xml
new file mode 100644
index 00000000000000..a46e911253941f
--- /dev/null
+++ b/data_model/master/clusters/PressureMeasurement.xml
@@ -0,0 +1,138 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ProxyConfiguration-Cluster.xml b/data_model/master/clusters/ProxyConfiguration-Cluster.xml
new file mode 100644
index 00000000000000..8ad566ec8527b2
--- /dev/null
+++ b/data_model/master/clusters/ProxyConfiguration-Cluster.xml
@@ -0,0 +1,89 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ProxyDiscovery-Cluster.xml b/data_model/master/clusters/ProxyDiscovery-Cluster.xml
new file mode 100644
index 00000000000000..6fa4a9eb6f3a06
--- /dev/null
+++ b/data_model/master/clusters/ProxyDiscovery-Cluster.xml
@@ -0,0 +1,98 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/PumpConfigurationControl.xml b/data_model/master/clusters/PumpConfigurationControl.xml
new file mode 100644
index 00000000000000..c3f79ce8108975
--- /dev/null
+++ b/data_model/master/clusters/PumpConfigurationControl.xml
@@ -0,0 +1,446 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/RefrigeratorAlarm.xml b/data_model/master/clusters/RefrigeratorAlarm.xml
new file mode 100644
index 00000000000000..a3a75011813cd1
--- /dev/null
+++ b/data_model/master/clusters/RefrigeratorAlarm.xml
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ResourceMonitoring.xml b/data_model/master/clusters/ResourceMonitoring.xml
new file mode 100644
index 00000000000000..43bf28868f3709
--- /dev/null
+++ b/data_model/master/clusters/ResourceMonitoring.xml
@@ -0,0 +1,175 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Scenes.xml b/data_model/master/clusters/Scenes.xml
new file mode 100644
index 00000000000000..bf68f8528fa159
--- /dev/null
+++ b/data_model/master/clusters/Scenes.xml
@@ -0,0 +1,401 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ServiceArea.xml b/data_model/master/clusters/ServiceArea.xml
new file mode 100644
index 00000000000000..7963d93b7eb222
--- /dev/null
+++ b/data_model/master/clusters/ServiceArea.xml
@@ -0,0 +1,231 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/SmokeCOAlarm.xml b/data_model/master/clusters/SmokeCOAlarm.xml
new file mode 100644
index 00000000000000..25c034ac94082c
--- /dev/null
+++ b/data_model/master/clusters/SmokeCOAlarm.xml
@@ -0,0 +1,308 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Switch.xml b/data_model/master/clusters/Switch.xml
new file mode 100644
index 00000000000000..c7c94524bed52c
--- /dev/null
+++ b/data_model/master/clusters/Switch.xml
@@ -0,0 +1,223 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/TargetNavigator.xml b/data_model/master/clusters/TargetNavigator.xml
new file mode 100644
index 00000000000000..c5fb59919585c1
--- /dev/null
+++ b/data_model/master/clusters/TargetNavigator.xml
@@ -0,0 +1,142 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/TemperatureControl.xml b/data_model/master/clusters/TemperatureControl.xml
new file mode 100644
index 00000000000000..3f5fa9c00332d6
--- /dev/null
+++ b/data_model/master/clusters/TemperatureControl.xml
@@ -0,0 +1,147 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/TemperatureMeasurement.xml b/data_model/master/clusters/TemperatureMeasurement.xml
new file mode 100644
index 00000000000000..176fad6b246a60
--- /dev/null
+++ b/data_model/master/clusters/TemperatureMeasurement.xml
@@ -0,0 +1,96 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/Thermostat.xml b/data_model/master/clusters/Thermostat.xml
new file mode 100644
index 00000000000000..7345fc2e2c9177
--- /dev/null
+++ b/data_model/master/clusters/Thermostat.xml
@@ -0,0 +1,1290 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ThermostatUserInterfaceConfiguration.xml b/data_model/master/clusters/ThermostatUserInterfaceConfiguration.xml
new file mode 100644
index 00000000000000..b4ecd49f93ae4a
--- /dev/null
+++ b/data_model/master/clusters/ThermostatUserInterfaceConfiguration.xml
@@ -0,0 +1,122 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ThreadBorderRouterManagement.xml b/data_model/master/clusters/ThreadBorderRouterManagement.xml
new file mode 100644
index 00000000000000..f1e88f8ab86e70
--- /dev/null
+++ b/data_model/master/clusters/ThreadBorderRouterManagement.xml
@@ -0,0 +1,137 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ThreadNetworkDirectory.xml b/data_model/master/clusters/ThreadNetworkDirectory.xml
new file mode 100644
index 00000000000000..3a770c36a214f9
--- /dev/null
+++ b/data_model/master/clusters/ThreadNetworkDirectory.xml
@@ -0,0 +1,142 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/TimeSync.xml b/data_model/master/clusters/TimeSync.xml
new file mode 100644
index 00000000000000..9d4057db8bdb85
--- /dev/null
+++ b/data_model/master/clusters/TimeSync.xml
@@ -0,0 +1,411 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ValidProxies-Cluster.xml b/data_model/master/clusters/ValidProxies-Cluster.xml
new file mode 100644
index 00000000000000..b9db8e1762647f
--- /dev/null
+++ b/data_model/master/clusters/ValidProxies-Cluster.xml
@@ -0,0 +1,96 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/ValveConfigurationControl.xml b/data_model/master/clusters/ValveConfigurationControl.xml
new file mode 100644
index 00000000000000..e8dcece07432d3
--- /dev/null
+++ b/data_model/master/clusters/ValveConfigurationControl.xml
@@ -0,0 +1,221 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/WakeOnLAN.xml b/data_model/master/clusters/WakeOnLAN.xml
new file mode 100644
index 00000000000000..4f6e032c084b38
--- /dev/null
+++ b/data_model/master/clusters/WakeOnLAN.xml
@@ -0,0 +1,82 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/WaterContentMeasurement.xml b/data_model/master/clusters/WaterContentMeasurement.xml
new file mode 100644
index 00000000000000..85d44793c93ae4
--- /dev/null
+++ b/data_model/master/clusters/WaterContentMeasurement.xml
@@ -0,0 +1,95 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/WaterHeaterManagement.xml b/data_model/master/clusters/WaterHeaterManagement.xml
new file mode 100644
index 00000000000000..52e1020f164472
--- /dev/null
+++ b/data_model/master/clusters/WaterHeaterManagement.xml
@@ -0,0 +1,177 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/WiFiNetworkManagement.xml b/data_model/master/clusters/WiFiNetworkManagement.xml
new file mode 100644
index 00000000000000..e1c03fbc7061d4
--- /dev/null
+++ b/data_model/master/clusters/WiFiNetworkManagement.xml
@@ -0,0 +1,89 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/WindowCovering.xml b/data_model/master/clusters/WindowCovering.xml
new file mode 100644
index 00000000000000..7ec63dd442d8ae
--- /dev/null
+++ b/data_model/master/clusters/WindowCovering.xml
@@ -0,0 +1,700 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/bridge-clusters-ActionsCluster.xml b/data_model/master/clusters/bridge-clusters-ActionsCluster.xml
new file mode 100644
index 00000000000000..5b9b54429b9429
--- /dev/null
+++ b/data_model/master/clusters/bridge-clusters-ActionsCluster.xml
@@ -0,0 +1,380 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/bridge-clusters-BridgedDeviceBasicInformationCluster.xml b/data_model/master/clusters/bridge-clusters-BridgedDeviceBasicInformationCluster.xml
new file mode 100644
index 00000000000000..318ad7fa54dd2a
--- /dev/null
+++ b/data_model/master/clusters/bridge-clusters-BridgedDeviceBasicInformationCluster.xml
@@ -0,0 +1,188 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/bridge-clusters-EcosystemInformationCluster.xml b/data_model/master/clusters/bridge-clusters-EcosystemInformationCluster.xml
new file mode 100644
index 00000000000000..42ae5c4fe44cee
--- /dev/null
+++ b/data_model/master/clusters/bridge-clusters-EcosystemInformationCluster.xml
@@ -0,0 +1,136 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/clusters/cluster_ids.json b/data_model/master/clusters/cluster_ids.json
new file mode 100644
index 00000000000000..c7654179ede2b5
--- /dev/null
+++ b/data_model/master/clusters/cluster_ids.json
@@ -0,0 +1,124 @@
+{
+ "3": "Identify",
+ "4": "Groups",
+ "6": "On/Off",
+ "8": "Level Control",
+ "29": "Descriptor",
+ "30": "Binding",
+ "31": "AccessControl",
+ "37": "Actions",
+ "40": "Basic Information",
+ "41": "OTA Software Update Provider",
+ "42": "OTA Software Update Requestor",
+ "43": "Localization Configuration",
+ "44": "Time Format Localization",
+ "45": "Unit Localization",
+ "46": "Power Source Configuration",
+ "47": "Power Source",
+ "48": "General Commissioning",
+ "49": "Network Commissioning",
+ "50": "Diagnostic Logs",
+ "51": "General Diagnostics",
+ "52": "Software Diagnostics",
+ "53": "Thread Network Diagnostics",
+ "54": "Wi",
+ "55": "Ethernet Network Diagnostics",
+ "56": "Time Synchronization",
+ "57": "Bridged Device Basic Information",
+ "59": "Switch",
+ "60": "Administrator Commissioning",
+ "62": "Operational Credentials",
+ "63": "GroupKeyManagement",
+ "64": "Fixed Label",
+ "65": "User Label",
+ "66": "ProxyConfiguration",
+ "67": "ProxyDiscovery",
+ "68": "ValidProxies",
+ "69": "Boolean State",
+ "70": "ICDManagement",
+ "72": "Oven Cavity Operational State",
+ "73": "Oven Mode",
+ "74": "Laundry Dryer Controls",
+ "80": "Mode Select",
+ "81": "Laundry Washer Mode",
+ "82": "Refrigerator And Temperature Controlled Cabinet Mode",
+ "83": "Laundry Washer Controls",
+ "84": "RVC Run Mode",
+ "85": "RVC Clean Mode",
+ "86": "Temperature Control",
+ "87": "Refrigerator Alarm",
+ "89": "Dishwasher Mode",
+ "91": "Air Quality",
+ "92": "Smoke CO Alarm",
+ "93": "Dishwasher Alarm",
+ "94": "Microwave Oven Mode",
+ "95": "Microwave Oven Control",
+ "96": "Operational State",
+ "97": "RVC Operational State",
+ "98": "Scenes Management",
+ "113": "HEPA Filter Monitoring",
+ "114": "Activated Carbon Filter Monitoring",
+ "121": "Water Tank Level Monitoring",
+ "128": "Boolean State Configuration",
+ "129": "Valve Configuration and Control",
+ "144": "Electrical Power Measurement",
+ "145": "Electrical Energy Measurement",
+ "148": "Water Heater Management",
+ "149": "Energy Price",
+ "150": "Demand Response Load Control",
+ "151": "Messages",
+ "152": "Device Energy Management",
+ "153": "Energy EVSE",
+ "154": "Energy Calendar",
+ "155": "Energy Preference",
+ "156": "Power Topology",
+ "157": "Energy EVSE Mode",
+ "158": "Water Heater Mode",
+ "159": "Device Energy Management Mode",
+ "257": "Door Lock",
+ "258": "Window Covering",
+ "336": "Service Area",
+ "512": "Pump Configuration and Control",
+ "513": "Thermostat",
+ "514": "Fan Control",
+ "516": "Thermostat User Interface Configuration",
+ "517": "Humidistat",
+ "768": "Color Control",
+ "769": "Ballast Configuration",
+ "1024": "Illuminance Measurement",
+ "1026": "Temperature Measurement",
+ "1027": "Pressure Measurement",
+ "1028": "Flow Measurement",
+ "1029": "Relative Humidity Measurement",
+ "1030": "Occupancy Sensing",
+ "1036": "Carbon Monoxide Concentration Measurement",
+ "1037": "Carbon Dioxide Concentration Measurement",
+ "1043": "Nitrogen Dioxide Concentration Measurement",
+ "1045": "Ozone Concentration Measurement",
+ "1066": "PM2",
+ "1067": "Formaldehyde Concentration Measurement",
+ "1068": "PM1 Concentration Measurement",
+ "1069": "PM10 Concentration Measurement",
+ "1070": "Total Volatile Organic Compounds Concentration Measurement",
+ "1071": "Radon Concentration Measurement",
+ "1104": "Network Identity Management",
+ "1105": "Wi",
+ "1106": "Thread Border Router Management",
+ "1107": "Thread Network Directory",
+ "1283": "Wake on LAN",
+ "1284": "Channel",
+ "1285": "Target Navigator",
+ "1286": "Media Playback",
+ "1287": "Media Input",
+ "1288": "Low Power",
+ "1289": "Keypad Input",
+ "1290": "Content Launcher",
+ "1291": "Audio Output",
+ "1292": "Application Launcher",
+ "1293": "Application Basic",
+ "1294": "Account Login",
+ "1295": "Content Control",
+ "1296": "Content App Observer",
+ "1872": "Ecosystem Information",
+ "1873": "Commissioner Control"
+}
diff --git a/data_model/master/device_types/Aggregator.xml b/data_model/master/device_types/Aggregator.xml
new file mode 100644
index 00000000000000..48aa4347d850e1
--- /dev/null
+++ b/data_model/master/device_types/Aggregator.xml
@@ -0,0 +1,72 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/AirPurifier.xml b/data_model/master/device_types/AirPurifier.xml
new file mode 100644
index 00000000000000..538d9a4e341efb
--- /dev/null
+++ b/data_model/master/device_types/AirPurifier.xml
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/AirQualitySensor.xml b/data_model/master/device_types/AirQualitySensor.xml
new file mode 100644
index 00000000000000..602781819d1696
--- /dev/null
+++ b/data_model/master/device_types/AirQualitySensor.xml
@@ -0,0 +1,108 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/BaseDeviceType.xml b/data_model/master/device_types/BaseDeviceType.xml
new file mode 100644
index 00000000000000..ddcc49f258f0cb
--- /dev/null
+++ b/data_model/master/device_types/BaseDeviceType.xml
@@ -0,0 +1,90 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/BasicVideoPlayer.xml b/data_model/master/device_types/BasicVideoPlayer.xml
new file mode 100644
index 00000000000000..ed82d08bc7a112
--- /dev/null
+++ b/data_model/master/device_types/BasicVideoPlayer.xml
@@ -0,0 +1,107 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/BatteryStorage.xml b/data_model/master/device_types/BatteryStorage.xml
new file mode 100644
index 00000000000000..321e9f9dfe2159
--- /dev/null
+++ b/data_model/master/device_types/BatteryStorage.xml
@@ -0,0 +1,69 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/BridgedNode.xml b/data_model/master/device_types/BridgedNode.xml
new file mode 100644
index 00000000000000..59414205c052b5
--- /dev/null
+++ b/data_model/master/device_types/BridgedNode.xml
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/CastingVideoClient.xml b/data_model/master/device_types/CastingVideoClient.xml
new file mode 100644
index 00000000000000..8f816b3e2a8056
--- /dev/null
+++ b/data_model/master/device_types/CastingVideoClient.xml
@@ -0,0 +1,121 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/CastingVideoPlayer.xml b/data_model/master/device_types/CastingVideoPlayer.xml
new file mode 100644
index 00000000000000..0b65f4f7aab57d
--- /dev/null
+++ b/data_model/master/device_types/CastingVideoPlayer.xml
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/ColorDimmerSwitch.xml b/data_model/master/device_types/ColorDimmerSwitch.xml
new file mode 100644
index 00000000000000..190ab6c7fc8b7e
--- /dev/null
+++ b/data_model/master/device_types/ColorDimmerSwitch.xml
@@ -0,0 +1,92 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/ColorTemperatureLight.xml b/data_model/master/device_types/ColorTemperatureLight.xml
new file mode 100644
index 00000000000000..4f7cf64a9fd0a2
--- /dev/null
+++ b/data_model/master/device_types/ColorTemperatureLight.xml
@@ -0,0 +1,140 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/ContactSensor.xml b/data_model/master/device_types/ContactSensor.xml
new file mode 100644
index 00000000000000..6fa5620a77bebb
--- /dev/null
+++ b/data_model/master/device_types/ContactSensor.xml
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/ContentApp.xml b/data_model/master/device_types/ContentApp.xml
new file mode 100644
index 00000000000000..300e3122336ef4
--- /dev/null
+++ b/data_model/master/device_types/ContentApp.xml
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/ControlBridge.xml b/data_model/master/device_types/ControlBridge.xml
new file mode 100644
index 00000000000000..04ff66db808cc9
--- /dev/null
+++ b/data_model/master/device_types/ControlBridge.xml
@@ -0,0 +1,98 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/CookSurface.xml b/data_model/master/device_types/CookSurface.xml
new file mode 100644
index 00000000000000..a32425e2f1df08
--- /dev/null
+++ b/data_model/master/device_types/CookSurface.xml
@@ -0,0 +1,80 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/Cooktop.xml b/data_model/master/device_types/Cooktop.xml
new file mode 100644
index 00000000000000..ea94653008d25a
--- /dev/null
+++ b/data_model/master/device_types/Cooktop.xml
@@ -0,0 +1,77 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/DeviceEnergyManagement.xml b/data_model/master/device_types/DeviceEnergyManagement.xml
new file mode 100644
index 00000000000000..cf148dabc13679
--- /dev/null
+++ b/data_model/master/device_types/DeviceEnergyManagement.xml
@@ -0,0 +1,77 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/DimmableLight.xml b/data_model/master/device_types/DimmableLight.xml
new file mode 100644
index 00000000000000..059a0802f77906
--- /dev/null
+++ b/data_model/master/device_types/DimmableLight.xml
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/DimmablePlug-InUnit.xml b/data_model/master/device_types/DimmablePlug-InUnit.xml
new file mode 100644
index 00000000000000..4d344bfc9fb89c
--- /dev/null
+++ b/data_model/master/device_types/DimmablePlug-InUnit.xml
@@ -0,0 +1,127 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/DimmerSwitch.xml b/data_model/master/device_types/DimmerSwitch.xml
new file mode 100644
index 00000000000000..0ad9f23638349a
--- /dev/null
+++ b/data_model/master/device_types/DimmerSwitch.xml
@@ -0,0 +1,89 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/Dishwasher.xml b/data_model/master/device_types/Dishwasher.xml
new file mode 100644
index 00000000000000..6e351f38360e4e
--- /dev/null
+++ b/data_model/master/device_types/Dishwasher.xml
@@ -0,0 +1,99 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/DoorLock.xml b/data_model/master/device_types/DoorLock.xml
new file mode 100644
index 00000000000000..8b73bbf8679a6b
--- /dev/null
+++ b/data_model/master/device_types/DoorLock.xml
@@ -0,0 +1,108 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/DoorLockController.xml b/data_model/master/device_types/DoorLockController.xml
new file mode 100644
index 00000000000000..64d26eba8d8eeb
--- /dev/null
+++ b/data_model/master/device_types/DoorLockController.xml
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/EVSE.xml b/data_model/master/device_types/EVSE.xml
new file mode 100644
index 00000000000000..a6a1e3854c88eb
--- /dev/null
+++ b/data_model/master/device_types/EVSE.xml
@@ -0,0 +1,79 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/ElectricalSensor.xml b/data_model/master/device_types/ElectricalSensor.xml
new file mode 100644
index 00000000000000..62c6dd9b4128b2
--- /dev/null
+++ b/data_model/master/device_types/ElectricalSensor.xml
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/EnergyTariff.xml b/data_model/master/device_types/EnergyTariff.xml
new file mode 100644
index 00000000000000..bf27554ff281db
--- /dev/null
+++ b/data_model/master/device_types/EnergyTariff.xml
@@ -0,0 +1,64 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/EnergyTariffCalendar.xml b/data_model/master/device_types/EnergyTariffCalendar.xml
new file mode 100644
index 00000000000000..ee3a6b9347db38
--- /dev/null
+++ b/data_model/master/device_types/EnergyTariffCalendar.xml
@@ -0,0 +1,64 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/ExtendedColorLight.xml b/data_model/master/device_types/ExtendedColorLight.xml
new file mode 100644
index 00000000000000..b4057d6b5bc997
--- /dev/null
+++ b/data_model/master/device_types/ExtendedColorLight.xml
@@ -0,0 +1,152 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/ExtractorHood.xml b/data_model/master/device_types/ExtractorHood.xml
new file mode 100644
index 00000000000000..6606b377f47a39
--- /dev/null
+++ b/data_model/master/device_types/ExtractorHood.xml
@@ -0,0 +1,89 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/Fan.xml b/data_model/master/device_types/Fan.xml
new file mode 100644
index 00000000000000..8bf8347e93c5b0
--- /dev/null
+++ b/data_model/master/device_types/Fan.xml
@@ -0,0 +1,89 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/FlowSensor.xml b/data_model/master/device_types/FlowSensor.xml
new file mode 100644
index 00000000000000..bcc27b318aac36
--- /dev/null
+++ b/data_model/master/device_types/FlowSensor.xml
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/GenericSwitch.xml b/data_model/master/device_types/GenericSwitch.xml
new file mode 100644
index 00000000000000..acfa0a95005291
--- /dev/null
+++ b/data_model/master/device_types/GenericSwitch.xml
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/HeatPump.xml b/data_model/master/device_types/HeatPump.xml
new file mode 100644
index 00000000000000..ae0ce0e9a4d30a
--- /dev/null
+++ b/data_model/master/device_types/HeatPump.xml
@@ -0,0 +1,72 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/HumidifierDehumidifier.xml b/data_model/master/device_types/HumidifierDehumidifier.xml
new file mode 100644
index 00000000000000..a917cbff4450f0
--- /dev/null
+++ b/data_model/master/device_types/HumidifierDehumidifier.xml
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/HumiditySensor.xml b/data_model/master/device_types/HumiditySensor.xml
new file mode 100644
index 00000000000000..4a1808d7e0c580
--- /dev/null
+++ b/data_model/master/device_types/HumiditySensor.xml
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/JointFabricAdmin.xml b/data_model/master/device_types/JointFabricAdmin.xml
new file mode 100644
index 00000000000000..eb57fad58127a4
--- /dev/null
+++ b/data_model/master/device_types/JointFabricAdmin.xml
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/LaundryDryer.xml b/data_model/master/device_types/LaundryDryer.xml
new file mode 100644
index 00000000000000..d4692c7ad818a5
--- /dev/null
+++ b/data_model/master/device_types/LaundryDryer.xml
@@ -0,0 +1,99 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/LaundryWasher.xml b/data_model/master/device_types/LaundryWasher.xml
new file mode 100644
index 00000000000000..03b85f3bd363b4
--- /dev/null
+++ b/data_model/master/device_types/LaundryWasher.xml
@@ -0,0 +1,99 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/LightSensor.xml b/data_model/master/device_types/LightSensor.xml
new file mode 100644
index 00000000000000..0eca130f921623
--- /dev/null
+++ b/data_model/master/device_types/LightSensor.xml
@@ -0,0 +1,79 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/MicrowaveOven.xml b/data_model/master/device_types/MicrowaveOven.xml
new file mode 100644
index 00000000000000..3ae1fd8d5bf22d
--- /dev/null
+++ b/data_model/master/device_types/MicrowaveOven.xml
@@ -0,0 +1,94 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/ModeSelectDeviceType.xml b/data_model/master/device_types/ModeSelectDeviceType.xml
new file mode 100644
index 00000000000000..7848ba0adc787f
--- /dev/null
+++ b/data_model/master/device_types/ModeSelectDeviceType.xml
@@ -0,0 +1,69 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/NetworkInfraIntro.xml b/data_model/master/device_types/NetworkInfraIntro.xml
new file mode 100644
index 00000000000000..e5bc56b1f095ac
--- /dev/null
+++ b/data_model/master/device_types/NetworkInfraIntro.xml
@@ -0,0 +1,58 @@
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/NetworkInfraManager.xml b/data_model/master/device_types/NetworkInfraManager.xml
new file mode 100644
index 00000000000000..800ca8ce10ace6
--- /dev/null
+++ b/data_model/master/device_types/NetworkInfraManager.xml
@@ -0,0 +1,75 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/OccupancySensor.xml b/data_model/master/device_types/OccupancySensor.xml
new file mode 100644
index 00000000000000..233d04f196e388
--- /dev/null
+++ b/data_model/master/device_types/OccupancySensor.xml
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/OnOffLight.xml b/data_model/master/device_types/OnOffLight.xml
new file mode 100644
index 00000000000000..f71c0bf77fa42c
--- /dev/null
+++ b/data_model/master/device_types/OnOffLight.xml
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/OnOffLightSwitch.xml b/data_model/master/device_types/OnOffLightSwitch.xml
new file mode 100644
index 00000000000000..d6ac7f79520d26
--- /dev/null
+++ b/data_model/master/device_types/OnOffLightSwitch.xml
@@ -0,0 +1,86 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/OnOffPlug-inUnit.xml b/data_model/master/device_types/OnOffPlug-inUnit.xml
new file mode 100644
index 00000000000000..3be1ed0f9eb13d
--- /dev/null
+++ b/data_model/master/device_types/OnOffPlug-inUnit.xml
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/OnOffSensor.xml b/data_model/master/device_types/OnOffSensor.xml
new file mode 100644
index 00000000000000..935a438fb0bbef
--- /dev/null
+++ b/data_model/master/device_types/OnOffSensor.xml
@@ -0,0 +1,92 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/OtaProvider.xml b/data_model/master/device_types/OtaProvider.xml
new file mode 100644
index 00000000000000..375ab4e36aa987
--- /dev/null
+++ b/data_model/master/device_types/OtaProvider.xml
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/OtaRequestor.xml b/data_model/master/device_types/OtaRequestor.xml
new file mode 100644
index 00000000000000..840e322bdccb72
--- /dev/null
+++ b/data_model/master/device_types/OtaRequestor.xml
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/Oven.xml b/data_model/master/device_types/Oven.xml
new file mode 100644
index 00000000000000..9c5d23e86afda7
--- /dev/null
+++ b/data_model/master/device_types/Oven.xml
@@ -0,0 +1,70 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/PowerSource.xml b/data_model/master/device_types/PowerSource.xml
new file mode 100644
index 00000000000000..9ed71e905535bd
--- /dev/null
+++ b/data_model/master/device_types/PowerSource.xml
@@ -0,0 +1,68 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/PressureSensor.xml b/data_model/master/device_types/PressureSensor.xml
new file mode 100644
index 00000000000000..f2b7855db91c83
--- /dev/null
+++ b/data_model/master/device_types/PressureSensor.xml
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/Pump.xml b/data_model/master/device_types/Pump.xml
new file mode 100644
index 00000000000000..461725136abaec
--- /dev/null
+++ b/data_model/master/device_types/Pump.xml
@@ -0,0 +1,110 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/PumpController.xml b/data_model/master/device_types/PumpController.xml
new file mode 100644
index 00000000000000..99acf1fa1c5757
--- /dev/null
+++ b/data_model/master/device_types/PumpController.xml
@@ -0,0 +1,101 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/RainSensor.xml b/data_model/master/device_types/RainSensor.xml
new file mode 100644
index 00000000000000..473de6e31d1598
--- /dev/null
+++ b/data_model/master/device_types/RainSensor.xml
@@ -0,0 +1,80 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/Refrigerator.xml b/data_model/master/device_types/Refrigerator.xml
new file mode 100644
index 00000000000000..4899906c3b985e
--- /dev/null
+++ b/data_model/master/device_types/Refrigerator.xml
@@ -0,0 +1,86 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/RoboticVacuumCleaner.xml b/data_model/master/device_types/RoboticVacuumCleaner.xml
new file mode 100644
index 00000000000000..2657a560109829
--- /dev/null
+++ b/data_model/master/device_types/RoboticVacuumCleaner.xml
@@ -0,0 +1,79 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/RoomAirConditioner.xml b/data_model/master/device_types/RoomAirConditioner.xml
new file mode 100644
index 00000000000000..305a893dabc0fe
--- /dev/null
+++ b/data_model/master/device_types/RoomAirConditioner.xml
@@ -0,0 +1,107 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/RootNodeDeviceType.xml b/data_model/master/device_types/RootNodeDeviceType.xml
new file mode 100644
index 00000000000000..875a633f9ba9b8
--- /dev/null
+++ b/data_model/master/device_types/RootNodeDeviceType.xml
@@ -0,0 +1,169 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/SecondaryNetworkInterface.xml b/data_model/master/device_types/SecondaryNetworkInterface.xml
new file mode 100644
index 00000000000000..186faac2718079
--- /dev/null
+++ b/data_model/master/device_types/SecondaryNetworkInterface.xml
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/SmokeCOAlarm.xml b/data_model/master/device_types/SmokeCOAlarm.xml
new file mode 100644
index 00000000000000..518809d449e35a
--- /dev/null
+++ b/data_model/master/device_types/SmokeCOAlarm.xml
@@ -0,0 +1,84 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/SolarPower.xml b/data_model/master/device_types/SolarPower.xml
new file mode 100644
index 00000000000000..743da25e7a9a20
--- /dev/null
+++ b/data_model/master/device_types/SolarPower.xml
@@ -0,0 +1,69 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/Speaker.xml b/data_model/master/device_types/Speaker.xml
new file mode 100644
index 00000000000000..d1d9d85beb84c8
--- /dev/null
+++ b/data_model/master/device_types/Speaker.xml
@@ -0,0 +1,72 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/TemperatureControlledCabinet.xml b/data_model/master/device_types/TemperatureControlledCabinet.xml
new file mode 100644
index 00000000000000..299037e145d901
--- /dev/null
+++ b/data_model/master/device_types/TemperatureControlledCabinet.xml
@@ -0,0 +1,116 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/TemperatureSensor.xml b/data_model/master/device_types/TemperatureSensor.xml
new file mode 100644
index 00000000000000..d6ccd5c18db89f
--- /dev/null
+++ b/data_model/master/device_types/TemperatureSensor.xml
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/Thermostat.xml b/data_model/master/device_types/Thermostat.xml
new file mode 100644
index 00000000000000..6acdf63b10eba0
--- /dev/null
+++ b/data_model/master/device_types/Thermostat.xml
@@ -0,0 +1,148 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/ThreadBorderRouter.xml b/data_model/master/device_types/ThreadBorderRouter.xml
new file mode 100644
index 00000000000000..73561999d60eba
--- /dev/null
+++ b/data_model/master/device_types/ThreadBorderRouter.xml
@@ -0,0 +1,72 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/VideoRemoteControl.xml b/data_model/master/device_types/VideoRemoteControl.xml
new file mode 100644
index 00000000000000..7896a6f6ee6be5
--- /dev/null
+++ b/data_model/master/device_types/VideoRemoteControl.xml
@@ -0,0 +1,112 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/WaterFreezeDetector.xml b/data_model/master/device_types/WaterFreezeDetector.xml
new file mode 100644
index 00000000000000..f3c5f0580af21f
--- /dev/null
+++ b/data_model/master/device_types/WaterFreezeDetector.xml
@@ -0,0 +1,80 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/WaterHeater.xml b/data_model/master/device_types/WaterHeater.xml
new file mode 100644
index 00000000000000..6e80928d792cfc
--- /dev/null
+++ b/data_model/master/device_types/WaterHeater.xml
@@ -0,0 +1,89 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/WaterLeakDetector.xml b/data_model/master/device_types/WaterLeakDetector.xml
new file mode 100644
index 00000000000000..0518d148910c78
--- /dev/null
+++ b/data_model/master/device_types/WaterLeakDetector.xml
@@ -0,0 +1,80 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/WaterValve.xml b/data_model/master/device_types/WaterValve.xml
new file mode 100644
index 00000000000000..5c65f4565f6746
--- /dev/null
+++ b/data_model/master/device_types/WaterValve.xml
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/WindowCovering.xml b/data_model/master/device_types/WindowCovering.xml
new file mode 100644
index 00000000000000..a2d54453b7337f
--- /dev/null
+++ b/data_model/master/device_types/WindowCovering.xml
@@ -0,0 +1,128 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/device_types/WindowCoveringController.xml b/data_model/master/device_types/WindowCoveringController.xml
new file mode 100644
index 00000000000000..c48f327754c599
--- /dev/null
+++ b/data_model/master/device_types/WindowCoveringController.xml
@@ -0,0 +1,101 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data_model/master/scraper_version b/data_model/master/scraper_version
new file mode 100644
index 00000000000000..e8ea05db81420d
--- /dev/null
+++ b/data_model/master/scraper_version
@@ -0,0 +1 @@
+1.2.4
diff --git a/data_model/master/spec_sha b/data_model/master/spec_sha
new file mode 100644
index 00000000000000..f0b38ddc8c8aac
--- /dev/null
+++ b/data_model/master/spec_sha
@@ -0,0 +1 @@
+b3652909bdf595c7634cea1da0f1e58f837ea35f
diff --git a/scripts/spec_xml/generate_spec_xml.py b/scripts/spec_xml/generate_spec_xml.py
index bb33c13533991d..7f9ea4ccd24120 100755
--- a/scripts/spec_xml/generate_spec_xml.py
+++ b/scripts/spec_xml/generate_spec_xml.py
@@ -27,8 +27,10 @@
DEFAULT_CHIP_ROOT = os.path.abspath(
os.path.join(os.path.dirname(__file__), '..', '..'))
-DEFAULT_OUTPUT_DIR = os.path.abspath(
- os.path.join(DEFAULT_CHIP_ROOT, 'data_model'))
+DEFAULT_OUTPUT_DIR_1_3 = os.path.abspath(
+ os.path.join(DEFAULT_CHIP_ROOT, 'data_model', '1.3'))
+DEFAULT_OUTPUT_DIR_TOT = os.path.abspath(
+ os.path.join(DEFAULT_CHIP_ROOT, 'data_model', 'master'))
DEFAULT_DOCUMENTATION_FILE = os.path.abspath(
os.path.join(DEFAULT_CHIP_ROOT, 'docs', 'spec_clusters.md'))
@@ -65,7 +67,6 @@ def make_asciidoc(target: str, include_in_progress: bool, spec_dir: str, dry_run
help='Path to the spec root')
@click.option(
'--output-dir',
- default=DEFAULT_OUTPUT_DIR,
help='Path to output xml files')
@click.option(
'--dry-run',
@@ -79,6 +80,8 @@ def make_asciidoc(target: str, include_in_progress: bool, spec_dir: str, dry_run
help='Include in-progress items from spec')
def main(scraper, spec_root, output_dir, dry_run, include_in_progress):
# Clusters need to be scraped first because the cluster directory is passed to the device type directory
+ if not output_dir:
+ output_dir = DEFAULT_OUTPUT_DIR_TOT if include_in_progress else DEFAULT_OUTPUT_DIR_1_3
scrape_clusters(scraper, spec_root, output_dir, dry_run, include_in_progress)
scrape_device_types(scraper, spec_root, output_dir, dry_run, include_in_progress)
if not dry_run:
@@ -204,7 +207,7 @@ def dump_cluster_ids(output_dir):
header = '# List of currently defined spec clusters\n'
header += 'This file was **AUTOMATICALLY** generated by `python scripts/generate_spec_xml.py`. DO NOT EDIT BY HAND!\n\n'
- clusters, problems = build_xml_clusters()
+ clusters, problems = build_xml_clusters(clusters_output_dir)
all_name_lens = [len(c.name) for c in clusters.values()]
name_len = max(all_name_lens)
title_id_decimal = ' ID (Decimal) '
diff --git a/src/python_testing/TestSpecParsingSupport.py b/src/python_testing/TestSpecParsingSupport.py
index ab73d4ebc20280..c35a5eb0f6bb22 100644
--- a/src/python_testing/TestSpecParsingSupport.py
+++ b/src/python_testing/TestSpecParsingSupport.py
@@ -15,14 +15,16 @@
# limitations under the License.
#
+import os
import xml.etree.ElementTree as ElementTree
import chip.clusters as Clusters
from global_attribute_ids import GlobalAttributeIds
from matter_testing_support import MatterBaseTest, ProblemNotice, default_matter_test_main
from mobly import asserts
-from spec_parsing_support import (ClusterParser, XmlCluster, add_cluster_data_from_xml, build_xml_clusters,
- check_clusters_for_unknown_commands, combine_derived_clusters_with_base)
+from spec_parsing_support import (ClusterParser, PrebuiltDataModelDirectory, SpecParsingException, XmlCluster,
+ add_cluster_data_from_xml, build_xml_clusters, check_clusters_for_unknown_commands,
+ combine_derived_clusters_with_base)
# TODO: improve the test coverage here
# https://github.com/project-chip/connectedhomeip/issues/30958
@@ -230,6 +232,26 @@ def setup_class(self):
self.spec_xml_clusters, self.spec_problems = build_xml_clusters()
self.all_spec_clusters = set([(id, c.name, c.pics) for id, c in self.spec_xml_clusters.items()])
+ def test_build_xml_override(self):
+ # checks that the 1.3 spec (default) does not contain in-progress clusters and the TOT does
+ tot_xml_clusters, problems = build_xml_clusters(PrebuiltDataModelDirectory.kMaster)
+ asserts.assert_greater(len(set(tot_xml_clusters.keys()) - set(self.spec_xml_clusters.keys())),
+ 0, "In progress dir does not contain any clusters not in 1.3")
+ # only the pulse width modulation cluster was removed post 1.3
+ asserts.assert_equal(set(self.spec_xml_clusters.keys()) - set(tot_xml_clusters.keys()),
+ set([Clusters.PulseWidthModulation.id]), "There are some 1.3 clusters that are not included in the TOT spec")
+
+ str_path = str(os.path.join(os.path.dirname(os.path.realpath(__file__)), '..', '..', 'data_model', '1.3', 'clusters'))
+ string_override_check, problems = build_xml_clusters(str_path)
+ asserts.assert_equal(string_override_check.keys(), self.spec_xml_clusters.keys(), "Mismatched cluster generation")
+
+ path = os.path.join(os.path.dirname(os.path.realpath(__file__)), '..', '..', 'data_model', '1.3', 'clusters')
+ path_override_check, problems = build_xml_clusters(path)
+ asserts.assert_equal(path_override_check.keys(), self.spec_xml_clusters.keys(), "Mismatched cluster generation")
+
+ with asserts.assert_raises(SpecParsingException):
+ build_xml_clusters("baddir")
+
def test_spec_parsing_access(self):
strs = [None, 'view', 'operate', 'manage', 'admin']
for read in strs:
diff --git a/src/python_testing/spec_parsing_support.py b/src/python_testing/spec_parsing_support.py
index ea62d8a1baceac..bc36049de54cd5 100644
--- a/src/python_testing/spec_parsing_support.py
+++ b/src/python_testing/spec_parsing_support.py
@@ -47,6 +47,10 @@ def to_access_code(privilege: Clusters.AccessControl.Enums.AccessControlEntryPri
return _PRIVILEGE_STR.get(privilege, "")
+class SpecParsingException(Exception):
+ pass
+
+
@dataclass
class XmlFeature:
code: str
@@ -447,13 +451,28 @@ def check_clusters_for_unknown_commands(clusters: dict[int, XmlCluster], problem
endpoint_id=0, cluster_id=id, command_id=cmd.id), severity=ProblemSeverity.WARNING, problem="Command with unknown direction"))
-def build_xml_clusters() -> tuple[dict[int, XmlCluster], list[ProblemNotice]]:
- dir = os.path.join(os.path.dirname(os.path.realpath(__file__)), '..', '..', 'data_model', 'clusters')
+class PrebuiltDataModelDirectory(Enum):
+ k1_3 = auto()
+ kMaster = auto()
+
+
+def build_xml_clusters(data_model_directory: typing.Union[PrebuiltDataModelDirectory, str] = PrebuiltDataModelDirectory.k1_3) -> tuple[dict[uint, XmlCluster], list[ProblemNotice]]:
+ if data_model_directory == PrebuiltDataModelDirectory.k1_3:
+ dir = os.path.join(os.path.dirname(os.path.realpath(__file__)), '..', '..', 'data_model', '1.3', 'clusters')
+ elif data_model_directory == PrebuiltDataModelDirectory.kMaster:
+ dir = os.path.join(os.path.dirname(os.path.realpath(__file__)), '..', '..', 'data_model', 'master', 'clusters')
+ else:
+ dir = data_model_directory
+
clusters: dict[int, XmlCluster] = {}
pure_base_clusters: dict[str, XmlCluster] = {}
ids_by_name: dict[str, int] = {}
problems: list[ProblemNotice] = []
- for xml in glob.glob(f"{dir}/*.xml"):
+ files = glob.glob(f'{dir}/*.xml')
+ if not files:
+ raise SpecParsingException(f'No data model files found in specified directory {dir}')
+
+ for xml in files:
logging.info(f'Parsing file {xml}')
tree = ElementTree.parse(f'{xml}')
root = tree.getroot()