DM XML scrape for 1.3 (#32972)

diff --git a/data_model/clusters/BooleanStateConfiguration.xml b/data_model/clusters/BooleanStateConfiguration.xml
index dc17f93..a9c370b 100644
--- a/data_model/clusters/BooleanStateConfiguration.xml
+++ b/data_model/clusters/BooleanStateConfiguration.xml
@@ -104,7 +104,7 @@
     </bitmap>
   </dataTypes>
   <attributes>
-    <attribute id="0x0000" name="CurrentSensitivityLevel" type="uint8">
+    <attribute id="0x0000" name="CurrentSensitivityLevel" type="uint8" default="MS">
       <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
       <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
       <mandatoryConform>
@@ -112,7 +112,7 @@
       </mandatoryConform>
       <constraint type="max" value="SupportedSensitivityLevels - 1"/>
     </attribute>
-    <attribute id="0x0001" name="SupportedSensitivityLevels" type="uint8">
+    <attribute id="0x0001" name="SupportedSensitivityLevels" type="uint8" default="MS">
       <access read="true" readPrivilege="view"/>
       <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
       <mandatoryConform>
@@ -120,7 +120,7 @@
       </mandatoryConform>
       <constraint type="between" from="2" to="10"/>
     </attribute>
-    <attribute id="0x0002" name="DefaultSensitivityLevel" type="uint8">
+    <attribute id="0x0002" name="DefaultSensitivityLevel" type="uint8" default="MS">
       <access read="true" readPrivilege="view"/>
       <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
       <optionalConform>
@@ -128,7 +128,7 @@
       </optionalConform>
       <constraint type="max" value="SupportedSensitivityLevels - 1"/>
     </attribute>
-    <attribute id="0x0003" name="AlarmsActive" type="AlarmModeBitmap">
+    <attribute id="0x0003" name="AlarmsActive" type="AlarmModeBitmap" default="0">
       <access read="true" readPrivilege="view"/>
       <mandatoryConform>
         <orTerm>
@@ -137,13 +137,13 @@
         </orTerm>
       </mandatoryConform>
     </attribute>
-    <attribute id="0x0004" name="AlarmsSuppressed" type="AlarmModeBitmap">
+    <attribute id="0x0004" name="AlarmsSuppressed" type="AlarmModeBitmap" default="0">
       <access read="true" readPrivilege="view"/>
       <mandatoryConform>
         <feature name="SPRS"/>
       </mandatoryConform>
     </attribute>
-    <attribute id="0x0005" name="AlarmsEnabled" type="AlarmModeBitmap">
+    <attribute id="0x0005" name="AlarmsEnabled" type="AlarmModeBitmap" default="MS">
       <access read="true" readPrivilege="view"/>
       <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
       <optionalConform>
@@ -153,7 +153,7 @@
         </orTerm>
       </optionalConform>
     </attribute>
-    <attribute id="0x0006" name="AlarmsSupported" type="AlarmModeBitmap">
+    <attribute id="0x0006" name="AlarmsSupported" type="AlarmModeBitmap" default="0">
       <access read="true" readPrivilege="view"/>
       <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
       <mandatoryConform>
diff --git a/data_model/clusters/ColorControl.xml b/data_model/clusters/ColorControl.xml
index 14d471b..b913009 100644
--- a/data_model/clusters/ColorControl.xml
+++ b/data_model/clusters/ColorControl.xml
@@ -107,7 +107,6 @@
     </attribute>
     <attribute id="0x0002" name="RemainingTime" type="uint16" default="0">
       <access read="true" readPrivilege="view"/>
-      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="false"/>
       <optionalConform/>
       <constraint type="between" from="0" to="65534"/>
     </attribute>
diff --git a/data_model/clusters/DiagnosticsGeneral.xml b/data_model/clusters/DiagnosticsGeneral.xml
index 27046de..1141123 100644
--- a/data_model/clusters/DiagnosticsGeneral.xml
+++ b/data_model/clusters/DiagnosticsGeneral.xml
@@ -65,9 +65,7 @@
   </clusterIds>
   <classification hierarchy="base" role="utility" picsCode="DGGEN" scope="Node"/>
   <features>
-    <feature bit="0" code="DMTEST" name="DataModelTest" summary="Support specific testing needs for extended Data Model features">
-      <optionalConform/>
-    </feature>
+    <feature bit="0" code="DMTEST" name="DataModelTest" summary="Support specific testing needs for extended Data Model features"/>
   </features>
   <dataTypes>
     <enum name="BootReasonEnum">
diff --git a/data_model/clusters/EnergyEVSE.xml b/data_model/clusters/EnergyEVSE.xml
index fa15692..d7786da 100644
--- a/data_model/clusters/EnergyEVSE.xml
+++ b/data_model/clusters/EnergyEVSE.xml
@@ -68,7 +68,7 @@
   <classification hierarchy="base" role="application" picsCode="EEVSE" scope="Endpoint"/>
   <features>
     <feature bit="0" code="PREF" name="ChargingPreferences" summary="EVSE supports storing user charging preferences">
-      <optionalConform/>
+      <provisionalConform/>
     </feature>
     <feature bit="1" code="SOC" name="SoCReporting" summary="EVSE supports reporting of vehicle State of Charge (SoC)">
       <provisionalConform/>
diff --git a/data_model/clusters/LevelControl.xml b/data_model/clusters/LevelControl.xml
index 13522bf..5cacf7e 100644
--- a/data_model/clusters/LevelControl.xml
+++ b/data_model/clusters/LevelControl.xml
@@ -79,8 +79,8 @@
       <optionalConform/>
     </feature>
     <feature bit="2" code="FQ" name="Frequency" default="0" summary="Supports frequency attributes and behavior.
-                                      The Pulse Width Modulation cluster was created
-                                      for frequency control.">
+                                                    The Pulse Width Modulation cluster was created
+                                                    for frequency control.">
       <provisionalConform/>
     </feature>
   </features>
@@ -126,7 +126,6 @@
     </attribute>
     <attribute id="0x0001" name="RemainingTime" type="uint16" default="0">
       <access read="true" readPrivilege="view"/>
-      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="false"/>
       <mandatoryConform>
         <feature name="LT"/>
       </mandatoryConform>
diff --git a/data_model/clusters/MicrowaveOvenControl.xml b/data_model/clusters/MicrowaveOvenControl.xml
index d7c6f72..27f31dc 100644
--- a/data_model/clusters/MicrowaveOvenControl.xml
+++ b/data_model/clusters/MicrowaveOvenControl.xml
@@ -70,7 +70,10 @@
       <optionalConform choice="a"/>
     </feature>
     <feature bit="1" code="WATTS" name="PowerInWatts" summary="Power is specified in Watts">
-      <optionalConform choice="a"/>
+      <otherwiseConform>
+        <provisionalConform/>
+        <optionalConform choice="a"/>
+      </otherwiseConform>
     </feature>
     <feature bit="2" code="PWRLMTS" name="PowerNumberLimits" summary="Supports the limit attributes used with the PWRNUM feature">
       <optionalConform>
@@ -125,16 +128,22 @@
       <entry type="uint16"/>
       <access read="true" readPrivilege="view"/>
       <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
-      <mandatoryConform>
-        <feature name="WATTS"/>
-      </mandatoryConform>
+      <otherwiseConform>
+        <provisionalConform/>
+        <mandatoryConform>
+          <feature name="WATTS"/>
+        </mandatoryConform>
+      </otherwiseConform>
       <constraint type="countBetween" from="1" to="10"/>
     </attribute>
     <attribute id="0x0007" name="SelectedWattIndex" type="uint8" default="MS">
       <access read="true" readPrivilege="view"/>
-      <mandatoryConform>
-        <feature name="WATTS"/>
-      </mandatoryConform>
+      <otherwiseConform>
+        <provisionalConform/>
+        <mandatoryConform>
+          <feature name="WATTS"/>
+        </mandatoryConform>
+      </otherwiseConform>
       <constraint type="desc"/>
     </attribute>
     <attribute id="0x0008" name="WattRating" type="uint16" default="MS">
@@ -165,7 +174,7 @@
         <optionalConform choice="a" more="true">
           <feature name="WATTS"/>
         </optionalConform>
-        <constraint type="between" from="0" to="len(SupportedWatts)-1"/>
+        <constraint type="desc"/>
       </field>
       <field id="4" name="StartAfterSetting" type="bool" default="false">
         <optionalConform/>
diff --git a/data_model/clusters/Mode_RVCClean.xml b/data_model/clusters/Mode_RVCClean.xml
index d1b2272..0738d20 100644
--- a/data_model/clusters/Mode_RVCClean.xml
+++ b/data_model/clusters/Mode_RVCClean.xml
@@ -66,20 +66,6 @@
     <clusterId id="0x0055" name="RVC Clean Mode"/>
   </clusterIds>
   <classification hierarchy="derived" baseCluster="Mode Base" role="application" picsCode="RVCCLEANM" scope="Endpoint"/>
-  <attributes>
-    <attribute id="0x0000" name="SupportedModes">
-      <mandatoryConform/>
-    </attribute>
-    <attribute id="0x0001" name="CurrentMode">
-      <mandatoryConform/>
-    </attribute>
-    <attribute id="0x0002" name="StartUpMode">
-      <disallowConform/>
-    </attribute>
-    <attribute id="0x0003" name="OnMode">
-      <deprecateConform/>
-    </attribute>
-  </attributes>
   <dataTypes>
     <struct name="ModeOptionStruct">
       <field id="0" name="Label">
@@ -94,4 +80,18 @@
       </field>
     </struct>
   </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="SupportedModes">
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="CurrentMode">
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="StartUpMode">
+      <disallowConform/>
+    </attribute>
+    <attribute id="0x0003" name="OnMode">
+      <deprecateConform/>
+    </attribute>
+  </attributes>
 </cluster>
\ No newline at end of file
diff --git a/data_model/clusters/Mode_RVCRun.xml b/data_model/clusters/Mode_RVCRun.xml
index 8e19b45..b5811a0 100644
--- a/data_model/clusters/Mode_RVCRun.xml
+++ b/data_model/clusters/Mode_RVCRun.xml
@@ -66,20 +66,6 @@
     <clusterId id="0x0054" name="RVC Run Mode"/>
   </clusterIds>
   <classification hierarchy="derived" baseCluster="Mode Base" role="application" picsCode="RVCRUNM" scope="Endpoint"/>
-  <attributes>
-    <attribute id="0x0000" name="SupportedModes">
-      <mandatoryConform/>
-    </attribute>
-    <attribute id="0x0001" name="CurrentMode">
-      <mandatoryConform/>
-    </attribute>
-    <attribute id="0x0002" name="StartUpMode">
-      <disallowConform/>
-    </attribute>
-    <attribute id="0x0003" name="OnMode">
-      <deprecateConform/>
-    </attribute>
-  </attributes>
   <dataTypes>
     <struct name="ModeOptionStruct">
       <field id="0" name="Label">
@@ -94,4 +80,18 @@
       </field>
     </struct>
   </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="SupportedModes">
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="CurrentMode">
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="StartUpMode">
+      <disallowConform/>
+    </attribute>
+    <attribute id="0x0003" name="OnMode">
+      <deprecateConform/>
+    </attribute>
+  </attributes>
 </cluster>
\ No newline at end of file
diff --git a/data_model/clusters/NetworkCommissioningCluster.xml b/data_model/clusters/NetworkCommissioningCluster.xml
index 745a659..f981021 100644
--- a/data_model/clusters/NetworkCommissioningCluster.xml
+++ b/data_model/clusters/NetworkCommissioningCluster.xml
@@ -54,7 +54,6 @@
 Connectivity Standards Alliance

 508 Second Street, Suite 206

 Davis, CA 95616, USA

-

 -->
 <cluster xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd cluster cluster.xsd" id="0x0031" name="Network Commissioning" revision="2">
   <revisionHistory>
diff --git a/data_model/clusters/OperationalState.xml b/data_model/clusters/OperationalState.xml
index 37dc6b6..98990ea 100644
--- a/data_model/clusters/OperationalState.xml
+++ b/data_model/clusters/OperationalState.xml
@@ -203,7 +203,10 @@
     </event>
     <event id="0x01" name="OperationCompletion" priority="info">
       <access readPrivilege="view"/>
-      <optionalConform/>
+      <otherwiseConform>
+        <provisionalConform/>
+        <optionalConform/>
+      </otherwiseConform>
       <field id="0" name="CompletionErrorCode" type="enum8">
         <mandatoryConform/>
       </field>
diff --git a/data_model/clusters/OperationalState_RVC.xml b/data_model/clusters/OperationalState_RVC.xml
index 6426e26..7e37a6b 100644
--- a/data_model/clusters/OperationalState_RVC.xml
+++ b/data_model/clusters/OperationalState_RVC.xml
@@ -66,21 +66,6 @@
     <clusterId id="0x0061" name="RVC Operational State"/>
   </clusterIds>
   <classification hierarchy="derived" baseCluster="Operational State" role="application" picsCode="RVCOPSTATE" scope="Endpoint"/>
-  <commands>
-    <command id="0x00" name="Pause"/>
-    <command id="0x01" name="Stop">
-      <deprecateConform/>
-    </command>
-    <command id="0x02" name="Start">
-      <deprecateConform/>
-    </command>
-    <command id="0x03" name="Resume"/>
-    <command id="0x04" name="OperationalCommandResponse"/>
-    <command id="0x80" name="GoHome" direction="commandToServer" response="OperationalCommandResponse">
-      <access invokePrivilege="operate"/>
-      <optionalConform/>
-    </command>
-  </commands>
   <dataTypes>
     <enum name="ErrorStateEnum">
       <item value="0x40" name="FailedToFindChargingDock" summary="The device has failed to find or reach the charging dock">
@@ -120,4 +105,22 @@
       </item>
     </enum>
   </dataTypes>
+  <commands>
+    <command id="0x00" name="Pause"/>
+    <command id="0x01" name="Stop">
+      <deprecateConform/>
+    </command>
+    <command id="0x02" name="Start">
+      <deprecateConform/>
+    </command>
+    <command id="0x03" name="Resume"/>
+    <command id="0x04" name="OperationalCommandResponse"/>
+    <command id="0x80" name="GoHome" direction="commandToServer" response="OperationalCommandResponse">
+      <access invokePrivilege="operate"/>
+      <otherwiseConform>
+        <provisionalConform/>
+        <optionalConform/>
+      </otherwiseConform>
+    </command>
+  </commands>
 </cluster>
\ No newline at end of file
diff --git a/data_model/clusters/PowerTopology.xml b/data_model/clusters/PowerTopology.xml
index d8c8a50..dac690f 100644
--- a/data_model/clusters/PowerTopology.xml
+++ b/data_model/clusters/PowerTopology.xml
@@ -54,8 +54,6 @@
 Connectivity Standards Alliance

 508 Second Street, Suite 206

 Davis, CA 95616, USA

-

-:xrefstyle: short

 -->
 <cluster xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd cluster cluster.xsd" id="0x009C" name="Power Topology" revision="1">
   <revisionHistory>
diff --git a/data_model/clusters/Scenes.xml b/data_model/clusters/Scenes.xml
index 5d9be30..d9c0ee7 100644
--- a/data_model/clusters/Scenes.xml
+++ b/data_model/clusters/Scenes.xml
@@ -121,14 +121,17 @@
       </field>
       <field id="1" name="SceneID" type="uint8">
         <mandatoryConform/>
+        <constraint type="max" value="254"/>
       </field>
       <field id="2" name="SceneName" type="string">
         <mandatoryConform>
           <feature name="SN"/>
         </mandatoryConform>
+        <constraint type="maxLength" value="16"/>
       </field>
       <field id="3" name="SceneTransitionTime" type="uint32" default="0">
         <mandatoryConform/>
+        <constraint type="max" value="60000000"/>
       </field>
       <field id="4" name="ExtensionFields" type="list" default="empty">
         <entry type="ExtensionFieldSetStruct"/>
diff --git a/data_model/clusters/TimeSync.xml b/data_model/clusters/TimeSync.xml
index c6c57ec..68e98a1 100644
--- a/data_model/clusters/TimeSync.xml
+++ b/data_model/clusters/TimeSync.xml
@@ -92,7 +92,7 @@
       <item value="2" name="SecondsGranularity" summary="This indicates the node is synchronized to an upstream source using a low resolution protocol. UTC Time is accurate to ± 5 seconds.">
         <mandatoryConform/>
       </item>
-      <item value="3" name="MillisecondsGranularity" summary="This indicates the node is synchronized to an upstream source using high resolution time-synchronization protocol such as NTP, or has built-in GNSS with some amount of jitter applying its GNSS timestamp. UTC Time is accurate to ± 50ms.">
+      <item value="3" name="MillisecondsGranularity" summary="This indicates the node is synchronized to an upstream source using high resolution time-synchronization protocol such as NTP, or has built-in GNSS with some amount of jitter applying its GNSS timestamp. UTC Time is accurate to ± 50 ms.">
         <mandatoryConform/>
       </item>
       <item value="4" name="MicrosecondsGranularity" summary="This indicates the node is synchronized to an upstream source using a highly precise time-synchronization protocol such as PTP, or has built-in GNSS. UTC time is accurate to ± 10 μs.">
diff --git a/data_model/clusters/network_infrastructure.xml b/data_model/clusters/network_infrastructure.xml
index 7e75cc0..8045740 100644
--- a/data_model/clusters/network_infrastructure.xml
+++ b/data_model/clusters/network_infrastructure.xml
@@ -58,5 +58,7 @@
 Connectivity Standards Alliance

 508 Second Street, Suite 206

 Davis, CA 95616, USA

+

+:toc:

 -->
-<cluster xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd cluster cluster.xsd" id="" name="Network Infrastructure" revision=""/>
+<cluster xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd cluster cluster.xsd" id="" name="Network Infrastructure" revision=""/>
\ No newline at end of file
diff --git a/data_model/device_types/Aggregator.xml b/data_model/device_types/Aggregator.xml
index 4e0eb1c..48aa434 100644
--- a/data_model/device_types/Aggregator.xml
+++ b/data_model/device_types/Aggregator.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x000E" name="Aggregator" revision="1">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to device type revision numbers"/>
     <revision revision="1" summary="Initial release of this document"/>
   </revisionHistory>
   <classification class="simple" scope="endpoint"/>
diff --git a/data_model/device_types/BaseDeviceType.xml b/data_model/device_types/BaseDeviceType.xml
index 0df3ba0..ddcc49f 100644
--- a/data_model/device_types/BaseDeviceType.xml
+++ b/data_model/device_types/BaseDeviceType.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="" name="Base Device Type" revision="2">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to device type revision numbers"/>
     <revision revision="1" summary="Initial release of this document"/>
     <revision revision="2" summary="Duplicate condition replaces Multiple condition"/>
   </revisionHistory>
@@ -66,7 +65,7 @@
     <cluster id="0x001D" name="Descriptor" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="TAGLIST">
+        <feature code="" name="TagList">
           <mandatoryConform>
             <attribute name="Duplicate"/>
           </mandatoryConform>
diff --git a/data_model/device_types/BasicVideoPlayer.xml b/data_model/device_types/BasicVideoPlayer.xml
index 2b9b52c..ed82d08 100644
--- a/data_model/device_types/BasicVideoPlayer.xml
+++ b/data_model/device_types/BasicVideoPlayer.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0028" name="Basic Video Player" revision="2">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to device type revision numbers"/>
     <revision revision="1" summary="Initial release of this document"/>
     <revision revision="2" summary="Added Messages and Content Control clusters"/>
   </revisionHistory>
diff --git a/data_model/device_types/BridgedNode.xml b/data_model/device_types/BridgedNode.xml
index 29b7a59..5941420 100644
--- a/data_model/device_types/BridgedNode.xml
+++ b/data_model/device_types/BridgedNode.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0013" name="Bridged Node" revision="2">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to device type revision numbers"/>
     <revision revision="1" summary="Initial release of this document"/>
     <revision revision="2" summary="Added Power Source to device type; Deprecated Power Source Configuration"/>
   </revisionHistory>
diff --git a/data_model/device_types/CastingVideoClient.xml b/data_model/device_types/CastingVideoClient.xml
index d79506b..8f816b3 100644
--- a/data_model/device_types/CastingVideoClient.xml
+++ b/data_model/device_types/CastingVideoClient.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0029" name="Casting Video Client" revision="2">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to device type revision numbers"/>
     <revision revision="1" summary="Initial release of this document"/>
     <revision revision="2" summary="Added Content App Observer, Messages and Content Control Clusters"/>
   </revisionHistory>
diff --git a/data_model/device_types/CastingVideoPlayer.xml b/data_model/device_types/CastingVideoPlayer.xml
index 3364165..0b65f4f 100644
--- a/data_model/device_types/CastingVideoPlayer.xml
+++ b/data_model/device_types/CastingVideoPlayer.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0023" name="Casting Video Player" revision="2">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to device type revision numbers"/>
     <revision revision="1" summary="Initial release of this document"/>
     <revision revision="2" summary="Added Messages and Content Control clusters"/>
   </revisionHistory>
@@ -109,7 +108,7 @@
         <attribute name="ContentAppPlatform"/>
       </mandatoryConform>
       <features>
-        <feature code="" name="Application">
+        <feature code="" name="ApplicationPlatform">
           <mandatoryConform/>
         </feature>
       </features>
diff --git a/data_model/device_types/ColorDimmerSwitch.xml b/data_model/device_types/ColorDimmerSwitch.xml
index 0da15b8..e391700 100644
--- a/data_model/device_types/ColorDimmerSwitch.xml
+++ b/data_model/device_types/ColorDimmerSwitch.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0105" name="Color Dimmer Switch" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
     <revision revision="3" summary="Updated the Scenes cluster to Scenes Management with Cluster ID: 0x0062"/>
diff --git a/data_model/device_types/ColorTemperatureLight.xml b/data_model/device_types/ColorTemperatureLight.xml
index 5a54a36..e782dd2 100644
--- a/data_model/device_types/ColorTemperatureLight.xml
+++ b/data_model/device_types/ColorTemperatureLight.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x010C" name="Color Temperature Light" revision="4">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
     <revision revision="3" summary="Added optional occupancy sensing"/>
@@ -80,7 +79,7 @@
     <cluster id="0x0006" name="On/Off" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="LT">
+        <feature code="" name="Lighting">
           <mandatoryConform/>
         </feature>
       </features>
@@ -88,10 +87,10 @@
     <cluster id="0x0008" name="Level Control" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="OO">
+        <feature code="" name="OnOff">
           <mandatoryConform/>
         </feature>
-        <feature code="" name="LT">
+        <feature code="" name="Lighting">
           <mandatoryConform/>
         </feature>
       </features>
@@ -118,7 +117,7 @@
     <cluster id="0x0300" name="Color Control" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="CT">
+        <feature code="" name="ColorTemperature">
           <mandatoryConform/>
         </feature>
       </features>
diff --git a/data_model/device_types/ContentApp.xml b/data_model/device_types/ContentApp.xml
index 84bf586..300e312 100644
--- a/data_model/device_types/ContentApp.xml
+++ b/data_model/device_types/ContentApp.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0024" name="Content App" revision="2">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to device type revision numbers"/>
     <revision revision="1" summary="Initial release of this document"/>
     <revision revision="2" summary="Added Content App Observer cluster"/>
   </revisionHistory>
@@ -86,7 +85,7 @@
     <cluster id="0x050C" name="Application Launcher" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="Application">
+        <feature code="" name="ApplicationPlatform">
           <disallowConform/>
         </feature>
       </features>
diff --git a/data_model/device_types/ControlBridge.xml b/data_model/device_types/ControlBridge.xml
index f427bec..27e00f6 100644
--- a/data_model/device_types/ControlBridge.xml
+++ b/data_model/device_types/ControlBridge.xml
@@ -57,8 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0840" name="Control Bridge" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Revision is zero before revision numbers are defined and is
-required."/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
     <revision revision="3" summary="Updated the Scenes cluster to Scenes Management with Cluster ID: 0x0062"/>
diff --git a/data_model/device_types/CookSurface.xml b/data_model/device_types/CookSurface.xml
index b18897b..a32425e 100644
--- a/data_model/device_types/CookSurface.xml
+++ b/data_model/device_types/CookSurface.xml
@@ -65,7 +65,7 @@
     <cluster id="0x0006" name="On/Off" side="server">
       <optionalConform/>
       <features>
-        <feature code="" name="OFFONLY">
+        <feature code="" name="OffOnly">
           <mandatoryConform/>
         </feature>
       </features>
diff --git a/data_model/device_types/DimmableLight.xml b/data_model/device_types/DimmableLight.xml
index ce0c280..ec66b81 100644
--- a/data_model/device_types/DimmableLight.xml
+++ b/data_model/device_types/DimmableLight.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0101" name="Dimmable Light" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
     <revision revision="3" summary="Updated the Scenes cluster to Scenes Management with Cluster ID: 0x0062"/>
@@ -79,7 +78,7 @@
     <cluster id="0x0006" name="On/Off" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="LT">
+        <feature code="" name="Lighting">
           <mandatoryConform/>
         </feature>
       </features>
@@ -87,10 +86,10 @@
     <cluster id="0x0008" name="Level Control" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="LT">
+        <feature code="" name="Lighting">
           <mandatoryConform/>
         </feature>
-        <feature code="" name="OO">
+        <feature code="" name="OnOff">
           <mandatoryConform/>
         </feature>
       </features>
diff --git a/data_model/device_types/DimmablePlug-InUnit.xml b/data_model/device_types/DimmablePlug-InUnit.xml
index 9889564..bbd0439 100644
--- a/data_model/device_types/DimmablePlug-InUnit.xml
+++ b/data_model/device_types/DimmablePlug-InUnit.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x010B" name="Dimmable Plug" revision="4">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
     <revision revision="3" summary="Added optional occupancy sensing"/>
@@ -80,7 +79,7 @@
     <cluster id="0x0006" name="On/Off" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="LT">
+        <feature code="" name="Lighting">
           <mandatoryConform/>
         </feature>
       </features>
@@ -88,10 +87,10 @@
     <cluster id="0x0008" name="Level Control" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="OO">
+        <feature code="" name="OnOff">
           <mandatoryConform/>
         </feature>
-        <feature code="" name="LT">
+        <feature code="" name="Lighting">
           <mandatoryConform/>
         </feature>
       </features>
diff --git a/data_model/device_types/DimmerSwitch.xml b/data_model/device_types/DimmerSwitch.xml
index 137adfd..008e54e 100644
--- a/data_model/device_types/DimmerSwitch.xml
+++ b/data_model/device_types/DimmerSwitch.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0104" name="Dimmer Switch" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
     <revision revision="3" summary="Updated the Scenes cluster to Scenes Management with Cluster ID: 0x0062"/>
diff --git a/data_model/device_types/Dishwasher.xml b/data_model/device_types/Dishwasher.xml
index a07fdc9..6e351f3 100644
--- a/data_model/device_types/Dishwasher.xml
+++ b/data_model/device_types/Dishwasher.xml
@@ -68,7 +68,7 @@
     <cluster id="0x0006" name="On/Off" side="server">
       <optionalConform/>
       <features>
-        <feature code="" name="DF">
+        <feature code="" name="DeadFrontBehavior">
           <mandatoryConform/>
         </feature>
       </features>
diff --git a/data_model/device_types/DoorLock.xml b/data_model/device_types/DoorLock.xml
index 9b6c7fd..8b73bbf 100644
--- a/data_model/device_types/DoorLock.xml
+++ b/data_model/device_types/DoorLock.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x000A" name="Door Lock" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="Initial Matter release"/>
     <revision revision="3" summary="Updated the Scenes cluster to Scenes Management with Cluster ID: 0x0062"/>
@@ -77,7 +76,7 @@
     <cluster id="0x0101" name="Door Lock" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="USR">
+        <feature code="" name="User">
           <mandatoryConform>
             <andTerm>
               <condition name="Matter"/>
@@ -90,7 +89,7 @@
             </andTerm>
           </mandatoryConform>
         </feature>
-        <feature code="" name="RID">
+        <feature code="" name="RFIDCredential">
           <otherwiseConform>
             <provisionalConform/>
             <optionalConform/>
diff --git a/data_model/device_types/DoorLockController.xml b/data_model/device_types/DoorLockController.xml
index 0279f01..30342b9 100644
--- a/data_model/device_types/DoorLockController.xml
+++ b/data_model/device_types/DoorLockController.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x000B" name="Door Lock Controller" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="Initial Matter release"/>
     <revision revision="3" summary="Updated the Scenes cluster to Scenes Management with Cluster ID: 0x0062"/>
diff --git a/data_model/device_types/EnergyTariffCalendar.xml b/data_model/device_types/EnergyTariffCalendar.xml
index 7b0becf..ee3a6b9 100644
--- a/data_model/device_types/EnergyTariffCalendar.xml
+++ b/data_model/device_types/EnergyTariffCalendar.xml
@@ -55,9 +55,9 @@
 508 Second Street, Suite 206

 Davis, CA 95616, USA

 -->
-<deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x050B" name="Energy Tariff Calendar" revision="0">
+<deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x050B" name="Energy Tariff Calendar" revision="1">
   <revisionHistory>
-    <revision revision="0" summary="Initial Matter release"/>
+    <revision revision="1" summary="Initial Matter release"/>
   </revisionHistory>
   <classification class="simple" scope="endpoint"/>
   <conditions/>
diff --git a/data_model/device_types/ExtendedColorLight.xml b/data_model/device_types/ExtendedColorLight.xml
index 97cb3ea..75988ad 100644
--- a/data_model/device_types/ExtendedColorLight.xml
+++ b/data_model/device_types/ExtendedColorLight.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x010D" name="Extended Color Light" revision="4">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation; integrate DM CCB 3501"/>
     <revision revision="3" summary="Added optional occupancy sensing"/>
@@ -80,7 +79,7 @@
     <cluster id="0x0006" name="On/Off" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="LT">
+        <feature code="" name="Lighting">
           <mandatoryConform/>
         </feature>
       </features>
@@ -88,10 +87,10 @@
     <cluster id="0x0008" name="Level Control" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="OO">
+        <feature code="" name="OnOff">
           <mandatoryConform/>
         </feature>
-        <feature code="" name="LT">
+        <feature code="" name="Lighting">
           <mandatoryConform/>
         </feature>
       </features>
@@ -118,19 +117,19 @@
     <cluster id="0x0300" name="Color Control" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="HS">
+        <feature code="" name="HueSaturation">
           <optionalConform/>
         </feature>
-        <feature code="" name="EHUE">
+        <feature code="" name="EnhancedHue">
           <optionalConform/>
         </feature>
-        <feature code="" name="CL">
+        <feature code="" name="ColorLoop">
           <optionalConform/>
         </feature>
         <feature code="" name="XY">
           <mandatoryConform/>
         </feature>
-        <feature code="" name="CT">
+        <feature code="" name="ColorTemperature">
           <mandatoryConform/>
         </feature>
       </features>
diff --git a/data_model/device_types/FlowSensor.xml b/data_model/device_types/FlowSensor.xml
index 8c60458..bcc27b3 100644
--- a/data_model/device_types/FlowSensor.xml
+++ b/data_model/device_types/FlowSensor.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0306" name="Flow Sensor" revision="2">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
   </revisionHistory>
diff --git a/data_model/device_types/GenericSwitch.xml b/data_model/device_types/GenericSwitch.xml
index e381914..acfa0a9 100644
--- a/data_model/device_types/GenericSwitch.xml
+++ b/data_model/device_types/GenericSwitch.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x000F" name="Generic Switch" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to device type revision numbers"/>
     <revision revision="1" summary="Initial release of this document"/>
     <revision revision="2" summary="Removed requirement for Fixed Label cluster (can use TagList which was added in Descriptor cluster)"/>
     <revision revision="3" summary="Updated the Scenes cluster to Scenes Management with Cluster ID: 0x0062"/>
diff --git a/data_model/device_types/HumiditySensor.xml b/data_model/device_types/HumiditySensor.xml
index d59ed7c..4a1808d 100644
--- a/data_model/device_types/HumiditySensor.xml
+++ b/data_model/device_types/HumiditySensor.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0307" name="Humidity Sensor" revision="2">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to device type revision numbers"/>
     <revision revision="1" summary="Zigbee 3.0"/>
     <revision revision="2" summary="New data model format and notation"/>
   </revisionHistory>
diff --git a/data_model/device_types/LaundryDryer.xml b/data_model/device_types/LaundryDryer.xml
index 78f9383..d4692c7 100644
--- a/data_model/device_types/LaundryDryer.xml
+++ b/data_model/device_types/LaundryDryer.xml
@@ -68,7 +68,7 @@
     <cluster id="0x0006" name="On/Off" side="server">
       <optionalConform/>
       <features>
-        <feature code="" name="DF">
+        <feature code="" name="DeadFrontBehavior">
           <mandatoryConform/>
         </feature>
       </features>
diff --git a/data_model/device_types/LaundryWasher.xml b/data_model/device_types/LaundryWasher.xml
index f0f4821..03b85f3 100644
--- a/data_model/device_types/LaundryWasher.xml
+++ b/data_model/device_types/LaundryWasher.xml
@@ -68,7 +68,7 @@
     <cluster id="0x0006" name="On/Off" side="server">
       <optionalConform/>
       <features>
-        <feature code="" name="DF">
+        <feature code="" name="DeadFrontBehavior">
           <mandatoryConform/>
         </feature>
       </features>
diff --git a/data_model/device_types/LightSensor.xml b/data_model/device_types/LightSensor.xml
index 618901b..0eca130 100644
--- a/data_model/device_types/LightSensor.xml
+++ b/data_model/device_types/LightSensor.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0106" name="Light Sensor" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
     <revision revision="3" summary="Restricting Groups client to Zigbee."/>
diff --git a/data_model/device_types/ModeSelectDeviceType.xml b/data_model/device_types/ModeSelectDeviceType.xml
index 748dc1b..7848ba0 100644
--- a/data_model/device_types/ModeSelectDeviceType.xml
+++ b/data_model/device_types/ModeSelectDeviceType.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0027" name="Mode Select" revision="1">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to device type revision numbers"/>
     <revision revision="1" summary="Initial release of this document"/>
   </revisionHistory>
   <classification class="simple" scope="endpoint"/>
diff --git a/data_model/device_types/OccupancySensor.xml b/data_model/device_types/OccupancySensor.xml
index 1ac4e0a..29213e4 100644
--- a/data_model/device_types/OccupancySensor.xml
+++ b/data_model/device_types/OccupancySensor.xml
@@ -55,13 +55,11 @@
 508 Second Street, Suite 206

 Davis, CA 95616, USA

 -->
-<deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0107" name="Occupancy Sensor" revision="4">
+<deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0107" name="Occupancy Sensor" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
     <revision revision="3" summary="Restricting Groups client to Zigbee."/>
-    <revision revision="4" summary="Add Boolean State Configuration as optional cluster"/>
   </revisionHistory>
   <classification class="simple" scope="endpoint"/>
   <conditions/>
@@ -69,9 +67,6 @@
     <cluster id="0x0003" name="Identify" side="server">
       <mandatoryConform/>
     </cluster>
-    <cluster id="0x0080" name="Boolean State Configuration" side="server">
-      <optionalConform/>
-    </cluster>
     <cluster id="0x0406" name="Occupancy Sensing" side="server">
       <mandatoryConform/>
     </cluster>
diff --git a/data_model/device_types/OnOffLight.xml b/data_model/device_types/OnOffLight.xml
index 59e8739..fe98ac6 100644
--- a/data_model/device_types/OnOffLight.xml
+++ b/data_model/device_types/OnOffLight.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0100" name="On/Off Light" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
     <revision revision="3" summary="Updated the Scenes cluster to Scenes Management with Cluster ID: 0x0062"/>
@@ -79,7 +78,7 @@
     <cluster id="0x0006" name="On/Off" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="LT">
+        <feature code="" name="Lighting">
           <mandatoryConform/>
         </feature>
       </features>
@@ -87,10 +86,10 @@
     <cluster id="0x0008" name="Level Control" side="server">
       <optionalConform/>
       <features>
-        <feature code="" name="OO">
+        <feature code="" name="OffOnly">
           <mandatoryConform/>
         </feature>
-        <feature code="" name="LT">
+        <feature code="" name="Lighting">
           <mandatoryConform/>
         </feature>
       </features>
diff --git a/data_model/device_types/OnOffLightSwitch.xml b/data_model/device_types/OnOffLightSwitch.xml
index 9b9d72b..9896264 100644
--- a/data_model/device_types/OnOffLightSwitch.xml
+++ b/data_model/device_types/OnOffLightSwitch.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0103" name="On/Off Light Switch" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
     <revision revision="3" summary="Updated the Scenes cluster to Scenes Management with Cluster ID: 0x0062"/>
diff --git a/data_model/device_types/OnOffPlug-inUnit.xml b/data_model/device_types/OnOffPlug-inUnit.xml
index 4b4f497..dbcb7f7 100644
--- a/data_model/device_types/OnOffPlug-inUnit.xml
+++ b/data_model/device_types/OnOffPlug-inUnit.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x010A" name="On/Off Plug" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
     <revision revision="3" summary="Updated the Scenes cluster to Scenes Management with Cluster ID: 0x0062"/>
@@ -79,7 +78,7 @@
     <cluster id="0x0006" name="On/Off" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="LT">
+        <feature code="" name="Lighting">
           <mandatoryConform/>
         </feature>
       </features>
@@ -87,10 +86,10 @@
     <cluster id="0x0008" name="Level Control" side="server">
       <optionalConform/>
       <features>
-        <feature code="" name="OO">
+        <feature code="" name="OffOnly">
           <mandatoryConform/>
         </feature>
-        <feature code="" name="LT">
+        <feature code="" name="Lighting">
           <mandatoryConform/>
         </feature>
       </features>
diff --git a/data_model/device_types/OnOffSensor.xml b/data_model/device_types/OnOffSensor.xml
index e1bd3c3..cdd5958 100644
--- a/data_model/device_types/OnOffSensor.xml
+++ b/data_model/device_types/OnOffSensor.xml
@@ -57,8 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0850" name="On/Off Sensor" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Revision is zero before revision numbers are defined and is
-required."/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
     <revision revision="3" summary="Updated the Scenes cluster to Scenes Management with Cluster ID: 0x0062"/>
diff --git a/data_model/device_types/OtaProvider.xml b/data_model/device_types/OtaProvider.xml
index 28c4e3c..375ab4e 100644
--- a/data_model/device_types/OtaProvider.xml
+++ b/data_model/device_types/OtaProvider.xml
@@ -57,16 +57,15 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0014" name="OTA Provider" revision="1">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to device type revision numbers"/>
     <revision revision="1" summary="Initial release of this document"/>
   </revisionHistory>
   <classification class="utility" scope="node"/>
   <clusters>
-    <cluster id="0x0012" name="OTA Software Update Requestor" side="client">
-      <optionalConform/>
-    </cluster>
-    <cluster id="0x0014" name="OTA Software Update Provider" side="server">
+    <cluster id="0x0029" name="OTA Software Update Provider" side="server">
       <mandatoryConform/>
     </cluster>
+    <cluster id="0x002A" name="OTA Software Update Requestor" side="client">
+      <optionalConform/>
+    </cluster>
   </clusters>
 </deviceType>
\ No newline at end of file
diff --git a/data_model/device_types/OtaRequestor.xml b/data_model/device_types/OtaRequestor.xml
index 7f5a8ca..840e322 100644
--- a/data_model/device_types/OtaRequestor.xml
+++ b/data_model/device_types/OtaRequestor.xml
@@ -57,15 +57,14 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0012" name="OTA Requestor" revision="1">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to device type revision numbers"/>
     <revision revision="1" summary="Initial release of this document"/>
   </revisionHistory>
   <classification class="utility" scope="node"/>
   <clusters>
-    <cluster id="0x0012" name="OTA Software Update Requestor" side="server">
+    <cluster id="0x0029" name="OTA Software Update Provider" side="client">
       <mandatoryConform/>
     </cluster>
-    <cluster id="0x0014" name="OTA Software Update Provider" side="client">
+    <cluster id="0x002A" name="OTA Software Update Requestor" side="server">
       <mandatoryConform/>
     </cluster>
   </clusters>
diff --git a/data_model/device_types/PressureSensor.xml b/data_model/device_types/PressureSensor.xml
index f472daa..f2b7855d 100644
--- a/data_model/device_types/PressureSensor.xml
+++ b/data_model/device_types/PressureSensor.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0305" name="Pressure Sensor" revision="2">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
   </revisionHistory>
diff --git a/data_model/device_types/Pump.xml b/data_model/device_types/Pump.xml
index 9ab8700..f8c0ce9 100644
--- a/data_model/device_types/Pump.xml
+++ b/data_model/device_types/Pump.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0303" name="Pump" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
     <revision revision="3" summary="Updated the Scenes cluster to Scenes Management with Cluster ID: 0x0062"/>
diff --git a/data_model/device_types/PumpController.xml b/data_model/device_types/PumpController.xml
index ca1486e..3b27f35 100644
--- a/data_model/device_types/PumpController.xml
+++ b/data_model/device_types/PumpController.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0304" name="Pump Controller" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
     <revision revision="3" summary="Updated the Scenes cluster to Scenes Management with Cluster ID: 0x0062"/>
diff --git a/data_model/device_types/RoomAirConditioner.xml b/data_model/device_types/RoomAirConditioner.xml
index e8c557a..7f3acd5 100644
--- a/data_model/device_types/RoomAirConditioner.xml
+++ b/data_model/device_types/RoomAirConditioner.xml
@@ -72,7 +72,7 @@
     <cluster id="0x0006" name="On/Off" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="DF">
+        <feature code="" name="DeadFrontBehavior">
           <mandatoryConform/>
         </feature>
       </features>
diff --git a/data_model/device_types/RootNodeDeviceType.xml b/data_model/device_types/RootNodeDeviceType.xml
index 57b2040..c2028f0 100644
--- a/data_model/device_types/RootNodeDeviceType.xml
+++ b/data_model/device_types/RootNodeDeviceType.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0016" name="Root Node" revision="2">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to device type revision numbers"/>
     <revision revision="1" summary="Initial release of this document"/>
     <revision revision="2" summary="Added Power Source to device type; Deprecated Power Source Configuration"/>
   </revisionHistory>
@@ -155,17 +154,11 @@
     </cluster>
     <cluster id="0x0046" name="ICD Management" side="server">
       <quality singleton="true"/>
-      <otherwiseConform>
-        <provisionalConform/>
-        <mandatoryConform>
-          <orTerm>
-            <feature name="SIT"/>
-            <feature name="LIT"/>
-          </orTerm>
-        </mandatoryConform>
-      </otherwiseConform>
+      <mandatoryConform>
+        <feature name="SIT"/>
+      </mandatoryConform>
       <features>
-        <feature code="" name="LITS">
+        <feature code="" name="LongIdleTimeSupport">
           <otherwiseConform>
             <provisionalConform/>
             <mandatoryConform>
diff --git a/data_model/device_types/Speaker.xml b/data_model/device_types/Speaker.xml
index f8bc0ab..d1d9d85 100644
--- a/data_model/device_types/Speaker.xml
+++ b/data_model/device_types/Speaker.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0022" name="Speaker" revision="1">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to device type revision numbers"/>
     <revision revision="1" summary="Initial release of this document"/>
   </revisionHistory>
   <classification class="simple" scope="endpoint"/>
diff --git a/data_model/device_types/TemperatureSensor.xml b/data_model/device_types/TemperatureSensor.xml
index 19d3fef..d6ccd5c 100644
--- a/data_model/device_types/TemperatureSensor.xml
+++ b/data_model/device_types/TemperatureSensor.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0302" name="Temperature Sensor" revision="2">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
   </revisionHistory>
diff --git a/data_model/device_types/Thermostat.xml b/data_model/device_types/Thermostat.xml
index 9f5c8e7..16c0efe 100644
--- a/data_model/device_types/Thermostat.xml
+++ b/data_model/device_types/Thermostat.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0301" name="Thermostat" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to device type revision numbers"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation, added Clusters required for Matter support, restricted legacy elements to Zigbee only"/>
     <revision revision="3" summary="Addition of Energy Preference cluster and updated the Scenes cluster to Scenes Management with Cluster ID: 0x0062"/>
diff --git a/data_model/device_types/ThreadBorderRouter.xml b/data_model/device_types/ThreadBorderRouter.xml
index 5a069e5..a0aee3b 100644
--- a/data_model/device_types/ThreadBorderRouter.xml
+++ b/data_model/device_types/ThreadBorderRouter.xml
@@ -68,7 +68,7 @@
     <cluster id="0x0031" name="Network Commissioning" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="TH">
+        <feature code="" name="ThreadNetworkInterface">
           <mandatoryConform/>
         </feature>
       </features>
diff --git a/data_model/device_types/VideoRemoteControl.xml b/data_model/device_types/VideoRemoteControl.xml
index 33bab95..7896a6f 100644
--- a/data_model/device_types/VideoRemoteControl.xml
+++ b/data_model/device_types/VideoRemoteControl.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x002A" name="Video Remote Control" revision="2">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to device type revision numbers"/>
     <revision revision="1" summary="Initial release of this document"/>
     <revision revision="2" summary="Added Content Control cluster"/>
   </revisionHistory>
diff --git a/data_model/device_types/WaterHeater.xml b/data_model/device_types/WaterHeater.xml
index 7b06da2..eeebfee 100644
--- a/data_model/device_types/WaterHeater.xml
+++ b/data_model/device_types/WaterHeater.xml
@@ -71,10 +71,10 @@
     <cluster id="0x0098" name="Device Energy Management" side="server">
       <optionalConform/>
       <features>
-        <feature code="" name="PFR">
+        <feature code="" name="PowerForecastReporting">
           <optionalConform/>
         </feature>
-        <feature code="" name="PFA">
+        <feature code="" name="ForecastAdjustment">
           <optionalConform/>
         </feature>
       </features>
@@ -85,10 +85,10 @@
     <cluster id="0x0201" name="Thermostat" side="server">
       <mandatoryConform/>
       <features>
-        <feature code="" name="HEAT">
+        <feature code="" name="Heating">
           <mandatoryConform/>
         </feature>
-        <feature code="" name="SCH">
+        <feature code="" name="ScheduleConfiguration">
           <mandatoryConform/>
         </feature>
       </features>
diff --git a/data_model/device_types/WindowCovering.xml b/data_model/device_types/WindowCovering.xml
index b9a33b4..e647e8a 100644
--- a/data_model/device_types/WindowCovering.xml
+++ b/data_model/device_types/WindowCovering.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0202" name="Window Covering" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0."/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
     <revision revision="3" summary="Updated the Scenes cluster to Scenes Management with Cluster ID: 0x0062"/>
@@ -94,25 +93,29 @@
         </feature>
       </features>
       <commands>
-        <command id="" name="GoToLiftPercentage">
-          <field name="LiftPercentageValue">
+        <command id="" name="GoToLiftPercentage.LiftPercentageValue">
+          <field>
             <mandatoryConform>
               <condition name="Zigbee"/>
             </mandatoryConform>
           </field>
-          <field name="LiftPercent100thsValue">
+        </command>
+        <command id="" name="GoToTiltPercentage.TiltPercentageValue">
+          <field>
+            <mandatoryConform>
+              <condition name="Zigbee"/>
+            </mandatoryConform>
+          </field>
+        </command>
+        <command id="" name="GoToLiftPercentage.LiftPercent100thsValue">
+          <field>
             <mandatoryConform>
               <condition name="Matter"/>
             </mandatoryConform>
           </field>
         </command>
-        <command id="" name="GoToTiltPercentage">
-          <field name="TiltPercentageValue">
-            <mandatoryConform>
-              <condition name="Zigbee"/>
-            </mandatoryConform>
-          </field>
-          <field name="TiltPercent100thsValue">
+        <command id="" name="GoToTiltPercentage.TiltPercent100thsValue">
+          <field>
             <mandatoryConform>
               <condition name="Matter"/>
             </mandatoryConform>
diff --git a/data_model/device_types/WindowCoveringController.xml b/data_model/device_types/WindowCoveringController.xml
index 76f0cf1..4069536 100644
--- a/data_model/device_types/WindowCoveringController.xml
+++ b/data_model/device_types/WindowCoveringController.xml
@@ -57,7 +57,6 @@
 -->
 <deviceType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd devicetype devicetype.xsd" id="0x0203" name="Window Covering Controller" revision="3">
   <revisionHistory>
-    <revision revision="0" summary="Represents device definitions prior to Zigbee 3.0"/>
     <revision revision="1" summary="Initial Zigbee 3.0 release"/>
     <revision revision="2" summary="New data model format and notation"/>
     <revision revision="3" summary="Updated the Scenes cluster to Scenes Management with Cluster ID: 0x0062"/>
@@ -90,7 +89,7 @@
     <cluster id="0x0102" name="Window Covering" side="client">
       <mandatoryConform/>
       <features>
-        <feature code="" name="Absolute">
+        <feature code="" name="AbsolutePosition">
           <mandatoryConform>
             <condition name="Zigbee"/>
           </mandatoryConform>
diff --git a/data_model/spec_sha b/data_model/spec_sha
index e9d780b..cb39a57 100644
--- a/data_model/spec_sha
+++ b/data_model/spec_sha
@@ -1 +1 @@
-c1a1e1e6bcf201334eb0b5216a464b39d9827ec4
+5cf986ac3980bb2b658bae7bf13df8aeec021999