diff --git a/src-electron/zcl/zcl-loader-dotdot.js b/src-electron/zcl/zcl-loader-dotdot.js
index ba92f645ec47741b02bfa90b942b4da805e0dd23..7e1d2b051515f52aa7e6f40e002234adec64e117 100644
--- a/src-electron/zcl/zcl-loader-dotdot.js
+++ b/src-electron/zcl/zcl-loader-dotdot.js
@@ -767,8 +767,13 @@ async function processDataType(db, filePath, packageId, data, dataType) {
     env.logError(
       'Could not find the discriminator for the data type: ' + dataType
     )
-    queryNotification.setNotification(db, "ERROR", 
-    'Could not find the discriminator for the data type: ' + dataType, packageId, 1)
+    queryNotification.setNotification(
+      db,
+      'ERROR',
+      'Could not find the discriminator for the data type: ' + dataType,
+      packageId,
+      1
+    )
   }
 }
 
@@ -1255,7 +1260,7 @@ async function loadIndividualDotDotFile(db, filePath) {
  * @param {*} ctx Context of loading.
  * @returns a Promise that resolves with the db.
  */
-async function loadDotdotZcl(db, metafile) {
+async function loadToplevelXmlFile(db, metafile) {
   let ctx = {
     metadataFile: metafile,
     db: db,
@@ -1287,7 +1292,7 @@ async function loadDotdotZcl(db, metafile) {
     await zclLoader.processZclPostLoading(db, ctx.packageId)
   } catch (err) {
     env.logError(err)
-    queryNotification.setNotification(db, "ERROR", err, ctx.packageId, 1)
+    queryNotification.setNotification(db, 'ERROR', err, ctx.packageId, 1)
     throw err
   } finally {
     await dbApi.dbCommit(db)
@@ -1295,5 +1300,5 @@ async function loadDotdotZcl(db, metafile) {
   return ctx
 }
 
-exports.loadDotdotZcl = loadDotdotZcl
+exports.loadToplevelXmlFile = loadToplevelXmlFile
 exports.loadIndividualDotDotFile = loadIndividualDotDotFile
diff --git a/src-electron/zcl/zcl-loader-new-data-model.js b/src-electron/zcl/zcl-loader-new-data-model.js
new file mode 100644
index 0000000000000000000000000000000000000000..3409183a02742a4c8104af014f39fe40262bfcf6
--- /dev/null
+++ b/src-electron/zcl/zcl-loader-new-data-model.js
@@ -0,0 +1,129 @@
+/**
+ *
+ *    Copyright (c) 2023 Silicon Labs
+ *
+ *    Licensed under the Apache License, Version 2.0 (the "License");
+ *    you may not use this file except in compliance with the License.
+ *    You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *    Unless required by applicable law or agreed to in writing, software
+ *    distributed under the License is distributed on an "AS IS" BASIS,
+ *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *    See the License for the specific language governing permissions and
+ *    limitations under the License.
+ */
+const util = require('../util/util')
+const fs = require('fs')
+const fsp = fs.promises
+const types = require('../util/types')
+const env = require('../util/env')
+const queryLoader = require('../db/query-loader')
+
+/**
+ * Parses the new XML files. Returns an object containing
+ * loaded data:
+ *    clusterIdsLoaded: array of cluster ids that were loaded
+ *
+ * @param {*} db
+ * @param {*} packageId
+ * @param {*} files
+ * @param {*} context
+ * @returns Promise that resolves when all the new XML data is loaded.
+ */
+async function parseNewXmlFiles(db, packageId, files, context) {
+  let ret = {
+    clusterIdsLoaded: [],
+  }
+  if (files == null || files.length == 0) {
+    return ret
+  }
+  let clusters = []
+  for (let f of files) {
+    // First parse the XML file into a normalized object.
+    let cluster = await parseSingleNewXmlFile(f)
+    if (cluster == null) {
+      env.logWarning(
+        `Invalid XML file: ${f}, missing toplevel 'cluster' element.`
+      )
+    } else {
+      clusters.push(cluster)
+    }
+  }
+
+  // We collected the data back. Now we have to write it into the database.
+  await queryLoader.insertClusters(db, packageId, clusters)
+
+  ret.clusterIdsLoaded.push(...clusters.map((cluster) => cluster.code))
+  return ret
+}
+
+function prepXmlFeature(f) {
+  let feature = {}
+  feature.bit = parseInt(f.$.bit)
+  feature.code = f.$.code
+  feature.name = f.$.name
+  feature.summary = f.$.summary
+  return feature
+}
+function prepXmlAttribute(a) {
+  let attribute = {}
+  attribute.id = types.hexStringToInt(a.$.id)
+  attribute.name = a.$.name
+  attribute.type = a.$.type
+  attribute.default = a.$.default
+  return attribute
+}
+function prepXmlCommand(c) {
+  let command = {}
+  command.id = types.hexStringToInt(c.$.id)
+  command.name = c.$.name
+  return command
+}
+function prepXmlEvent(e) {
+  let event = {}
+  event.id = types.hexStringToInt(e.$.id)
+  event.name = e.$.name
+  return event
+}
+
+async function parseSingleNewXmlFile(f) {
+  let content = await fsp.readFile(f)
+  let xmlObject = await util.parseXml(content)
+  if (xmlObject.cluster == null) {
+    return null
+  }
+
+  // Ok, now we need to parse the thing properly....
+  let data = { features: [], attributes: [], commands: [], events: [] }
+
+  data.code = types.hexStringToInt(xmlObject.cluster.$.id)
+  data.name = xmlObject.cluster.$.name
+  data.revision = xmlObject.cluster.$.revision
+
+  if (xmlObject.cluster.features) {
+    for (let feature of xmlObject.cluster.features[0].feature) {
+      data.features.push(prepXmlFeature(feature))
+    }
+  }
+  if (xmlObject.cluster.attributes) {
+    for (let attribute of xmlObject.cluster.attributes[0].attribute) {
+      data.attributes.push(prepXmlAttribute(attribute))
+    }
+  }
+  if (xmlObject.cluster.commands) {
+    for (let command of xmlObject.cluster.commands[0].command) {
+      data.commands.push(prepXmlCommand(command))
+    }
+  }
+  if (xmlObject.cluster.events) {
+    for (let event of xmlObject.cluster.events[0].event) {
+      data.events.push(prepXmlEvent(event))
+    }
+  }
+
+  return data
+}
+
+exports.parseNewXmlFiles = parseNewXmlFiles
diff --git a/src-electron/zcl/zcl-loader-silabs.js b/src-electron/zcl/zcl-loader-silabs.js
index 08a6d148ea8b7b75a0f34251eb7a9030f39dc611..ec7bfdd05396c6d9e4dfed6e7a29c1dd0b474b82 100644
--- a/src-electron/zcl/zcl-loader-silabs.js
+++ b/src-electron/zcl/zcl-loader-silabs.js
@@ -32,6 +32,7 @@ const zclLoader = require('./zcl-loader')
 const _ = require('lodash')
 const querySessionNotification = require('../db/query-session-notification')
 const queryPackageNotification = require('../db/query-package-notification')
+const newDataModel = require('./zcl-loader-new-data-model')
 
 /**
  * Promises to read the JSON file and resolve all the data.
@@ -158,6 +159,15 @@ async function collectDataFromJsonFile(metadataFile, data) {
       automaticallyCreateFields: false,
     }
   }
+
+  if ('newXmlFile' in obj) {
+    returnObject.newXmlFile = obj.newXmlFile.map((f) =>
+      path.join(path.dirname(metadataFile), f)
+    )
+  } else {
+    returnObject.newXmlFile = []
+  }
+
   env.logDebug(
     `Resolving: ${returnObject.zclFiles}, version: ${returnObject.version}`
   )
@@ -665,11 +675,26 @@ function prepareCluster(cluster, context, isExtension = false) {
  */
 async function processClusters(db, filePath, packageId, data, context) {
   env.logDebug(`${filePath}, ${packageId}: ${data.length} clusters.`)
-  return queryLoader.insertClusters(
-    db,
-    packageId,
-    data.map((x) => prepareCluster(x, context))
-  )
+
+  // We prepare clusters, but we ignore the ones that have already been loaded.
+  let preparedClusters = data
+    .map((x) => prepareCluster(x, context))
+    .filter((cluster) => {
+      if (
+        context.clustersLoadedFromNewFiles &&
+        context.clustersLoadedFromNewFiles.includes(cluster.code)
+      ) {
+        env.logDebug(
+          `Bypassing loading of cluster ${cluster.code} from old files.`
+        )
+        return false
+      } else {
+        return true
+      }
+    })
+
+  // and then run the DB process.
+  return queryLoader.insertClusters(db, packageId, preparedClusters)
 }
 
 /**
@@ -1867,7 +1892,7 @@ async function parseZclFiles(db, packageId, zclFiles, context) {
     await processDataTypeDiscriminator(db, packageId, context.ZCLDataTypes)
 
   // Load the Types File first such the atomic types are loaded and can be
-  //referenced by other types
+  // referenced by other types
   let typesFiles = zclFiles.filter((file) => file.includes('types.xml'))
   let typeFilePromise = typesFiles.map((file) =>
     parseSingleZclFile(db, packageId, file, context)
@@ -2231,6 +2256,14 @@ async function processCustomZclDeviceType(db, packageId) {
     await queryLoader.insertDeviceTypes(db, packageId, customDeviceTypes)
 }
 
+async function loadZclJson(db, metafile) {
+  return loadZclJsonOrProperties(db, metafile, true)
+}
+
+async function loadZclProperties(db, metafile) {
+  return loadZclJsonOrProperties(db, metafile, false)
+}
+
 /**
  * Toplevel function that loads the toplevel metafile
  * and orchestrates the promise chain.
@@ -2240,7 +2273,7 @@ async function processCustomZclDeviceType(db, packageId) {
  * @param {*} ctx The context of loading.
  * @returns a Promise that resolves with the db.
  */
-async function loadSilabsZcl(db, metafile, isJson = false) {
+async function loadZclJsonOrProperties(db, metafile, isJson = false) {
   let ctx = {
     metadataFile: metafile,
     db: db,
@@ -2280,6 +2313,15 @@ async function loadSilabsZcl(db, metafile, isJson = false) {
         ctx.description
       )
     }
+
+    // Load the new XML files and collect which clusters were already loaded,
+    // so that they can be ommited while loading the old files.
+    let newFileResult = await newDataModel.parseNewXmlFiles(
+      db,
+      ctx.packageId,
+      ctx.newXmlFile
+    )
+    ctx.clustersLoadedFromNewFiles = newFileResult.clusterIdsLoaded
     await parseZclFiles(db, ctx.packageId, ctx.zclFiles, ctx)
     // Validate that our attributeAccessInterfaceAttributes, if present, is
     // sane.
@@ -2349,5 +2391,6 @@ async function loadSilabsZcl(db, metafile, isJson = false) {
   return ctx
 }
 
-exports.loadSilabsZcl = loadSilabsZcl
 exports.loadIndividualSilabsFile = loadIndividualSilabsFile
+exports.loadZclJson = loadZclJson
+exports.loadZclProperties = loadZclProperties
diff --git a/src-electron/zcl/zcl-loader.js b/src-electron/zcl/zcl-loader.js
index 62ab0379d1d0fbd92cce1f74500d1f98818b4d1e..2f8016d86467ce80964165485394943c3e75ba3e 100644
--- a/src-electron/zcl/zcl-loader.js
+++ b/src-electron/zcl/zcl-loader.js
@@ -109,11 +109,11 @@ async function loadZcl(db, metadataFile) {
   let resolvedMetafile = path.resolve(metadataFile)
 
   if (ext == '.xml') {
-    return dLoad.loadDotdotZcl(db, resolvedMetafile)
+    return dLoad.loadToplevelXmlFile(db, resolvedMetafile)
   } else if (ext == '.properties') {
-    return sLoad.loadSilabsZcl(db, resolvedMetafile, false)
+    return sLoad.loadZclProperties(db, resolvedMetafile)
   } else if (ext == '.json') {
-    return sLoad.loadSilabsZcl(db, resolvedMetafile, true)
+    return sLoad.loadZclJson(db, resolvedMetafile)
   } else {
     throw new Error(`Unknown zcl metafile type: ${metadataFile}`)
   }
@@ -135,7 +135,7 @@ async function loadIndividualFile(db, filePath, sessionId) {
       `Unable to read file: ${filePath}. Expecting an XML file with ZCL clusters.`
     )
     env.logWarning(err)
-    queryNotification.setNotification(db, "WARNING", err, sessionId, 2, 0)
+    queryNotification.setNotification(db, 'WARNING', err, sessionId, 2, 0)
     return { succeeded: false, err }
   }
 }
diff --git a/zcl-builtin/matter/new-data-model/ACL-Cluster.xml b/zcl-builtin/matter/new-data-model/ACL-Cluster.xml
new file mode 100644
index 0000000000000000000000000000000000000000..906427022afaec22d3088b2aeab3dcf4b5897622
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/ACL-Cluster.xml
@@ -0,0 +1,224 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x001f" name="AccessControl" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="ACL" scope="Node"/>
+  <dataTypes>
+    <enum name="AccessControlEntryAuthModeEnum">
+      <item value="1" name="PASE" summary="Passcode authenticated session">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="CASE" summary="Certificate authenticated session">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Group" summary="Group authenticated session">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="AccessControlEntryPrivilegeEnum">
+      <item value="1" name="View" summary="Can read and observe all (except Access Control Cluster and as seen by a non-Proxy)">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Proxy View" summary="Can read and observe all (as seen by a Proxy)">
+        <otherwiseConform>
+          <provisionalConform/>
+          <mandatoryConform/>
+        </otherwiseConform>
+      </item>
+      <item value="3" name="Operate" summary="View privileges, and can perform the primary function of this Node (except Access Control Cluster)">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="Manage" summary="Operate privileges, and can modify persistent configuration of this Node (except Access Control Cluster)">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="Administer" summary="Manage privileges, and can observe and modify the Access Control Cluster">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="ChangeTypeEnum">
+      <item value="0" name="Changed" summary="Entry or extension was changed">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Added" summary="Entry or extension was added">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Removed" summary="Entry or extension was removed">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <struct name="AccessControlEntryStruct">
+      <field id="1" name="Privilege" type="AccessControlEntryPrivilegeEnum">
+        <access fabricSensitive="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="AuthMode" type="AccessControlEntryAuthModeEnum">
+        <access fabricSensitive="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="Subjects" type="&lt;&lt;ref_DataTypeList&gt;&gt;[&lt;&lt;ref_SubjectId&gt;&gt;]">
+        <access fabricSensitive="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="max" value="SubjectsPerAccessControlEntry"/>
+      </field>
+      <field id="4" name="Targets" type="&lt;&lt;ref_DataTypeList&gt;&gt;[AccessControlTargetStruct Type]">
+        <access fabricSensitive="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="max" value="TargetsPerAccessControlEntry"/>
+      </field>
+    </struct>
+    <struct name="AccessControlExtensionStruct">
+      <field id="1" name="Data" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <access fabricSensitive="true"/>
+        <mandatoryConform/>
+        <constraint type="max" value="128"/>
+      </field>
+    </struct>
+    <struct name="AccessControlTargetStruct">
+      <field id="0" name="Cluster" type="cluster-id">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Endpoint" type="endpoint-no">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="DeviceType" type="devtype-id">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="ACL" type="&lt;&lt;ref_DataTypeList&gt;&gt;[AccessControlEntryStruct Type]" default="desc">
+      <access read="true" write="true" readPrivilege="admin" writePrivilege="operate"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0001" name="Extension" type="&lt;&lt;ref_DataTypeList&gt;&gt;[AccessControlExtensionStruct Type]" default="desc">
+      <access read="true" write="true" readPrivilege="admin" writePrivilege="operate"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0002" name="SubjectsPerAccessControlEntry" type="uint16" default="4">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="min" value="4"/>
+    </attribute>
+    <attribute id="0x0003" name="TargetsPerAccessControlEntry" type="uint16" default="3">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="min" value="3"/>
+    </attribute>
+    <attribute id="0x0004" name="AccessControlEntriesPerFabric" type="uint16" default="4">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="min" value="4"/>
+    </attribute>
+  </attributes>
+  <events>
+    <event id="0x00" name="AccessControlEntryChanged" priority="info">
+      <access readPrivilege="admin" fabricSensitive="true"/>
+      <mandatoryConform/>
+      <field id="1" name="AdminNodeID" type="node-id">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="2" name="AdminPasscodeID" type="uint16">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="ChangeType" type="ChangeTypeEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="LatestValue" type="AccessControlEntryStruct">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x01" name="AccessControlExtensionChanged" priority="info">
+      <access readPrivilege="admin" fabricSensitive="true"/>
+      <mandatoryConform/>
+      <field id="1" name="AdminNodeID" type="node-id">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="2" name="AdminPasscodeID" type="uint16">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="ChangeType" type="ChangeTypeEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="LatestValue" type="AccessControlExtensionStruct">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/AccountLogin.xml b/zcl-builtin/matter/new-data-model/AccountLogin.xml
new file mode 100644
index 0000000000000000000000000000000000000000..046af9b3f38d8cde6f287fb756c21280c22fc7a9
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/AccountLogin.xml
@@ -0,0 +1,97 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x050e" name="Account Login" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="ALOGIN" scope="Endpoint"/>
+  <commands>
+    <command id="0x00" name="GetSetupPIN" response="GetSetupPINResponse">
+      <access invokePrivilege="admin" fabricScoped="true" timed="true"/>
+      <mandatoryConform/>
+      <field id="0" name="TempAccountIdentifier" type="string">
+        <mandatoryConform/>
+        <constraint type="lengthBetween" from="16" to="100"/>
+      </field>
+    </command>
+    <command id="0x01" name="GetSetupPINResponse" direction="responseFromServer">
+      <access invokePrivilege="operate" fabricScoped="true"/>
+      <mandatoryConform/>
+      <field id="0" name="SetupPIN" type="string">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x02" name="Login" response="Y">
+      <access invokePrivilege="admin" fabricScoped="true" timed="true"/>
+      <mandatoryConform/>
+      <field id="0" name="TempAccountIdentifier" type="string">
+        <mandatoryConform/>
+        <constraint type="lengthBetween" from="16" to="100"/>
+      </field>
+      <field id="1" name="SetupPIN" type="string">
+        <mandatoryConform/>
+        <constraint type="minLength" value="11"/>
+      </field>
+    </command>
+    <command id="0x03" name="Logout" response="Y">
+      <access invokePrivilege="operate" fabricScoped="true" timed="true"/>
+      <mandatoryConform/>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/AdminCommissioningCluster.xml b/zcl-builtin/matter/new-data-model/AdminCommissioningCluster.xml
new file mode 100644
index 0000000000000000000000000000000000000000..ad7a0016524ed57203aac28dde66ddf89a56ff25
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/AdminCommissioningCluster.xml
@@ -0,0 +1,140 @@
+<?xml version="1.0"?>
+<!--
+link:../matter-defines.adoc[]
+
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x003c" name="Administrator Commissioning" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="CADMIN" scope="Node"/>
+  <features>
+    <feature bit="0" code="BC" name="Basic" summary="Node supports Basic Commissioning Method.">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="CommissioningWindowStatusEnum">
+      <item value="0" name="WindowNotOpen" summary="Commissioning window not open">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="EnhancedWindowOpen" summary="An Enhanced Commissioning Method window is open">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="BasicWindowOpen" summary="A Basic Commissioning Method window is open">
+        <mandatoryConform>
+          <feature name="BC"/>
+        </mandatoryConform>
+      </item>
+    </enum>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="WindowStatus" type="CommissioningWindowStatusEnum">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="AdminFabricIndex" type="fabric-idx">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="AdminVendorId" type="&lt;&lt;ref_DataTypeVendorId&gt;&gt;">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="OpenCommissioningWindow" response="Y">
+      <access invokePrivilege="admin" timed="true"/>
+      <mandatoryConform/>
+      <field id="0" name="CommissioningTimeout" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="PAKEPasscodeVerifier" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="Discriminator" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="4095"/>
+      </field>
+      <field id="3" name="Iterations" type="uint32">
+        <mandatoryConform/>
+        <constraint type="between" from="1000" to="100000"/>
+      </field>
+      <field id="4" name="Salt" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <mandatoryConform/>
+        <constraint type="between" from="16" to="32"/>
+      </field>
+    </command>
+    <command id="0x01" name="OpenBasicCommissioningWindow" response="Y">
+      <access invokePrivilege="admin" timed="true"/>
+      <mandatoryConform>
+        <feature name="BC"/>
+      </mandatoryConform>
+      <field id="0" name="CommissioningTimeout" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x02" name="RevokeCommissioning" response="Y">
+      <access invokePrivilege="admin" timed="true"/>
+      <mandatoryConform/>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/AirQuality.xml b/zcl-builtin/matter/new-data-model/AirQuality.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a873ab3280783bb17429f5cb5c0203bc254d7fce
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/AirQuality.xml
@@ -0,0 +1,117 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x005b" name="Air Quality" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial version of the Air Quality cluster"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="AIRQUAL" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="FAIR" name="Fair" summary="Cluster supports the Fair air quality level">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="MOD" name="Moderate" summary="Cluster supports the Moderate air quality level">
+      <optionalConform/>
+    </feature>
+    <feature bit="2" code="VPOOR" name="VeryPoor" summary="Cluster supports the Very poor air quality level">
+      <optionalConform/>
+    </feature>
+    <feature bit="3" code="XPOOR" name="ExtremelyPoor" summary="Cluster supports the Extremely poor air quality level">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="AirQualityEnum">
+      <item value="0" name="Unknown" summary="The air quality is unknown.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Good" summary="The air quality is good.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Fair" summary="The air quality is fair.">
+        <mandatoryConform>
+          <feature name="FAIR"/>
+        </mandatoryConform>
+      </item>
+      <item value="3" name="Moderate" summary="The air quality is moderate.">
+        <mandatoryConform>
+          <feature name="MOD"/>
+        </mandatoryConform>
+      </item>
+      <item value="4" name="Poor" summary="The air quality is poor.">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="VeryPoor" summary="The air quality is very poor.">
+        <mandatoryConform>
+          <feature name="VPOOR"/>
+        </mandatoryConform>
+      </item>
+      <item value="6" name="ExtremelyPoor" summary="The air quality is extremely poor.">
+        <mandatoryConform>
+          <feature name="XPOOR"/>
+        </mandatoryConform>
+      </item>
+    </enum>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="AirQuality" type="AirQualityEnum" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/AlarmBase.xml b/zcl-builtin/matter/new-data-model/AlarmBase.xml
new file mode 100644
index 0000000000000000000000000000000000000000..f909ff49dcf47e19d85561a1e183e0e17c9857c5
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/AlarmBase.xml
@@ -0,0 +1,129 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="" name="Alarm Base" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial revision"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="ALARM" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="RESET" name="Reset" summary="Supports the ability to reset alarms">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <number name="AlarmMap" type=""/>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="Mask" type="AlarmMap" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="Latch" type="AlarmMap" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="RESET"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0002" name="State" type="AlarmMap" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0003" name="Supported" type="AlarmMap" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="Reset" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="RESET"/>
+      </mandatoryConform>
+      <field id="0" name="Alarms" type="AlarmMap" default="0">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x01" name="ModifyEnabledAlarms" response="Y">
+      <access invokePrivilege="operate"/>
+      <optionalConform/>
+      <field id="0" name="Mask" type="AlarmMap" default="0">
+        <mandatoryConform/>
+      </field>
+    </command>
+  </commands>
+  <events>
+    <event id="0x00" name="Notify" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+      <field id="1" name="Active" type="AlarmMap" default="0">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="Inactive" type="AlarmMap" default="0">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="State" type="AlarmMap" default="0">
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="Mask" type="AlarmMap" default="0">
+        <mandatoryConform/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/ApplicationBasic.xml b/zcl-builtin/matter/new-data-model/ApplicationBasic.xml
new file mode 100644
index 0000000000000000000000000000000000000000..1bf0d87a401566a7f70714bed6c76f61aca03ca3
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/ApplicationBasic.xml
@@ -0,0 +1,134 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x050d" name="Application Basic" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="APBSC" scope="Endpoint"/>
+  <dataTypes>
+    <enum name="ApplicationStatusEnum">
+      <item value="0" name="Stopped" summary="Application is not running.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="ActiveVisibleFocus" summary="Application is running, is visible to the user, and is the active target for input.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="ActiveHidden" summary="Application is running but not visible to the user.">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="ActiveVisibleNotFocus" summary="Application is running and visible, but is not the active target for input.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <struct name="ApplicationStruct">
+      <field id="0" name="CatalogVendorID" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="ApplicationID" type="string">
+        <mandatoryConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="VendorName" type="string" default="empty">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform/>
+      <constraint type="maxLength" value="32"/>
+    </attribute>
+    <attribute id="0x0001" name="VendorID" type="vendor-id">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0002" name="ApplicationName" type="string">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0003" name="ProductID" type="uint16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0004" name="Application" type="ApplicationStruct">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0005" name="Status" type="ApplicationStatusEnum" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0006" name="ApplicationVersion" type="string">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="maxLength" value="32"/>
+    </attribute>
+    <attribute id="0x0007" name="AllowedVendorList" type="list">
+      <entry type="vendor-id"/>
+      <access read="true" readPrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/ApplicationLauncher.xml b/zcl-builtin/matter/new-data-model/ApplicationLauncher.xml
new file mode 100644
index 0000000000000000000000000000000000000000..411db7b87f752a9193a5f2235d4cb9d4123f4c47
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/ApplicationLauncher.xml
@@ -0,0 +1,158 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x050c" name="Application Launcher" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="APPLAUNCHER" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="AP" name="ApplicationPlatform" summary="Support for attributes and commands required for endpoint to support launching any application within the supported application catalogs">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="StatusEnum">
+      <item value="0" name="Success" summary="Command succeeded">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="AppNotAvailable" summary="Requested app is not available.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="SystemBusy" summary="Video platform unable to honor command.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <struct name="ApplicationEPStruct">
+      <field id="0" name="Application" type="ApplicationStruct">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Endpoint" type="endpoint-no" default="MS">
+        <optionalConform/>
+      </field>
+    </struct>
+    <struct name="ApplicationStruct">
+      <field id="0" name="CatalogVendorID" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="ApplicationID" type="string">
+        <mandatoryConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="CatalogList" type="list">
+      <entry type="uint16"/>
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="AP"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0001" name="CurrentApp" type="ApplicationEPStruct" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="LaunchApp" response="LauncherResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Application" type="ApplicationStruct">
+        <mandatoryConform>
+          <feature name="AP"/>
+        </mandatoryConform>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="Data" type="octets" default="MS">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x01" name="StopApp" response="LauncherResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Application" type="ApplicationStruct" default="MS">
+        <mandatoryConform>
+          <feature name="AP"/>
+        </mandatoryConform>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x02" name="HideApp" response="LauncherResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Application" type="ApplicationStruct" default="MS">
+        <mandatoryConform>
+          <feature name="AP"/>
+        </mandatoryConform>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x03" name="LauncherResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Status" type="StatusEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Data" type="octets" default="MS">
+        <optionalConform/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/AudioOutput.xml b/zcl-builtin/matter/new-data-model/AudioOutput.xml
new file mode 100644
index 0000000000000000000000000000000000000000..053ccb330f4702ac6c1c262efa40026a836074ad
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/AudioOutput.xml
@@ -0,0 +1,136 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x050b" name="Audio Output" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="AUDIOOUTPUT" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="NU" name="NameUpdates" summary="Supports updates to output names">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="OutputTypeEnum">
+      <item value="0" name="HDMI" summary="HDMI">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="BT">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Optical">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Headphone">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="Internal">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="Other">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <struct name="OutputInfoStruct">
+      <field id="0" name="Index" type="uint8">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="OutputType" type="OutputTypeEnum">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="2" name="Name" type="string">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="OutputList" type="list[OutputInfoStruct Type]">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="CurrentOutput" type="uint8">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="SelectOutput" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Index" type="uint8">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x01" name="RenameOutput" response="Y">
+      <access invokePrivilege="manage"/>
+      <mandatoryConform>
+        <feature name="NU"/>
+      </mandatoryConform>
+      <field id="0" name="Index" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Name" type="string">
+        <mandatoryConform/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/BallastConfiguration.xml b/zcl-builtin/matter/new-data-model/BallastConfiguration.xml
new file mode 100644
index 0000000000000000000000000000000000000000..fda39e71b1ac3952d44e208deb147276a9d07a56
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/BallastConfiguration.xml
@@ -0,0 +1,157 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0301" name="Ballast Configuration" revision="4">
+  <revisionHistory>
+    <revision revision="1" summary="Mandatory global ClusterRevision attribute added"/>
+    <revision revision="2" summary="CCB 2104 2193 2230 2393 Deprecated some attributes"/>
+    <revision revision="3" summary="CCB 2881"/>
+    <revision revision="4" summary="New data model format and notation"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="BC" scope="Endpoint"/>
+  <dataTypes>
+    <bitmap name="BallastStatusBitmap">
+      <bitfield name="BallastNonOperational" bit="0" summary="Operational state of the ballast.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="LampFailure" bit="1" summary="Operational state of the lamps.">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="LampAlarmModeBitmap">
+      <bitfield name="LampBurnHours" bit="0" summary="State of LampBurnHours alarm generation">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="PhysicalMinLevel" type="uint8" default="1">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="between" from="1" to="254"/>
+    </attribute>
+    <attribute id="0x0001" name="PhysicalMaxLevel" type="uint8" default="254">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="between" from="1" to="254"/>
+    </attribute>
+    <attribute id="0x0002" name="BallastStatus" type="BallastStatusBitmap" default="0">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0010" name="MinLevel" type="uint8" default="PhysicalMinLevel">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <mandatoryConform/>
+      <constraint type="between" from="PhysicalMinLevel" to="MaxLevel"/>
+    </attribute>
+    <attribute id="0x0011" name="MaxLevel" type="uint8" default="PhysicalMaxLevel">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <mandatoryConform/>
+      <constraint type="between" from="MinLevel" to="PhysicalMaxLevel"/>
+    </attribute>
+    <attribute id="0x0012" name="PowerOnLevel">
+      <deprecateConform/>
+    </attribute>
+    <attribute id="0x0013" name="PowerOnFadeTime">
+      <deprecateConform/>
+    </attribute>
+    <attribute id="0x0014" name="IntrinsicBallastFactor" type="uint8">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0015" name="BallastFactorAdjustment" type="uint8" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+      <constraint type="between" from="100" to="MS"/>
+    </attribute>
+    <attribute id="0x0020" name="LampQuantity" type="uint8">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0030" name="LampType" type="string" default="&quot;">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform/>
+      <constraint type="maxLength" value="16"/>
+    </attribute>
+    <attribute id="0x0031" name="LampManufacturer" type="string" default="&quot;">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform/>
+      <constraint type="maxLength" value="16"/>
+    </attribute>
+    <attribute id="0x0032" name="LampRatedHours" type="uint24" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0033" name="LampBurnHours" type="uint24" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0034" name="LampAlarmMode" type="LampAlarmModeBitmap" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0035" name="LampBurnHoursTripPoint" type="uint24" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/BasicInformationCluster.xml b/zcl-builtin/matter/new-data-model/BasicInformationCluster.xml
new file mode 100644
index 0000000000000000000000000000000000000000..ecd2127a5edfc1ac2a6e93bcd3057faa52d3b1b1
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/BasicInformationCluster.xml
@@ -0,0 +1,331 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0028" name="Basic Information" revision="3">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+    <revision revision="2" summary="Added ProductAppearance attribute"/>
+    <revision revision="3" summary="Added SpecificationVersion and MaxPathsPerInvoke attributes"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="BINFO" scope="Node"/>
+  <dataTypes>
+    <enum name="ColorEnum">
+      <item value="0" name="Black" summary="Approximately RGB #000000.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Navy" summary="Approximately RGB #000080.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Green" summary="Approximately RGB #008000.">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Teal" summary="Approximately RGB #008080.">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="Maroon" summary="Approximately RGB #800080.">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="Purple" summary="Approximately RGB #800080.">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="Olive" summary="Approximately RGB #808000.">
+        <mandatoryConform/>
+      </item>
+      <item value="7" name="Gray" summary="Approximately RGB #808080.">
+        <mandatoryConform/>
+      </item>
+      <item value="8" name="Blue" summary="Approximately RGB #0000FF.">
+        <mandatoryConform/>
+      </item>
+      <item value="9" name="Lime" summary="Approximately RGB #00FF00.">
+        <mandatoryConform/>
+      </item>
+      <item value="10" name="Aqua" summary="Approximately RGB #00FFFF.">
+        <mandatoryConform/>
+      </item>
+      <item value="11" name="Red" summary="Approximately RGB #FF0000.">
+        <mandatoryConform/>
+      </item>
+      <item value="12" name="Fuchsia" summary="Approximately RGB #FF00FF.">
+        <mandatoryConform/>
+      </item>
+      <item value="13" name="Yellow" summary="Approximately RGB #FFFF00.">
+        <mandatoryConform/>
+      </item>
+      <item value="14" name="White" summary="Approximately RGB #FFFFFF.">
+        <mandatoryConform/>
+      </item>
+      <item value="15" name="Nickel" summary="Typical hardware &quot;Nickel&quot; color.">
+        <mandatoryConform/>
+      </item>
+      <item value="16" name="Chrome" summary="Typical hardware &quot;Chrome&quot; color.">
+        <mandatoryConform/>
+      </item>
+      <item value="17" name="Brass" summary="Typical hardware &quot;Brass&quot; color.">
+        <mandatoryConform/>
+      </item>
+      <item value="18" name="Copper" summary="Typical hardware &quot;Copper&quot; color.">
+        <mandatoryConform/>
+      </item>
+      <item value="19" name="Silver" summary="Typical hardware &quot;Silver&quot; color.">
+        <mandatoryConform/>
+      </item>
+      <item value="20" name="Gold" summary="Typical hardware &quot;Gold&quot; color.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="ProductFinishEnum">
+      <item value="0" name="Other" summary="Product has some other finish not listed below.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Matte" summary="Product has a matte finish.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Satin" summary="Product has a satin finish.">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Polished" summary="Product has a polished or shiny finish.">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="Rugged" summary="Product has a rugged finish.">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="Fabric" summary="Product has a fabric finish.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <struct name="CapabilityMinimaStruct">
+      <field id="0" name="CaseSessionsPerFabric" type="uint16" default="3">
+        <mandatoryConform/>
+        <constraint type="min" value="3"/>
+      </field>
+      <field id="1" name="SubscriptionsPerFabric" type="uint16" default="3">
+        <mandatoryConform/>
+        <constraint type="min" value="3"/>
+      </field>
+    </struct>
+    <struct name="ProductAppearanceStruct">
+      <field id="0" name="Finish" type="ProductFinishEnum">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="PrimaryColor" type="ColorEnum">
+        <access read="true" write="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="DataModelRevision" type="uint16" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="VendorName" type="&lt;&lt;ref_DataTypeString&gt;&gt;" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="max" value="32"/>
+    </attribute>
+    <attribute id="0x0002" name="VendorID" type="&lt;&lt;ref_DataTypeVendorId&gt;&gt;" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0003" name="ProductName" type="&lt;&lt;ref_DataTypeString&gt;&gt;" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="max" value="32"/>
+    </attribute>
+    <attribute id="0x0004" name="ProductID" type="uint16" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0005" name="NodeLabel" type="&lt;&lt;ref_DataTypeString&gt;&gt;" default="&quot;">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="max" value="32"/>
+    </attribute>
+    <attribute id="0x0006" name="Location" type="&lt;&lt;ref_DataTypeString&gt;&gt;" default="&quot;XX&quot;">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="allowed" value="2"/>
+    </attribute>
+    <attribute id="0x0007" name="HardwareVersion" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0008" name="HardwareVersionString" type="&lt;&lt;ref_DataTypeString&gt;&gt;" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="1" to="64"/>
+    </attribute>
+    <attribute id="0x0009" name="SoftwareVersion" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x000a" name="SoftwareVersionString" type="&lt;&lt;ref_DataTypeString&gt;&gt;" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="1" to="64"/>
+    </attribute>
+    <attribute id="0x000b" name="ManufacturingDate" type="&lt;&lt;ref_DataTypeString&gt;&gt;" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform/>
+      <constraint type="between" from="8" to="16"/>
+    </attribute>
+    <attribute id="0x000c" name="PartNumber" type="&lt;&lt;ref_DataTypeString&gt;&gt;" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform/>
+      <constraint type="max" value="32"/>
+    </attribute>
+    <attribute id="0x000d" name="ProductURL" type="&lt;&lt;ref_DataTypeString&gt;&gt;" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform/>
+      <constraint type="max" value="256"/>
+    </attribute>
+    <attribute id="0x000e" name="ProductLabel" type="&lt;&lt;ref_DataTypeString&gt;&gt;" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform/>
+      <constraint type="max" value="64"/>
+    </attribute>
+    <attribute id="0x000f" name="SerialNumber" type="&lt;&lt;ref_DataTypeString&gt;&gt;" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform/>
+      <constraint type="max" value="32"/>
+    </attribute>
+    <attribute id="0x0010" name="LocalConfigDisabled" type="bool" default="False">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0011" name="Reachable" type="bool" default="True">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0012" name="UniqueID" type="&lt;&lt;ref_DataTypeString&gt;&gt;" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform/>
+      <constraint type="max" value="32"/>
+    </attribute>
+    <attribute id="0x0013" name="CapabilityMinima" type="CapabilityMinimaStruct" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0014" name="ProductAppearance" type="ProductAppearanceStruct" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0015" name="SpecificationVersion" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0016" name="MaxPathsPerInvoke" type="uint16" default="1">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="min" value="1"/>
+    </attribute>
+  </attributes>
+  <events>
+    <event id="0x00" name="StartUp" priority="critical">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+      <field id="0" name="SoftwareVersion" type="uint32">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x01" name="ShutDown" priority="critical">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x02" name="Leave" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+      <field id="0" name="FabricIndex" type="fabric-idx">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="254"/>
+      </field>
+    </event>
+    <event id="0x03" name="ReachableChanged" priority="info">
+      <access readPrivilege="view"/>
+      <field id="0" name="ReachableNewValue" type="bool">
+        <mandatoryConform/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Binding-Cluster.xml b/zcl-builtin/matter/new-data-model/Binding-Cluster.xml
new file mode 100644
index 0000000000000000000000000000000000000000..443c864a2db27531edad4890f614ffc6c204b2a1
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Binding-Cluster.xml
@@ -0,0 +1,97 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x001e" name="Binding" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="BIND" scope="Endpoint"/>
+  <dataTypes>
+    <struct name="TargetStruct">
+      <field id="1" name="Node" type="node-id">
+        <mandatoryConform>
+          <attribute name="Endpoint"/>
+        </mandatoryConform>
+      </field>
+      <field id="2" name="Group" type="group-id">
+        <mandatoryConform>
+          <notTerm>
+            <attribute name="Endpoint"/>
+          </notTerm>
+        </mandatoryConform>
+      </field>
+      <field id="3" name="Endpoint" type="endpoint-no">
+        <mandatoryConform>
+          <notTerm>
+            <attribute name="Group"/>
+          </notTerm>
+        </mandatoryConform>
+      </field>
+      <field id="4" name="Cluster" type="cluster-id">
+        <optionalConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="Binding" type="list[TargetStruct Type]" default="[]">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/BooleanSensorConfiguration.xml b/zcl-builtin/matter/new-data-model/BooleanSensorConfiguration.xml
new file mode 100644
index 0000000000000000000000000000000000000000..1119b4029e26f218997dcb16aa103f320f0b50b3
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/BooleanSensorConfiguration.xml
@@ -0,0 +1,184 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0080" name="Boolean Sensor Configuration" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="BSENCFG" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="VIS" name="Visual" summary="Supports visual alarms">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="AUD" name="Audible" summary="Supports audible alarms">
+      <optionalConform/>
+    </feature>
+    <feature bit="2" code="SPRS" name="AlarmSuppress" summary="Supports ability to suppress or acknowledge alarms">
+      <optionalConform/>
+    </feature>
+    <feature bit="3" code="SENSLVL" name="SensitivityLevel" summary="Supports ability to set level of threshold detection sensitivity">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="SensitivityEnum">
+      <item value="0" name="High" summary="High sensitivity">
+        <mandatoryConform>
+          <feature name="SENSLVL"/>
+        </mandatoryConform>
+      </item>
+      <item value="1" name="Standard" summary="Standard Sensitivity">
+        <mandatoryConform>
+          <feature name="SENSLVL"/>
+        </mandatoryConform>
+      </item>
+      <item value="2" name="Low" summary="Low sensitivity">
+        <mandatoryConform>
+          <feature name="SENSLVL"/>
+        </mandatoryConform>
+      </item>
+    </enum>
+    <bitmap name="AlarmModeBitmap">
+      <bitfield name="Visual" bit="0" summary="Visual alarming">
+        <mandatoryConform>
+          <feature name="VIS"/>
+        </mandatoryConform>
+      </bitfield>
+      <bitfield name="Audible" bit="1" summary="Audible alarming">
+        <mandatoryConform>
+          <feature name="AUD"/>
+        </mandatoryConform>
+      </bitfield>
+    </bitmap>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="SensitivityLevel" type="SensitivityEnum" default="Standard">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="SENSLVL"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0001" name="AlarmsActive" type="AlarmModeBitmap">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="VIS"/>
+          <feature name="AUD"/>
+        </orTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0002" name="AlarmsSuppressed" type="AlarmModeBitmap">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <orTerm>
+            <feature name="VIS"/>
+            <feature name="AUD"/>
+          </orTerm>
+          <feature name="SPRS"/>
+        </andTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0003" name="AlarmsEnabled" type="AlarmModeBitmap">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="VIS"/>
+          <feature name="AUD"/>
+        </orTerm>
+      </mandatoryConform>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="SuppressRequest" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="SPRS"/>
+      </mandatoryConform>
+      <field id="0" name="AlarmsToSuppress" type="AlarmModeBitmap">
+        <mandatoryConform/>
+      </field>
+    </command>
+  </commands>
+  <events>
+    <event id="0x00" name="AlarmsStateChanged" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="VIS"/>
+          <feature name="AUD"/>
+        </orTerm>
+      </mandatoryConform>
+      <field id="0" name="AlarmsActive" type="AlarmModeBitmap">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="AlarmsSuppressed" type="AlarmModeBitmap">
+        <mandatoryConform>
+          <feature name="SPRS"/>
+        </mandatoryConform>
+      </field>
+    </event>
+    <event id="0x01" name="SensorFault" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/BooleanState.xml b/zcl-builtin/matter/new-data-model/BooleanState.xml
new file mode 100644
index 0000000000000000000000000000000000000000..830f1ea5e30a95311d7d5355c1f5d53884e0d5c9
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/BooleanState.xml
@@ -0,0 +1,79 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0045" name="Boolean State" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="BOOL" scope="Endpoint"/>
+  <attributes>
+    <attribute id="0x0000" name="StateValue" type="bool">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform/>
+    </attribute>
+  </attributes>
+  <events>
+    <event id="0x00" name="StateChange" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+      <field id="0" name="StateValue" type="bool">
+        <mandatoryConform/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Channel.xml b/zcl-builtin/matter/new-data-model/Channel.xml
new file mode 100644
index 0000000000000000000000000000000000000000..0c5962e8cc1f9c28cf3f77a281a81b85b8c4d8dc
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Channel.xml
@@ -0,0 +1,194 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0504" name="Channel" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="CHANNEL" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="CL" name="ChannelList" summary="Provides list of available channels.">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="LI" name="LineupInfo" summary="Provides lineup info, which is a reference to an external source of lineup information.">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="LineupInfoTypeEnum">
+      <item value="0" name="MSO" summary="Multi System Operator">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="StatusEnum">
+      <item value="0" name="Success" summary="Command succeeded">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="MultipleMatches" summary="More than one equal match for the ChannelInfoStruct passed in.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="NoMatches" summary="No matches for the ChannelInfoStruct passed in.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <struct name="ChannelInfoStruct">
+      <field id="0" name="MajorNumber" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="MinorNumber" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="Name" type="string" default="empty">
+        <optionalConform/>
+      </field>
+      <field id="3" name="CallSign" type="string" default="empty">
+        <optionalConform/>
+      </field>
+      <field id="4" name="AffiliateCallSign" type="string" default="empty">
+        <optionalConform/>
+      </field>
+    </struct>
+    <struct name="LineupInfoStruct">
+      <field id="0" name="OperatorName" type="string">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="LineupName" type="string" default="empty">
+        <access read="true" write="true"/>
+        <optionalConform/>
+      </field>
+      <field id="2" name="PostalCode" type="string" default="empty">
+        <access read="true" write="true"/>
+        <optionalConform/>
+      </field>
+      <field id="3" name="LineupInfoType" type="LineupInfoTypeEnum">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="ChannelList" type="list[ChannelInfoStruct Type]" default="empty">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="CL"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0001" name="Lineup" type="LineupInfoStruct" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="LI"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0002" name="CurrentChannel" type="ChannelInfoStruct" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="ChangeChannel" response="ChangeChannelResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="CL"/>
+          <feature name="LI"/>
+        </orTerm>
+      </mandatoryConform>
+      <field id="0" name="Match" type="string">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x01" name="ChangeChannelResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="CL"/>
+          <feature name="LI"/>
+        </orTerm>
+      </mandatoryConform>
+      <field id="0" name="Status" type="StatusEnum">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="Data" type="string">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x02" name="ChangeChannelByNumber" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="MajorNumber" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="MinorNumber" type="uint16">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x03" name="SkipChannel" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Count" type="int16">
+        <mandatoryConform/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/ColorControl.xml b/zcl-builtin/matter/new-data-model/ColorControl.xml
new file mode 100644
index 0000000000000000000000000000000000000000..84b8bfd5b15aefa404c4ca54093d8a12675b8ce9
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/ColorControl.xml
@@ -0,0 +1,1023 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0300" name="Color Control" revision="6">
+  <revisionHistory>
+    <revision revision="1" summary="mandatory global ClusterRevision attribute added; CCB 2028"/>
+    <revision revision="2" summary="added Options attribute, CCB 2085 2104 2124 2230; ZLO 1.0"/>
+    <revision revision="3" summary="CCB 2501 2814 2839 2840 2843 2861"/>
+    <revision revision="4" summary="All Hubs changes"/>
+    <revision revision="5" summary="new data model format and notation, FeatureMap support"/>
+    <revision revision="6" summary="Added clarifications to Scenes support for Matter"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="CC" primaryTransaction="1"/>
+  <features>
+    <feature bit="0" code="HS" name="Hue/Saturation" summary="Supports color specification via hue/saturation.">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="EHUE" name="Enhanced Hue" summary="Enhanced hue is supported.">
+      <optionalConform/>
+    </feature>
+    <feature bit="2" code="CL" name="Color loop" summary="Color loop is supported.">
+      <optionalConform/>
+    </feature>
+    <feature bit="3" code="XY" name="XY" summary="Supports color specification via XY.">
+      <optionalConform/>
+    </feature>
+    <feature bit="4" code="CT" name="Color temperature" summary="Supports specification of color temperature.">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes/>
+  <attributes>
+    <attribute id="0x0000" name="CurrentHue" type="uint8" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="true"/>
+      <mandatoryConform>
+        <feature name="HS"/>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="254"/>
+    </attribute>
+    <attribute id="0x0001" name="CurrentSaturation" type="uint8" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="true" persistence="nonVolatile" reportable="true"/>
+      <mandatoryConform>
+        <feature name="HS"/>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="254"/>
+    </attribute>
+    <attribute id="0x0002" name="RemainingTime" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="between" from="0" to="65534"/>
+    </attribute>
+    <attribute id="0x0003" name="CurrentX" type="uint16" default="0x616B (0.381)">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="true" persistence="nonVolatile" reportable="true"/>
+      <mandatoryConform>
+        <feature name="XY"/>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0004" name="CurrentY" type="uint16" default="0x607D (0.377)">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="true" persistence="nonVolatile" reportable="true"/>
+      <mandatoryConform>
+        <feature name="XY"/>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0005" name="DriftCompensation" type="enum8" default="-">
+      <enum>
+        <item value="0" name="None">
+          <mandatoryConform/>
+        </item>
+        <item value="1" name="Other / Unknown">
+          <mandatoryConform/>
+        </item>
+        <item value="2" name="Temperature monitoring">
+          <mandatoryConform/>
+        </item>
+        <item value="3" name="Optical luminance monitoring and feedback">
+          <mandatoryConform/>
+        </item>
+        <item value="4" name="Optical color monitoring and feedback">
+          <mandatoryConform/>
+        </item>
+      </enum>
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="between" from="0" to="4"/>
+    </attribute>
+    <attribute id="0x0006" name="CompensationText" type="string" default="-">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="maxLength" value="254"/>
+    </attribute>
+    <attribute id="0x0007" name="ColorTemperatureMireds" type="uint16" default="0x00FA (4000K)">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="true" persistence="nonVolatile" reportable="true"/>
+      <mandatoryConform>
+        <feature name="CT"/>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0008" name="ColorMode" type="enum8" default="1">
+      <enum>
+        <item value="0">
+          <mandatoryConform/>
+        </item>
+        <item value="1">
+          <mandatoryConform/>
+        </item>
+        <item value="2">
+          <mandatoryConform/>
+        </item>
+      </enum>
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="2"/>
+    </attribute>
+    <attribute id="0x000f" name="Options" type="map8" default="0">
+      <bitmap>
+        <bitfield name="ExecuteIfOff" bit="0" summary="0 – Do not execute command if the On/Off cluster, OnOff attribute is FALSE. +
+                     1 – Execute command if the On/Off cluster, OnOff attribute is FALSE.">
+          <mandatoryConform/>
+        </bitfield>
+      </bitmap>
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0010" name="NumberOfPrimaries" type="uint8" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="6"/>
+    </attribute>
+    <attribute id="0x0011" name="Primary1X" type="uint16" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0012" name="Primary1Y" type="uint16" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0013" name="Primary1Intensity" type="uint8" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0015" name="Primary2X" type="uint16" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0016" name="Primary2Y" type="uint16" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0017" name="Primary2Intensity" type="uint8" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0019" name="Primary3X" type="uint16" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x001a" name="Primary3Y" type="uint16" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x001b" name="Primary3Intensity" type="uint8" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0020" name="Primary4X" type="uint16" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0021" name="Primary4Y" type="uint16" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0022" name="Primary4Intensity" type="uint8" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0024" name="Primary5X" type="uint16" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0025" name="Primary5Y" type="uint16" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0026" name="Primary5Intensity" type="uint8" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0028" name="Primary6X" type="uint16" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0029" name="Primary6Y" type="uint16" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x002a" name="Primary6Intensity" type="uint8" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0030" name="WhitePointX" type="uint16" default="-">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0031" name="WhitePointY" type="uint16" default="-">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0032" name="ColorPointRX" type="uint16" default="-">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0033" name="ColorPointRY" type="uint16" default="-">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0034" name="ColorPointRIntensity" type="uint8" default="-">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0036" name="ColorPointGX" type="uint16" default="-">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0037" name="ColorPointGY" type="uint16" default="-">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x0038" name="ColorPointGIntensity" type="uint8" default="-">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x003a" name="ColorPointBX" type="uint16" default="-">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x003b" name="ColorPointBY" type="uint16" default="-">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform/>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x003c" name="ColorPointBIntensity" type="uint8" default="-">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x4000" name="EnhancedCurrentHue" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="true" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="EHUE"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x4001" name="EnhancedColorMode" type="enum8" default="1">
+      <enum>
+        <item value="0">
+          <mandatoryConform/>
+        </item>
+        <item value="1">
+          <mandatoryConform/>
+        </item>
+        <item value="2">
+          <mandatoryConform/>
+        </item>
+        <item value="3">
+          <mandatoryConform/>
+        </item>
+      </enum>
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="true" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="3"/>
+    </attribute>
+    <attribute id="0x4002" name="ColorLoopActive" type="uint8" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="true" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="CL"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x4003" name="ColorLoopDirection" type="uint8" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="true" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="CL"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x4004" name="ColorLoopTime" type="uint16" default="0x0019">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="true" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="CL"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x4005" name="ColorLoopStartEnhancedHue" type="uint16" default="0x2300">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="CL"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x4006" name="ColorLoopStoredEnhancedHue" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="CL"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x400a" name="ColorCapabilities" type="map16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="0x001F"/>
+    </attribute>
+    <attribute id="0x400b" name="ColorTempPhysicalMinMireds" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="CT"/>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x400c" name="ColorTempPhysicalMaxMireds" type="uint16" default="0xFEFF">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="CT"/>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+    <attribute id="0x400d" name="CoupleColorTempToLevelMinMireds" type="uint16" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="CT"/>
+          <attribute name="ColorTemperatureMireds"/>
+        </orTerm>
+      </mandatoryConform>
+      <constraint type="between" from="ColorTempPhysicalMinMireds" to="ColorTemperatureMireds"/>
+    </attribute>
+    <attribute id="0x4010" name="StartUpColorTemperatureMireds" type="uint16" default="MS">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="CT"/>
+          <attribute name="ColorTemperatureMireds"/>
+        </orTerm>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="0xFEFF"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="MoveToHue" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="HS"/>
+      </mandatoryConform>
+      <field id="0" name="Hue" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="254"/>
+      </field>
+      <field id="1" name="Direction" type="enum8">
+        <enum>
+          <item value="0" name="Shortest distance">
+            <mandatoryConform/>
+          </item>
+          <item value="1" name="Longest distance">
+            <mandatoryConform/>
+          </item>
+          <item value="2" name="Up">
+            <mandatoryConform/>
+          </item>
+          <item value="3" name="Down">
+            <mandatoryConform/>
+          </item>
+        </enum>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="2" name="TransitionTime" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="65534"/>
+      </field>
+      <field id="3" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="4" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x01" name="MoveHue" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="HS"/>
+      </mandatoryConform>
+      <field id="0" name="MoveMode" type="enum8">
+        <enum>
+          <item value="0" name="Stop">
+            <mandatoryConform/>
+          </item>
+          <item value="1" name="Up">
+            <mandatoryConform/>
+          </item>
+          <item value="2" name="Reserved">
+            <mandatoryConform/>
+          </item>
+          <item value="3" name="Down">
+            <mandatoryConform/>
+          </item>
+        </enum>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="Rate" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x02" name="StepHue" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="HS"/>
+      </mandatoryConform>
+      <field id="0" name="StepMode" type="enum8">
+        <enum>
+          <item value="0" name="Reserved">
+            <mandatoryConform/>
+          </item>
+          <item value="1" name="Up">
+            <mandatoryConform/>
+          </item>
+          <item value="2" name="Reserved">
+            <mandatoryConform/>
+          </item>
+          <item value="3" name="Down">
+            <mandatoryConform/>
+          </item>
+        </enum>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="StepSize" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="TransitionTime" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="4" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x03" name="MoveToSaturation" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="HS"/>
+      </mandatoryConform>
+      <field id="0" name="Saturation" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="254"/>
+      </field>
+      <field id="1" name="TransitionTime" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="65534"/>
+      </field>
+      <field id="2" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x04" name="MoveSaturation" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="HS"/>
+      </mandatoryConform>
+      <field id="0" name="MoveMode" type="enum8">
+        <enum>
+          <item value="0" name="Stop">
+            <mandatoryConform/>
+          </item>
+          <item value="1" name="Up">
+            <mandatoryConform/>
+          </item>
+          <item value="2" name="Reserved">
+            <mandatoryConform/>
+          </item>
+          <item value="3" name="Down">
+            <mandatoryConform/>
+          </item>
+        </enum>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="Rate" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x05" name="StepSaturation" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="HS"/>
+      </mandatoryConform>
+      <field id="0" name="StepMode" type="enum8">
+        <enum>
+          <item value="0" name="Reserved">
+            <mandatoryConform/>
+          </item>
+          <item value="1" name="Up">
+            <mandatoryConform/>
+          </item>
+          <item value="2" name="Reserved">
+            <mandatoryConform/>
+          </item>
+          <item value="3" name="Down">
+            <mandatoryConform/>
+          </item>
+        </enum>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="StepSize" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="TransitionTime" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="4" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x06" name="MoveToHueAndSaturation" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="HS"/>
+      </mandatoryConform>
+      <field id="0" name="Hue" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="254"/>
+      </field>
+      <field id="1" name="Saturation" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="254"/>
+      </field>
+      <field id="2" name="TransitionTime" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="65534"/>
+      </field>
+      <field id="3" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="4" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x07" name="MoveToColor" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="XY"/>
+      </mandatoryConform>
+      <field id="0" name="ColorX" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="0xFEFF"/>
+      </field>
+      <field id="1" name="ColorY" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="0xFEFF"/>
+      </field>
+      <field id="2" name="TransitionTime" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="65534"/>
+      </field>
+      <field id="3" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="4" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x08" name="MoveColor" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="XY"/>
+      </mandatoryConform>
+      <field id="0" name="RateX" type="int16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="RateY" type="int16">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x09" name="StepColor" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="XY"/>
+      </mandatoryConform>
+      <field id="0" name="StepX" type="int16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="StepY" type="int16">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="TransitionTime" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="65534"/>
+      </field>
+      <field id="3" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="4" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x0a" name="MoveToColorTemperature" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="CT"/>
+      </mandatoryConform>
+      <field id="0" name="ColorTemperatureMireds" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="0xFEFF"/>
+      </field>
+      <field id="1" name="TransitionTime" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="65534"/>
+      </field>
+      <field id="2" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x40" name="EnhancedMoveToHue" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="EHUE"/>
+      </mandatoryConform>
+      <field id="0" name="EnhancedHue" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Direction" type="enum8">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="2" name="TransitionTime" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="65534"/>
+      </field>
+      <field id="3" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="4" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x41" name="EnhancedMoveHue" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="EHUE"/>
+      </mandatoryConform>
+      <field id="0" name="MoveMode" type="enum8">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="Rate" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x42" name="EnhancedStepHue" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="EHUE"/>
+      </mandatoryConform>
+      <field id="0" name="StepMode" type="enum8">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="StepSize" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="TransitionTime" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="65534"/>
+      </field>
+      <field id="3" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="4" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x43" name="EnhancedMoveToHueAndSaturation" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="EHUE"/>
+      </mandatoryConform>
+      <field id="0" name="EnhancedHue" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Saturation" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="254"/>
+      </field>
+      <field id="2" name="TransitionTime" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="65534"/>
+      </field>
+      <field id="3" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="4" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x44" name="ColorLoopSet" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="CL"/>
+      </mandatoryConform>
+      <field id="0" name="UpdateFlags" type="map8">
+        <bitmap>
+          <bitfield name="(Reserved)">
+            <mandatoryConform/>
+          </bitfield>
+          <bitfield name="UpdateAction" bit="0">
+            <mandatoryConform/>
+          </bitfield>
+          <bitfield name="UpdateDirection" bit="1">
+            <mandatoryConform/>
+          </bitfield>
+          <bitfield name="UpdateTime" bit="2">
+            <mandatoryConform/>
+          </bitfield>
+          <bitfield name="UpdateStartHue" bit="3">
+            <mandatoryConform/>
+          </bitfield>
+        </bitmap>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="Action" type="enum8">
+        <enum>
+          <item value="0" name="De-activate the color loop.">
+            <mandatoryConform/>
+          </item>
+          <item value="1" name="Activate the color loop from the value in the ColorLoopStartEnhancedHue field.">
+            <mandatoryConform/>
+          </item>
+          <item value="2" name="Activate the color loop from the value of the EnhancedCurrentHue attribute.">
+            <mandatoryConform/>
+          </item>
+        </enum>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="2" name="Direction" type="enum8">
+        <enum>
+          <item value="0" name="Decrement the hue in the color loop.">
+            <mandatoryConform/>
+          </item>
+          <item value="1" name="Increment the hue in the color loop.">
+            <mandatoryConform/>
+          </item>
+        </enum>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="Time" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="StartHue" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="5" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="6" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x47" name="StopMoveStep" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="HS"/>
+          <feature name="XY"/>
+          <feature name="CT"/>
+        </orTerm>
+      </mandatoryConform>
+      <field id="0" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x4b" name="MoveColorTemperature" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="CT"/>
+      </mandatoryConform>
+      <field id="0" name="MoveMode" type="map8">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="Rate" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="ColorTemperatureMinimumMireds" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="0xFEFF"/>
+      </field>
+      <field id="3" name="ColorTemperatureMaximumMireds" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="0xFEFF"/>
+      </field>
+      <field id="4" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="5" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x4c" name="StepColorTemperature" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="CT"/>
+      </mandatoryConform>
+      <field id="0" name="StepMode" type="map8">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="StepSize" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="TransitionTime" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="65534"/>
+      </field>
+      <field id="3" name="ColorTemperatureMinimumMireds" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="0xFEFF"/>
+      </field>
+      <field id="4" name="ColorTemperatureMaximumMireds" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="0xFEFF"/>
+      </field>
+      <field id="5" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="6" name="OptionsOverride" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/ConcentrationMeasurement.xml b/zcl-builtin/matter/new-data-model/ConcentrationMeasurement.xml
new file mode 100644
index 0000000000000000000000000000000000000000..0230fd4d618cedebe1931d9cb05462e2a7113808
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/ConcentrationMeasurement.xml
@@ -0,0 +1,252 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="" name="Concentration Measurement Clusters" revision="3">
+  <revisionHistory>
+    <revision revision="1" summary="Mandatory global ClusterRevision attribute added"/>
+    <revision revision="2" summary="CCB 2882"/>
+    <revision revision="3" summary="Cluster redesigned to add support for Level Indication, Peak/Average Measurement, Medium/Unit of Measurement and Uncertainty."/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="CONC" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="MEA" name="NumericMeasurement" summary="Cluster supports numeric measurement of substance">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="1" code="LEV" name="LevelIndication" summary="Cluster supports basic level indication for substance using the ConcentrationLevel enum">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="2" code="MED" name="MediumLevel" summary="Cluster supports the Medium Concentration Level">
+      <optionalConform>
+        <feature name="LEV"/>
+      </optionalConform>
+    </feature>
+    <feature bit="3" code="CRI" name="CriticalLevel" summary="Cluster supports the Critical Concentration Level">
+      <optionalConform>
+        <feature name="LEV"/>
+      </optionalConform>
+    </feature>
+    <feature bit="4" code="PEA" name="PeakMeasurement" summary="Cluster supports peak numeric measurement of substance">
+      <optionalConform>
+        <feature name="MEA"/>
+      </optionalConform>
+    </feature>
+    <feature bit="5" code="AVG" name="AverageMeasurement" summary="Cluster supports average numeric measurement of substance">
+      <optionalConform>
+        <feature name="MEA"/>
+      </optionalConform>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="LevelValueEnum">
+      <item value="0" name="Unknown" summary="The level is Unknown">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Low" summary="The level is considered Low">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Medium" summary="The level is considered Medium">
+        <mandatoryConform>
+          <feature name="MED"/>
+        </mandatoryConform>
+      </item>
+      <item value="3" name="High" summary="The level is considered High">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="Critical" summary="The level is considered Critical">
+        <mandatoryConform>
+          <feature name="CRI"/>
+        </mandatoryConform>
+      </item>
+    </enum>
+    <enum name="MeasurementMediumEnum">
+      <item value="0" name="Air" summary="The measurement is being made in Air">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Water" summary="The measurement is being made in Water">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Soil" summary="The measurement is being made in Soil">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="MeasurementUnitEnum">
+      <item value="0" name="PPM" summary="Parts per Million (10)">
+        <mandatoryConform>
+          <feature name="MEA"/>
+        </mandatoryConform>
+      </item>
+      <item value="1" name="PPB" summary="Parts per Billion (10)">
+        <mandatoryConform>
+          <feature name="MEA"/>
+        </mandatoryConform>
+      </item>
+      <item value="2" name="PPT" summary="Parts per Trillion (10)">
+        <mandatoryConform>
+          <feature name="MEA"/>
+        </mandatoryConform>
+      </item>
+      <item value="3" name="MGM3" summary="Milligram per m">
+        <mandatoryConform>
+          <feature name="MEA"/>
+        </mandatoryConform>
+      </item>
+      <item value="4" name="UGM3" summary="Microgram per m">
+        <mandatoryConform>
+          <feature name="MEA"/>
+        </mandatoryConform>
+      </item>
+      <item value="5" name="NGM3" summary="Nanogram per m">
+        <mandatoryConform>
+          <feature name="MEA"/>
+        </mandatoryConform>
+      </item>
+      <item value="6" name="PM3" summary="Particles per m">
+        <mandatoryConform>
+          <feature name="MEA"/>
+        </mandatoryConform>
+      </item>
+      <item value="7" name="BQM3" summary="Becquerel per m">
+        <mandatoryConform>
+          <feature name="MEA"/>
+        </mandatoryConform>
+      </item>
+    </enum>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="MeasuredValue" type="single" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform>
+        <feature name="MEA"/>
+      </mandatoryConform>
+      <constraint type="between" from="MinMeasuredValue" to="MaxMeasuredValue"/>
+    </attribute>
+    <attribute id="0x0001" name="MinMeasuredValue" type="single" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="MEA"/>
+      </mandatoryConform>
+      <constraint type="max" value="MaxMeasuredValue"/>
+    </attribute>
+    <attribute id="0x0002" name="MaxMeasuredValue" type="single" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="MEA"/>
+      </mandatoryConform>
+      <constraint type="min" value="MinMeasuredValue"/>
+    </attribute>
+    <attribute id="0x0003" name="PeakMeasuredValue" type="single" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform>
+        <feature name="PEA"/>
+      </mandatoryConform>
+      <constraint type="between" from="MinMeasuredValue" to="MaxMeasuredValue"/>
+    </attribute>
+    <attribute id="0x0004" name="PeakMeasuredValueWindow" type="elapsed-s" default="1">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform>
+        <feature name="PEA"/>
+      </mandatoryConform>
+      <constraint type="max" value="604800"/>
+    </attribute>
+    <attribute id="0x0005" name="AverageMeasuredValue" type="single" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform>
+        <feature name="AVG"/>
+      </mandatoryConform>
+      <constraint type="between" from="MinMeasuredValue" to="MaxMeasuredValue"/>
+    </attribute>
+    <attribute id="0x0006" name="AverageMeasuredValueWindow" type="elapsed-s" default="1">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform>
+        <feature name="AVG"/>
+      </mandatoryConform>
+      <constraint type="max" value="604800"/>
+    </attribute>
+    <attribute id="0x0007" name="Uncertainty" type="single" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform>
+        <feature name="MEA"/>
+      </optionalConform>
+      <constraint type="allowed" value="MS"/>
+    </attribute>
+    <attribute id="0x0008" name="MeasurementUnit" type="MeasurementUnitEnum" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="MEA"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0009" name="MeasurementMedium" type="MeasurementMediumEnum" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x000a" name="LevelValue" type="LevelValueEnum" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="LEV"/>
+      </mandatoryConform>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/ContentAppObserver.xml b/zcl-builtin/matter/new-data-model/ContentAppObserver.xml
new file mode 100644
index 0000000000000000000000000000000000000000..563917ece5638fffaa52405d84d87e5386152f71
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/ContentAppObserver.xml
@@ -0,0 +1,98 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0510" name="Content App Observer" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="CONTENTAPPOBSERVER" scope="Endpoint"/>
+  <dataTypes>
+    <enum name="StatusEnum">
+      <item value="0" name="Success" summary="Command succeeded">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="UnexpectedData" summary="Data field in command was not understood by the Observer">
+        <mandatoryConform/>
+      </item>
+    </enum>
+  </dataTypes>
+  <commands>
+    <command id="0x00" name="ContentAppMessage" response="ContentAppMessageResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Data" type="string">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="EncodingHint" type="string">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x01" name="ContentAppMessageResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Status" type="StatusEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Data" type="string">
+        <optionalConform/>
+      </field>
+      <field id="2" name="EncodingHint" type="string">
+        <optionalConform/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/ContentControl.xml b/zcl-builtin/matter/new-data-model/ContentControl.xml
new file mode 100644
index 0000000000000000000000000000000000000000..5dbf273e60164717154c7af6c40c9709ffa3c2ae
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/ContentControl.xml
@@ -0,0 +1,246 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x050f" name="Content Control" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="CONCON" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="ST" name="ScreenTime" summary="Supports managing screen time limits.">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="PM" name="PINManagement" summary="Supports managing a PIN code which is used for restricting access to configuration of this feature.">
+      <optionalConform/>
+    </feature>
+    <feature bit="2" code="BU" name="BlockUnrated" summary="Supports managing content controls for unrated content.">
+      <optionalConform/>
+    </feature>
+    <feature bit="3" code="OCR" name="OnDemandContentRating" summary="Supports managing content controls based upon rating threshold for on demand content.">
+      <optionalConform/>
+    </feature>
+    <feature bit="4" code="SCR" name="ScheduledContentRating" summary="Supports managing content controls based upon rating threshold for scheduled content.">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <struct name="RatingNameStruct">
+      <field id="1" name="RatingName" type="string">
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="maxLength" value="8"/>
+      </field>
+      <field id="2" name="RatingNameDesc" type="string">
+        <access read="true"/>
+        <optionalConform/>
+        <constraint type="maxLength" value="64"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0001" name="Enabled" type="bool">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="OnDemandRatings" type="list[RatingNameStruct Type]">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="OCR"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0003" name="OnDemandRatingThreshold" type="string">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="OCR"/>
+      </mandatoryConform>
+      <constraint type="maxLength" value="8"/>
+    </attribute>
+    <attribute id="0x0004" name="ScheduledContentRatings" type="list[RatingNameStruct Type]">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="SCR"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0005" name="ScheduledContentRatingThreshold" type="string">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="SCR"/>
+      </mandatoryConform>
+      <constraint type="maxLength" value="8"/>
+    </attribute>
+    <attribute id="0x0006" name="ScreenDailyTime" type="elapsed-s">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="ST"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0007" name="RemainingScreenTime" type="elapsed-s">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="ST"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0008" name="BlockUnrated" type="bool">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="BU"/>
+      </mandatoryConform>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="UpdatePIN" response="Y">
+      <access invokePrivilege="operate" timed="true"/>
+      <mandatoryConform>
+        <feature name="PIN"/>
+      </mandatoryConform>
+      <field id="0" name="OldPIN" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="6"/>
+      </field>
+      <field id="1" name="NewPIN" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="6"/>
+      </field>
+    </command>
+    <command id="0x01" name="ResetPIN" response="ResetPINResponse">
+      <access invokePrivilege="admin" timed="true"/>
+      <mandatoryConform>
+        <feature name="PIN"/>
+      </mandatoryConform>
+    </command>
+    <command id="0x02" name="ResetPINResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="PIN"/>
+      </mandatoryConform>
+      <field id="0" name="PINCode" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="6"/>
+      </field>
+    </command>
+    <command id="0x03" name="Enable" response="Y">
+      <access invokePrivilege="operate" timed="true"/>
+      <mandatoryConform/>
+      <field id="0" name="PINCode" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="6"/>
+      </field>
+    </command>
+    <command id="0x04" name="Disable" response="Y">
+      <access invokePrivilege="operate" timed="true"/>
+      <mandatoryConform/>
+      <field id="0" name="PINCode" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="6"/>
+      </field>
+    </command>
+    <command id="0x05" name="AddBonusTime" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="ST"/>
+      </mandatoryConform>
+      <field id="0" name="PINCode" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="6"/>
+      </field>
+      <field id="1" name="BonusTime" type="elapsed-s" default="300s">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x06" name="SetScreenDailyTime" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="ST"/>
+      </mandatoryConform>
+      <field id="0" name="PINCode" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="6"/>
+      </field>
+      <field id="1" name="ScreenTime" type="elapsed-s">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x07" name="BlockUnratedContent" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="BU"/>
+      </mandatoryConform>
+      <field id="0" name="PINCode" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="6"/>
+      </field>
+    </command>
+    <command id="0x08" name="UnblockUnratedContent" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="BU"/>
+      </mandatoryConform>
+      <field id="0" name="PINCode" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="6"/>
+      </field>
+    </command>
+  </commands>
+  <events>
+    <event id="0x00" name="RemainingScreenTimeExpired" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="ST"/>
+      </mandatoryConform>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/ContentLauncher.xml b/zcl-builtin/matter/new-data-model/ContentLauncher.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e36de856acdb0cd34d2876736a6f18c897a94c94
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/ContentLauncher.xml
@@ -0,0 +1,297 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x050a" name="Content Launcher" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="CONTENTLAUNCHER" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="CS" name="ContentSearch" summary="Device supports content search (non-app specific)">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="UP" name="URLPlayback" summary="Device supports basic URL-based file playback">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="MetricTypeEnum">
+      <item value="0" name="Pixels" summary="Dimensions defined in a number of Pixels">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Percentage" summary="Dimensions defined as a percentage">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="ParameterEnum">
+      <item value="0" name="Actor" summary="Actor represents an actor credited in video media content; for example, “Gaby Hoffman”">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Channel" summary="Channel represents the identifying data for a television channel; for example, &quot;PBS&quot;">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Character" summary="A character represented in video media content; for example, “Snow White”">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Director" summary="A director of the video media content; for example, “Spike Lee”">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="Event" summary="An event is a reference to a type of event; examples would include sports, music, or other types of events.
+                        For example, searching for &quot;Football games&quot; would search for a 'game' event entity and a 'football' sport entity.">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="Franchise" summary="A franchise is a video entity which can represent a number of video entities, like movies or TV shows.
+                        For example, take the fictional franchise &quot;Intergalactic Wars&quot; which represents a collection of movie trilogies,
+                        as well as animated and live action TV shows. This entity type was introduced to account for requests by customers
+                        such as &quot;Find Intergalactic Wars movies&quot;, which would search for all 'Intergalactic Wars' programs of the MOVIE MediaType,
+                        rather than attempting to match to a single title.">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="Genre" summary="Genre represents the genre of video media content such as action, drama or comedy.">
+        <mandatoryConform/>
+      </item>
+      <item value="7" name="League" summary="League represents the categorical information for a sporting league; for example, &quot;NCAA&quot;">
+        <mandatoryConform/>
+      </item>
+      <item value="8" name="Popularity" summary="Popularity indicates whether the user asks for popular content.">
+        <mandatoryConform/>
+      </item>
+      <item value="9" name="Provider" summary="The provider (MSP) the user wants this media to be played on; for example, &quot;Netflix&quot;.">
+        <mandatoryConform/>
+      </item>
+      <item value="10" name="Sport" summary="Sport represents the categorical information of a sport; for example, football">
+        <mandatoryConform/>
+      </item>
+      <item value="11" name="SportsTeam" summary="SportsTeam represents the categorical information of a professional sports team; for example, &quot;University of Washington Huskies&quot;">
+        <mandatoryConform/>
+      </item>
+      <item value="12" name="Type" summary="The type of content requested. Supported types are &quot;Movie&quot;, &quot;MovieSeries&quot;, &quot;TVSeries&quot;, &quot;TVSeason&quot;, &quot;TVEpisode&quot;, &quot;SportsEvent&quot;, and &quot;Video&quot;">
+        <mandatoryConform/>
+      </item>
+      <item value="13" name="Video" summary="Video represents the identifying data for a specific piece of video content; for example, &quot;Manchester by the Sea&quot;.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="StatusEnum">
+      <item value="0" name="Success" summary="Command succeeded">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="URLNotAvailable" summary="Requested URL could not be reached by device.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="AuthFailed" summary="Requested URL returned 401 error code.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <bitmap name="SupportedProtocolsBitmap">
+      <bitfield name="DASH" bit="0" summary="Device supports Dynamic Adaptive Streaming over HTTP (DASH)">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="HLS" bit="1" summary="Device supports HTTP Live Streaming (HLS)">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <struct name="AdditionalInfoStruct">
+      <field id="0" name="Name" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="256"/>
+      </field>
+      <field id="1" name="Value" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="8192"/>
+      </field>
+    </struct>
+    <struct name="BrandingInformationStruct">
+      <field id="0" name="ProviderName" type="string">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="maxLength" value="256"/>
+      </field>
+      <field id="1" name="Background" type="StyleInformationStruct" default="MS">
+        <access read="true" write="true"/>
+        <optionalConform/>
+      </field>
+      <field id="2" name="Logo" type="StyleInformationStruct" default="MS">
+        <access read="true" write="true"/>
+        <optionalConform/>
+      </field>
+      <field id="3" name="ProgressBar" type="StyleInformationStruct" default="MS">
+        <access read="true" write="true"/>
+        <optionalConform/>
+      </field>
+      <field id="4" name="Splash" type="StyleInformationStruct" default="MS">
+        <access read="true" write="true"/>
+        <optionalConform/>
+      </field>
+      <field id="5" name="WaterMark" type="StyleInformationStruct" default="MS">
+        <access read="true" write="true"/>
+        <optionalConform/>
+      </field>
+    </struct>
+    <struct name="ContentSearchStruct">
+      <field id="0" name="ParameterList" type="list[ParameterStruct Type]" default="0">
+        <mandatoryConform/>
+      </field>
+    </struct>
+    <struct name="DimensionStruct">
+      <field id="0" name="Width" type="double" default="MS">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Height" type="double" default="MS">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="Metric" type="MetricTypeEnum">
+        <mandatoryConform/>
+      </field>
+    </struct>
+    <struct name="ParameterStruct">
+      <field id="0" name="Type" type="ParameterEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Value" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="1024"/>
+      </field>
+      <field id="2" name="ExternalIDList" type="list[AdditionalInfoStruct Type]" default="empty">
+        <optionalConform/>
+      </field>
+    </struct>
+    <struct name="StyleInformationStruct">
+      <field id="0" name="ImageURL" type="string" default="MS">
+        <optionalConform/>
+        <constraint type="maxLength" value="8192"/>
+      </field>
+      <field id="1" name="Color" type="string" default="MS">
+        <optionalConform/>
+        <constraint type="maxLength" value="7"/>
+        <constraint type="maxLength" value="9"/>
+      </field>
+      <field id="2" name="Size" type="DimensionStruct" default="MS">
+        <optionalConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="AcceptHeader" type="list" default="empty">
+      <entry type="string">
+        <constraint type="maxLength" value="1024"/>
+      </entry>
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="UP"/>
+      </mandatoryConform>
+      <constraint type="maxCount" value="100"/>
+    </attribute>
+    <attribute id="0x0001" name="SupportedStreamingProtocols" type="SupportedProtocolsBitmap" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="UP"/>
+      </mandatoryConform>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="LaunchContent" response="LauncherResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="CS"/>
+      </mandatoryConform>
+      <field id="0" name="Search" type="ContentSearchStruct">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="AutoPlay" type="bool">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="2" name="Data" type="string" default="MS">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x01" name="LaunchURL" response="LauncherResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="UP"/>
+      </mandatoryConform>
+      <field id="0" name="ContentURL" type="string">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="DisplayString" type="string" default="MS">
+        <optionalConform/>
+      </field>
+      <field id="2" name="BrandingInformation" type="BrandingInformationStruct" default="MS">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x02" name="LauncherResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="CS"/>
+          <feature name="UP"/>
+        </orTerm>
+      </mandatoryConform>
+      <field id="0" name="Status" type="StatusEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Data" type="string" default="MS">
+        <optionalConform/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/DemandResponseLoadControl.xml b/zcl-builtin/matter/new-data-model/DemandResponseLoadControl.xml
new file mode 100644
index 0000000000000000000000000000000000000000..87e2e54792b739def5eb4a2c93bc578c692265d3
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/DemandResponseLoadControl.xml
@@ -0,0 +1,479 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0096" name="Demand Response and Load Control" revision="4">
+  <revisionHistory>
+    <revision revision="1" summary="mandatory global ClusterRevision attribute added"/>
+    <revision revision="2" summary="Updated from SE1.4 version; CCB 1291 1297 1447 1513 1880 2287 2964 2965"/>
+    <revision revision="3" summary="CCB 2966 3396"/>
+    <revision revision="4" summary="Matter Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="DRLC" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="ENRLG" name="Enrollment Groups" summary="Supports enrollment groups">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="TEMPO" name="TemperatureOffset" summary="Supports temperature offsets">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="2" code="TEMPS" name="TemperatureSetpoint" summary="Supports temperature setpoints">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="3" code="LOADA" name="LoadAdjustment" summary="Supports average load adjustment percentage">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="4" code="DUTYC" name="DutyCycle" summary="Supports duty cycle adjustment">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="5" code="PWRSV" name="PowerSavings" summary="Supports power savings">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="6" code="HEATS" name="HeatingSource" summary="Supports selecting heating source">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="CriticalityLevelEnum">
+      <item value="0" name="Invalid">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Green" summary="Voluntary">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Level1" summary="Voluntary">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Level2" summary="Voluntary">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="Level3" summary="Voluntary">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="Level4" summary="Voluntary">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="Level5" summary="Voluntary">
+        <mandatoryConform/>
+      </item>
+      <item value="7" name="Emergency" summary="Mandatory">
+        <mandatoryConform/>
+      </item>
+      <item value="8" name="PlannedOutage" summary="Mandatory">
+        <mandatoryConform/>
+      </item>
+      <item value="9" name="ServiceDisconnect" summary="Mandatory">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="HeatingSourceEnum">
+      <item value="0" name="Any" summary="Any heating source">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Electric" summary="Electric heating">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="NaturalGas" summary="Gas heating">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="LoadControlEventChangeSourceEnum">
+      <item value="0" name="Automatic" summary="This event change was automatic">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="UserAction" summary="This event change was due to a user action">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="LoadControlEventStatusEnum">
+      <item value="1" name="Received" summary="Load Control Event command received">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="InProgress" summary="Event in progress">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Completed" summary="Event completed">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="OptedOut" summary="User opted-out">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="OptedIn" summary="User opted-in">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="Canceled" summary="Event canceled">
+        <mandatoryConform/>
+      </item>
+      <item value="7" name="Superseded" summary="Event superseded">
+        <mandatoryConform/>
+      </item>
+      <item value="8" name="PartialOptedOut" summary="Event partially completed due to opt-out">
+        <mandatoryConform/>
+      </item>
+      <item value="9" name="PartialOptedIn" summary="Event partially completed due to opt-in">
+        <mandatoryConform/>
+      </item>
+      <item value="10" name="NoParticipation" summary="Event complete with no participation">
+        <mandatoryConform/>
+      </item>
+      <item value="11" name="Unavailable" summary="Device not available to participate">
+        <mandatoryConform/>
+      </item>
+      <item value="12" name="Failed" summary="Device failed to process the event">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="PowerSavingsEnum">
+      <item value="0" name="Low" summary="40% savings">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Medium" summary="70% savings">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="High" summary="100% savings; device off">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <bitmap name="CancelControlBitmap">
+      <bitfield name="RandomEnd" bit="0" summary="Randomize end time">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="EventControlBitmap">
+      <bitfield name="RandomStart" bit="0" summary="Randomize start time">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="EventTransitionControlBitmap">
+      <bitfield name="RandomDuration" bit="0" summary="Randomize duration">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="IgnoreOptOut" bit="1" summary="Ignore opt-out">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <struct name="AverageLoadControlStruct">
+      <field id="1" name="LoadAdjustment" type="int8">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="100"/>
+      </field>
+    </struct>
+    <struct name="DutyCycleControlStruct">
+      <field id="1" name="DutyCycle" type="uint8">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="100"/>
+      </field>
+    </struct>
+    <struct name="HeatingSourceControlStruct">
+      <field id="1" name="HeatingSource" type="HeatingSourceEnum">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+    <struct name="LoadControlEventTransitionStruct">
+      <field id="1" name="Duration" type="uint16" default="0">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="max" value="1440"/>
+      </field>
+      <field id="2" name="Control" type="EventTransitionControlBitmap" default="0">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="TemperatureControl" type="TemperatureControlStruct" default="null">
+        <access read="true" write="true"/>
+        <quality nullable="true"/>
+      </field>
+      <field id="4" name="AverageLoadControl" type="AverageLoadControlStruct" default="null">
+        <access read="true" write="true"/>
+        <quality nullable="true"/>
+      </field>
+      <field id="5" name="DutyCycleControl" type="DutyCycleControlStruct" default="null">
+        <access read="true" write="true"/>
+        <quality nullable="true"/>
+      </field>
+      <field id="6" name="PowerSavingsControl" type="PowerSavingsControlStruct" default="null">
+        <access read="true" write="true"/>
+        <quality nullable="true"/>
+      </field>
+      <field id="7" name="HeatingSourceControl" type="HeatingSourceControlStruct" default="null">
+        <access read="true" write="true"/>
+        <quality nullable="true"/>
+      </field>
+    </struct>
+    <struct name="LoadControlProgramStruct">
+      <field id="0" name="ProgramID" type="octets" default="0">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="maxLength" value="16"/>
+      </field>
+      <field id="1" name="Name" type="string">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="maxLength" value="32"/>
+      </field>
+      <field id="2" name="EnrollmentGroup" type="uint8" default="null">
+        <access read="true" write="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform>
+          <feature name="ENRLG"/>
+        </mandatoryConform>
+        <constraint type="between" from="0x01" to="0xFF"/>
+      </field>
+      <field id="3" name="RandomStartMinutes" type="uint8" default="null">
+        <access read="true" write="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="between" from="0x00" to="0x3C"/>
+      </field>
+      <field id="4" name="RandomDurationMinutes" type="uint8" default="null">
+        <access read="true" write="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="between" from="0x00" to="0x3C"/>
+      </field>
+    </struct>
+    <struct name="PowerSavingsControlStruct">
+      <field id="1" name="PowerSavings" type="PowerSavingsEnum">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+    <struct name="TemperatureControlStruct">
+      <field id="0" name="CoolingTempOffset" type="&lt;&lt;ref_TempDiff&gt;&gt;" default="null">
+        <access read="true" write="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform>
+          <feature name="TEMPO"/>
+        </mandatoryConform>
+        <constraint type="between" from="0x00" to="0x0FE"/>
+      </field>
+      <field id="1" name="HeatingTempOffset" type="&lt;&lt;ref_TempDiff&gt;&gt;" default="null">
+        <access read="true" write="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform>
+          <feature name="TEMPO"/>
+        </mandatoryConform>
+        <constraint type="between" from="0x00" to="0x0FE"/>
+      </field>
+      <field id="2" name="CoolingTempSetpoint" type="temperature" default="null">
+        <access read="true" write="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform>
+          <feature name="TEMPS"/>
+        </mandatoryConform>
+        <constraint type="between" from="0x954D" to="0x7FFF"/>
+      </field>
+      <field id="3" name="HeatingTempSetpoint" type="temperature" default="null">
+        <access read="true" write="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform>
+          <feature name="TEMPS"/>
+        </mandatoryConform>
+        <constraint type="between" from="0x954D" to="0x7FFF"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="DeviceClass" type="DeviceClassBitmap" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="LoadControlPrograms" type="list[LoadControlProgramStruct Type]" default="empty">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="NumberOfLoadControlPrograms" type="uint8" default="5">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="min" value="5"/>
+    </attribute>
+    <attribute id="0x0003" name="Events" type="list[LoadControlEventStruct Type]" default="empty">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0004" name="NumberOfEventsPerProgram" type="uint8" default="10">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="min" value="10"/>
+    </attribute>
+    <attribute id="0x0005" name="NumberOfTransitions" type="uint8" default="3">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="min" value="3"/>
+    </attribute>
+    <attribute id="0x0006" name="DefaultRandomStart" type="uint8" default="0x1E">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0x00" to="0x3C"/>
+    </attribute>
+    <attribute id="0x0007" name="DefaultRandomDuration" type="uint8" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0x00" to="0x3C"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="RegisterLoadControlProgramRequest" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="LoadControlProgram" type="LoadControlProgramStruct">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x01" name="UnregisterLoadControlProgramRequest" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="LoadControlProgramID" type="octets">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="16"/>
+      </field>
+    </command>
+    <command id="0x02" name="AddLoadControlEventRequest" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Event" type="LoadControlEventStruct">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x03" name="RemoveLoadControlEventRequest" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="EventID" type="octets">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="16"/>
+      </field>
+      <field id="1" name="CancelControl" type="CancelControlBitmap" default="0">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x04" name="ClearLoadControlEventsRequest" response="Y">
+      <access invokePrivilege="operate"/>
+      <optionalConform/>
+    </command>
+  </commands>
+  <events>
+    <event id="0x00" name="LoadControlEventStatusChange" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+      <field id="0" name="EventID" type="octets">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="16"/>
+      </field>
+      <field id="1" name="TransitionIndex" type="uint8" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="Status" type="LoadControlEventStatusEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="Criticality" type="CriticalityLevelEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="Control" type="EventControlBitmap" default="0">
+        <mandatoryConform/>
+      </field>
+      <field id="5" name="TemperatureControl" type="TemperatureControlStruct" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform>
+          <orTerm>
+            <feature name="TEMPO"/>
+            <feature name="TEMPS"/>
+          </orTerm>
+        </mandatoryConform>
+      </field>
+      <field id="6" name="AverageLoadControl" type="AverageLoadControlStruct" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform>
+          <feature name="LOADA"/>
+        </mandatoryConform>
+      </field>
+      <field id="7" name="DutyCycleControl" type="DutyCycleControlStruct" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform>
+          <feature name="DUTYC"/>
+        </mandatoryConform>
+      </field>
+      <field id="8" name="PowerSavingsControl" type="PowerSavingsControlStruct" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform>
+          <feature name="PWRSV"/>
+        </mandatoryConform>
+      </field>
+      <field id="9" name="HeatingSourceControl" type="HeatingSourceControlStruct" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform>
+          <feature name="HEATS"/>
+        </mandatoryConform>
+      </field>
+      <field id="255" name="Signature" type="octets" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="maxLength" value="48"/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Descriptor-Cluster.xml b/zcl-builtin/matter/new-data-model/Descriptor-Cluster.xml
new file mode 100644
index 0000000000000000000000000000000000000000..47fa27497c63e47f17db6f989826a64f7d56b7a3
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Descriptor-Cluster.xml
@@ -0,0 +1,111 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x001d" name="Descriptor" revision="2">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+    <revision revision="2" summary="Semantic tag list; TagList feature"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="DESC" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="TAGLIST" name="TagList" summary="The TagList attribute is present"/>
+  </features>
+  <dataTypes>
+    <struct name="DeviceTypeStruct">
+      <field id="0" name="DeviceType" type="devtype-id">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Revision" type="uint16">
+        <mandatoryConform/>
+        <constraint type="min" value="1"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="DeviceTypeList" type="list[DeviceTypeStruct Type]" default="desc">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="min" value="1"/>
+    </attribute>
+    <attribute id="0x0001" name="ServerList" type="list" default="empty">
+      <entry type="cluster-id"/>
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="ClientList" type="list" default="empty">
+      <entry type="cluster-id"/>
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0003" name="PartsList" type="list" default="empty">
+      <entry type="endpoint-no"/>
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0004" name="TagList" type="list[&lt;&lt;ref_SemTag&gt;&gt;]" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="TAGLIST"/>
+      </mandatoryConform>
+      <constraint type="between" from="1" to="6"/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/DeviceEnergyManagement.xml b/zcl-builtin/matter/new-data-model/DeviceEnergyManagement.xml
new file mode 100644
index 0000000000000000000000000000000000000000..74540890dcba7dd65a676e4da2ca8929b2006bf7
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/DeviceEnergyManagement.xml
@@ -0,0 +1,507 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0098" name="Device Energy Management" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="DENM" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="PA" name="PowerAdjustment" summary="Allows an EMS a temporary power
+                                                       adjustment (within the limits offered by the ESA).">
+      <mandatoryConform/>
+    </feature>
+    <feature bit="1" code="PFR" name="PowerForecastReporting" summary="Allows an EMS to request the indicative
+                                                       future power consumption vs time of an ESA.">
+      <otherwiseConform>
+        <mandatoryConform>
+          <feature name="PFA"/>
+        </mandatoryConform>
+        <optionalConform/>
+      </otherwiseConform>
+    </feature>
+    <feature bit="2" code="PFA" name="PowerForecastAdjustment" summary="Allows an EMS to adjust the indicative
+                                                       future power consumption vs time of an ESA.">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <number name="Energy" type=""/>
+    <number name="Power" type=""/>
+    <enum name="CostTypeEnum">
+      <item value="0" name="Financial" summary="Financial cost">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="GHGEmissions" summary="Grid CO2e grams cost">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Comfort" summary="Consumer comfort impact cost">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Temperature" summary="Temperature impact cost">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="EsaStateEnum">
+      <item value="0" name="Offline" summary="The ESA is not available to the EMS (e.g. start-up, maintenance mode)">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Online" summary="The ESA is working normally and can be controlled by the EMS">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Fault" summary="The ESA has developed a fault and cannot provide service">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="UserOptOut" summary="The user has disabled the ESA's flexibility capability for a period of time">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="PowerAdjustActive" summary="The ESA is in the middle of a power adjustment event">
+        <optionalConform>
+          <feature name="PA"/>
+        </optionalConform>
+      </item>
+      <item value="5" name="Paused" summary="The ESA is currently paused in its Power Forecast">
+        <optionalConform>
+          <feature name="PFA"/>
+        </optionalConform>
+      </item>
+    </enum>
+    <enum name="EsaTypeEnum">
+      <item value="0" name="EVSE" summary="EV Supply Equipment">
+        <optionalConform/>
+      </item>
+      <item value="1" name="SpaceHeating" summary="Space heating appliance">
+        <optionalConform/>
+      </item>
+      <item value="2" name="WaterHeating" summary="Water heating appliance">
+        <optionalConform/>
+      </item>
+      <item value="3" name="SpaceCooling" summary="Space cooling appliance">
+        <optionalConform/>
+      </item>
+      <item value="4" name="SpaceHeatingCooling" summary="Space heating and cooling appliance">
+        <optionalConform/>
+      </item>
+      <item value="5" name="BatteryStorage" summary="Battery Electric Storage System">
+        <optionalConform/>
+      </item>
+      <item value="6" name="SolarPV" summary="Solar PV inverter">
+        <optionalConform/>
+      </item>
+      <item value="7" name="FridgeFreezer" summary="Fridge / Freezer">
+        <optionalConform/>
+      </item>
+      <item value="8" name="WashingMachine" summary="Washing Machine">
+        <optionalConform/>
+      </item>
+      <item value="9" name="Dishwasher" summary="Dishwasher">
+        <optionalConform/>
+      </item>
+      <item value="10" name="Cooking" summary="Cooking appliance">
+        <optionalConform/>
+      </item>
+      <item value="255" name="Other" summary="Other appliance type">
+        <optionalConform/>
+      </item>
+    </enum>
+    <struct name="CostStruct">
+      <field id="0" name="CostType" type="CostTypeEnum" default="0">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Value" type="int32" default="0">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="DecimalPoints" type="uint8" default="0">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="Currency" type="uint16" default="0">
+        <access read="true"/>
+        <optionalConform/>
+        <constraint type="max" value="999"/>
+      </field>
+    </struct>
+    <struct name="PowerAdjustStruct">
+      <field id="0" name="MinPower" type="Power" default="0">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="MaxPower" type="Power" default="0">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="MinDuration" type="elapsed-s" default="0">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="MaxDuration" type="elapsed-s">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+    <struct name="PowerForecastStruct">
+      <field id="0" name="ForecastId" type="uint16" default="0">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="ActiveSlotNumber" type="uint16" default="0">
+        <access read="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="StartTime" type="epoch-s">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="EndTime" type="epoch-s">
+        <access read="true"/>
+        <optionalConform/>
+      </field>
+      <field id="4" name="EarliestStartTime" type="epoch-s">
+        <access read="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform>
+          <feature name="PFA"/>
+        </mandatoryConform>
+      </field>
+      <field id="5" name="LatestEndTime" type="epoch-s">
+        <access read="true"/>
+        <mandatoryConform>
+          <feature name="PFA"/>
+        </mandatoryConform>
+      </field>
+      <field id="6" name="IsPausable" type="bool">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="7" name="Slots" type="list">
+        <entry type="SlotStruct"/>
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="maxCount" value="16"/>
+      </field>
+    </struct>
+    <struct name="PowerLimitsStruct structure">
+      <field id="0" name="StartTime" type="epoch-s">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="Duration" type="elapsed-s">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="2" name="NominalPower" type="Power">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="MaximumEnergy" type="Energy">
+        <access read="true" write="true"/>
+        <optionalConform/>
+      </field>
+    </struct>
+    <struct name="SlotAdjustmentStruct">
+      <field id="0" name="SlotIndex" type="uint16">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="NominalPower" type="Power">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="2" name="Duration" type="elapsed-s">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </struct>
+    <struct name="SlotStruct">
+      <field id="0" name="MinDuration" type="elapsed-s">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="MaxDuration" type="elapsed-s">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="DefaultDuration" type="elapsed-s">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="ElapsedSlotTime" type="elapsed-s">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="RemainingSlotTime" type="elapsed-s">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="5" name="SlotIsPauseable" type="bool">
+        <access read="true"/>
+        <optionalConform/>
+      </field>
+      <field id="6" name="NominalPower" type="Power">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="7" name="MinPower" type="Power">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="8" name="MaxPower" type="Power">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="9" name="NominalEnergy" type="Energy">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="10" name="Costs" type="list[CostStruct Type]">
+        <access read="true"/>
+        <optionalConform/>
+        <constraint type="max" value="5"/>
+      </field>
+      <field id="11" name="MinPowerAdjustment" type="Power">
+        <access read="true"/>
+        <mandatoryConform>
+          <feature name="PFA"/>
+        </mandatoryConform>
+      </field>
+      <field id="12" name="MaxPowerAdjustment" type="Power">
+        <access read="true"/>
+        <mandatoryConform>
+          <feature name="PFA"/>
+        </mandatoryConform>
+      </field>
+      <field id="13" name="MinDurationAdjustment" type="elapsed-s">
+        <access read="true"/>
+        <mandatoryConform>
+          <feature name="PFA"/>
+        </mandatoryConform>
+      </field>
+      <field id="14" name="MaxDurationAdjustment" type="elapsed-s">
+        <access read="true"/>
+        <mandatoryConform>
+          <feature name="PFA"/>
+        </mandatoryConform>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="EsaType" type="EsaTypeEnum" default="Other">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="EsaIsGenerator" type="bool" default="false">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="EsaState" type="EsaStateEnum" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0003" name="AbsMinPower" type="Power" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0004" name="AbsMaxPower" type="Power" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0005" name="PowerAdjustmentCapability" type="list[PowerAdjustStruct Type]" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="PA"/>
+      </mandatoryConform>
+      <constraint type="max" value="16"/>
+    </attribute>
+    <attribute id="0x0006" name="PowerForecast" type="PowerForecastStruct" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="PFR"/>
+      </mandatoryConform>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="PowerAdjustRequest" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Power" type="Power">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="Duration" type="elapsed-s">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x01" name="CancelPowerAdjustRequest" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x02" name="StartTimeAdjustRequest" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="PFA"/>
+      </mandatoryConform>
+      <field id="0" name="RequestedStartTime" type="epoch-s">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x03" name="PauseRequest" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="PFA"/>
+      </mandatoryConform>
+    </command>
+    <command id="0x04" name="ResumeRequest" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="PFA"/>
+      </mandatoryConform>
+    </command>
+    <command id="0x05" name="ModifyPowerForecastRequest" response="Y">
+      <access invokePrivilege="operate"/>
+      <optionalConform>
+        <feature name="PFA"/>
+      </optionalConform>
+      <field id="0" name="ForecastId" type="uint32">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="SlotAdjustments" type="list[SlotAdjustmentStruct Type]">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x06" name="RequestLimitBasedPowerForecast" response="Y">
+      <access invokePrivilege="operate"/>
+      <optionalConform>
+        <feature name="PFA"/>
+      </optionalConform>
+      <field id="1" name="PowerLimits" type="list[PowerLimitsStruct structure]">
+        <mandatoryConform/>
+        <constraint type="max" value="10"/>
+      </field>
+    </command>
+  </commands>
+  <events>
+    <event id="0x00" name="PowerAdjustStart" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform>
+        <feature name="PA"/>
+      </optionalConform>
+    </event>
+    <event id="0x01" name="PowerAdjustEnd" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform>
+        <feature name="PA"/>
+      </optionalConform>
+      <field id="0" name="Cause" type="enum8" default="NormalCompletion">
+        <enum>
+          <item value="0" name="NormalCompletion" summary="The ESA completed the session as requested">
+            <optionalConform/>
+          </item>
+          <item value="1" name="Offline" summary="The ESA was set to offline">
+            <optionalConform/>
+          </item>
+          <item value="2" name="Fault" summary="The ESA has developed a fault could not complete the service">
+            <optionalConform/>
+          </item>
+          <item value="3" name="UserOptOut" summary="The user has disabled the ESA's flexibility capability">
+            <optionalConform/>
+          </item>
+        </enum>
+        <mandatoryConform>
+          <feature name="PA"/>
+        </mandatoryConform>
+      </field>
+      <field id="1" name="Duration" type="elapsed-s">
+        <mandatoryConform>
+          <feature name="PA"/>
+        </mandatoryConform>
+      </field>
+      <field id="1" name="EnergyUse" type="Energy">
+        <mandatoryConform>
+          <feature name="PA"/>
+        </mandatoryConform>
+      </field>
+    </event>
+    <event id="0x02" name="Paused" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform>
+        <feature name="PFA"/>
+      </optionalConform>
+    </event>
+    <event id="0x03" name="Resumed" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform>
+        <feature name="PFA"/>
+      </optionalConform>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/DiagnosticLogsCluster.xml b/zcl-builtin/matter/new-data-model/DiagnosticLogsCluster.xml
new file mode 100644
index 0000000000000000000000000000000000000000..89cf8d607b6be4901da74b4c9ac3c79edb6a0f22
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/DiagnosticLogsCluster.xml
@@ -0,0 +1,136 @@
+<?xml version="1.0"?>
+<!--
+link:../matter-defines.adoc[]
+
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0032" name="Diagnostic Logs" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="DLOG" scope="Node"/>
+  <dataTypes>
+    <enum name="IntentEnum">
+      <item value="0" name="EndUserSupport" summary="Logs to be used for end-user support">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="NetworkDiag" summary="Logs to be used for network diagnostics">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="CrashLogs" summary="Obtain crash logs from the Node">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="StatusEnum">
+      <item value="0" name="Success" summary="Successful transfer of logs">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Exhausted" summary="All logs has been transferred">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="NoLogs" summary="No logs of the requested type available">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Busy" summary="Unable to handle request, retry later">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="Denied" summary="The request is denied, no logs being transferred">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="TransferProtocolEnum">
+      <item value="0" name="ResponsePayload" summary="Logs to be returned as a response">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="BDX" summary="Logs to be returned using BDX">
+        <mandatoryConform/>
+      </item>
+    </enum>
+  </dataTypes>
+  <commands>
+    <command id="0x00" name="RetrieveLogsRequest" response="RetrieveLogsResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Intent" type="IntentEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="RequestedProtocol" type="TransferProtocolEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="TransferFileDesignator" type="&lt;&lt;ref_DataTypeString&gt;&gt;">
+        <optionalConform/>
+        <constraint type="max" value="32"/>
+      </field>
+    </command>
+    <command id="0x01" name="RetrieveLogsResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Status" type="StatusEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="LogContent" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <mandatoryConform/>
+        <constraint type="max" value="1024"/>
+      </field>
+      <field id="2" name="UTCTimeStamp" type="&lt;&lt;ref_DataTypeEpochUs&gt;&gt;">
+        <optionalConform/>
+      </field>
+      <field id="3" name="TimeSinceBoot" type="&lt;&lt;ref_DataTypeSystemTimeUs&gt;&gt;">
+        <optionalConform/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/DiagnosticsEthernet.xml b/zcl-builtin/matter/new-data-model/DiagnosticsEthernet.xml
new file mode 100644
index 0000000000000000000000000000000000000000..9dee6834251b45d8fa7fc44806af7e81a179f682
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/DiagnosticsEthernet.xml
@@ -0,0 +1,173 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0037" name="Ethernet Network Diagnostics" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="DGETH" scope="Node"/>
+  <features>
+    <feature bit="0" code="PKTCNT" name="PacketCounts" summary="Node makes available the counts for the number of received and transmitted packets on the ethernet interface.">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="ERRCNT" name="ErrorCounts" summary="Node makes available the counts for the number of errors that have occurred during the reception and transmission of packets on the ethernet interface.">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="PHYRateEnum">
+      <item value="0" name="Rate10M" summary="PHY rate is 10Mbps">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Rate100M" summary="PHY rate is 100Mbps">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Rate1G" summary="PHY rate is 1Gbps">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Rate2_5G" summary="PHY rate is 2.5Gbps">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="Rate5G" summary="PHY rate is 5Gbps">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="Rate10G" summary="PHY rate is 10Gbps">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="Rate40G" summary="PHY rate is 40Gbps">
+        <mandatoryConform/>
+      </item>
+      <item value="7" name="Rate100G" summary="PHY rate is 100Gbps">
+        <mandatoryConform/>
+      </item>
+      <item value="8" name="Rate200G" summary="PHY rate is 200Gbps">
+        <mandatoryConform/>
+      </item>
+      <item value="9" name="Rate400G" summary="PHY rate is 400Gbps">
+        <mandatoryConform/>
+      </item>
+    </enum>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="PHYRate" type="PHYRateEnum" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0001" name="FullDuplex" type="bool" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0002" name="PacketRxCount" type="uint64" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="PKTCNT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0003" name="PacketTxCount" type="uint64" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="PKTCNT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0004" name="TxErrCount" type="uint64" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="ERRCNT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0005" name="CollisionCount" type="uint64" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="ERRCNT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0006" name="OverrunCount" type="uint64" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="ERRCNT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0007" name="CarrierDetect" type="bool" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0008" name="TimeSinceReset" type="uint64" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="ResetCounts" response="Y">
+      <access invokePrivilege="manage"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="PKTCNT"/>
+          <feature name="ERRCNT"/>
+        </orTerm>
+      </mandatoryConform>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/DiagnosticsGeneral.xml b/zcl-builtin/matter/new-data-model/DiagnosticsGeneral.xml
new file mode 100644
index 0000000000000000000000000000000000000000..fdf114dd35f54d2ef03517182ce4ac4a776a9722
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/DiagnosticsGeneral.xml
@@ -0,0 +1,335 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0033" name="General Diagnostics" revision="2">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+    <revision revision="2" summary="UpTime attribute now mandatory, and added TimeSnapshot command"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="DGGEN" scope="Node"/>
+  <dataTypes>
+    <enum name="BootReasonEnum">
+      <item value="0" name="Unspecified" summary="The Node is unable to identify the Power-On reason as one of the other provided enumeration values.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="PowerOnReboot" summary="The Node has booted as the result of physical interaction with the device resulting in a reboot.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="BrownOutReset" summary="The Node has rebooted as the result of a brown-out of the Node's power supply.">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="SoftwareWatchdogReset" summary="The Node has rebooted as the result of a software watchdog timer.">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="HardwareWatchdogReset" summary="The Node has rebooted as the result of a hardware watchdog timer.">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="SoftwareUpdateCompleted" summary="The Node has rebooted as the result of a completed software update.">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="SoftwareReset" summary="The Node has rebooted as the result of a software initiated reboot.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="HardwareFaultEnum">
+      <item value="0" name="Unspecified" summary="The Node has encountered an unspecified fault.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Radio" summary="The Node has encountered a fault with at least one of its radios.">
+        <optionalConform/>
+      </item>
+      <item value="2" name="Sensor" summary="The Node has encountered a fault with at least one of its sensors.">
+        <optionalConform/>
+      </item>
+      <item value="3" name="ResettableOverTemp" summary="The Node has encountered an over-temperature fault that is resettable.">
+        <optionalConform/>
+      </item>
+      <item value="4" name="NonResettableOverTemp" summary="The Node has encountered an over-temperature fault that is not resettable.">
+        <optionalConform/>
+      </item>
+      <item value="5" name="PowerSource" summary="The Node has encountered a fault with at least one of its power sources.">
+        <optionalConform/>
+      </item>
+      <item value="6" name="VisualDisplayFault" summary="The Node has encountered a fault with at least one of its visual displays.">
+        <optionalConform/>
+      </item>
+      <item value="7" name="AudioOutputFault" summary="The Node has encountered a fault with at least one of its audio outputs.">
+        <optionalConform/>
+      </item>
+      <item value="8" name="UserInterfaceFault" summary="The Node has encountered a fault with at least one of its user interfaces.">
+        <optionalConform/>
+      </item>
+      <item value="9" name="NonVolatileMemoryError" summary="The Node has encountered a fault with its non-volatile memory.">
+        <optionalConform/>
+      </item>
+      <item value="10" name="TamperDetected" summary="The Node has encountered disallowed physical tampering.">
+        <optionalConform/>
+      </item>
+    </enum>
+    <enum name="InterfaceTypeEnum">
+      <item value="0" name="Unspecified" summary="Indicates an interface of an unspecified type.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="WiFi" summary="Indicates a Wi-Fi interface.">
+        <optionalConform/>
+      </item>
+      <item value="2" name="Ethernet" summary="Indicates a Ethernet interface.">
+        <optionalConform/>
+      </item>
+      <item value="3" name="Cellular" summary="Indicates a Cellular interface.">
+        <optionalConform/>
+      </item>
+      <item value="4" name="Thread" summary="Indicates a Thread interface.">
+        <optionalConform/>
+      </item>
+    </enum>
+    <enum name="NetworkFaultEnum">
+      <item value="0" name="Unspecified" summary="The Node has encountered an unspecified fault.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="HardwareFailure" summary="The Node has encountered a network fault as a result of a hardware failure.">
+        <optionalConform/>
+      </item>
+      <item value="2" name="NetworkJammed" summary="The Node has encountered a network fault as a result of a jammed network.">
+        <optionalConform/>
+      </item>
+      <item value="3" name="ConnectionFailed" summary="The Node has encountered a network fault as a result of a failure to establish a connection.">
+        <optionalConform/>
+      </item>
+    </enum>
+    <enum name="RadioFaultEnum">
+      <item value="0" name="Unspecified" summary="The Node has encountered an unspecified radio fault.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="WiFiFault" summary="The Node has encountered a fault with its Wi-Fi radio.">
+        <optionalConform/>
+      </item>
+      <item value="2" name="CellularFault" summary="The Node has encountered a fault with its cellular radio.">
+        <optionalConform/>
+      </item>
+      <item value="3" name="ThreadFault" summary="The Node has encountered a fault with its 802.15.4 radio.">
+        <optionalConform/>
+      </item>
+      <item value="4" name="NFCFault" summary="The Node has encountered a fault with its NFC radio.">
+        <optionalConform/>
+      </item>
+      <item value="5" name="BLEFault" summary="The Node has encountered a fault with its BLE radio.">
+        <optionalConform/>
+      </item>
+      <item value="6" name="EthernetFault" summary="The Node has encountered a fault with its Ethernet controller.">
+        <optionalConform/>
+      </item>
+    </enum>
+    <struct name="NetworkInterface">
+      <field id="0" name="Name" type="&lt;&lt;ref_DataTypeString&gt;&gt;">
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="max" value="32"/>
+      </field>
+      <field id="1" name="IsOperational" type="bool">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="OffPremiseServicesReachableIPv4" type="bool" default="null">
+        <access read="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="OffPremiseServicesReachableIPv6" type="bool" default="null">
+        <access read="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="HardwareAddress" type="Hardware Address">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="5" name="IPv4Addresses" type="&lt;&lt;ref_DataTypeList&gt;&gt;[&lt;&lt;ref_Ipv4Adr&gt;&gt;]">
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="max" value="4"/>
+      </field>
+      <field id="6" name="IPv6Addresses" type="&lt;&lt;ref_DataTypeList&gt;&gt;[&lt;&lt;ref_Ipv6Adr&gt;&gt;]">
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="max" value="8"/>
+      </field>
+      <field id="7" name="Type" type="InterfaceTypeEnum">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="NetworkInterfaces" type="&lt;&lt;ref_DataTypeList&gt;&gt;[NetworkInterface Type]">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="max" value="8"/>
+    </attribute>
+    <attribute id="0x0001" name="RebootCount" type="uint16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="UpTime" type="uint64">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0003" name="TotalOperationalHours" type="uint32">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0004" name="BootReason" type="BootReasonEnum">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0005" name="ActiveHardwareFaults" type="&lt;&lt;ref_DataTypeList&gt;&gt;[HardwareFaultEnum Type]">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="max" value="11"/>
+    </attribute>
+    <attribute id="0x0006" name="ActiveRadioFaults" type="&lt;&lt;ref_DataTypeList&gt;&gt;[RadioFaultEnum Type]">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="max" value="7"/>
+    </attribute>
+    <attribute id="0x0007" name="ActiveNetworkFaults" type="&lt;&lt;ref_DataTypeList&gt;&gt;[NetworkFaultEnum Type]">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="max" value="4"/>
+    </attribute>
+    <attribute id="0x0008" name="TestEventTriggersEnabled" type="bool">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="TestEventTrigger" response="Y">
+      <access invokePrivilege="manage"/>
+      <mandatoryConform/>
+      <field id="0" name="EnableKey" type="octets">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="16"/>
+      </field>
+      <field id="1" name="EventTrigger" type="uint64">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x01" name="TimeSnapshot" response="TimeSnapshotResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x02" name="TimeSnapshotResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="SystemTimeUs" type="&lt;&lt;ref_DataTypeSystemTimeUs&gt;&gt;" default="MS">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="UTCTimeUs" type="&lt;&lt;ref_DataTypeEpochUs&gt;&gt;" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </command>
+  </commands>
+  <events>
+    <event id="0x00" name="HardwareFaultChange" priority="critical">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+      <field id="0" name="Current" type="&lt;&lt;ref_DataTypeList&gt;&gt;[HardwareFaultEnum Type]">
+        <mandatoryConform/>
+        <constraint type="max" value="11"/>
+      </field>
+      <field id="1" name="Previous" type="&lt;&lt;ref_DataTypeList&gt;&gt;[HardwareFaultEnum Type]">
+        <mandatoryConform/>
+        <constraint type="max" value="11"/>
+      </field>
+    </event>
+    <event id="0x01" name="RadioFaultChange" priority="critical">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+      <field id="0" name="Current" type="&lt;&lt;ref_DataTypeList&gt;&gt;[RadioFaultEnum Type]">
+        <mandatoryConform/>
+        <constraint type="max" value="7"/>
+      </field>
+      <field id="1" name="Previous" type="&lt;&lt;ref_DataTypeList&gt;&gt;[RadioFaultEnum Type]">
+        <mandatoryConform/>
+        <constraint type="max" value="7"/>
+      </field>
+    </event>
+    <event id="0x02" name="NetworkFaultChange" priority="critical">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+      <field id="0" name="Current" type="&lt;&lt;ref_DataTypeList&gt;&gt;[NetworkFaultEnum Type]">
+        <mandatoryConform/>
+        <constraint type="max" value="4"/>
+      </field>
+      <field id="1" name="Previous" type="&lt;&lt;ref_DataTypeList&gt;&gt;[NetworkFaultEnum Type]">
+        <mandatoryConform/>
+        <constraint type="max" value="4"/>
+      </field>
+    </event>
+    <event id="0x03" name="BootReason" priority="critical">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+      <field id="0" name="BootReason" type="BootReasonEnum">
+        <mandatoryConform/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/DiagnosticsSoftware.xml b/zcl-builtin/matter/new-data-model/DiagnosticsSoftware.xml
new file mode 100644
index 0000000000000000000000000000000000000000..c9934a7c1e740a986216fad48a8c240af7745893
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/DiagnosticsSoftware.xml
@@ -0,0 +1,136 @@
+<?xml version="1.0"?>
+<!--
+link:../matter-defines.adoc[]
+
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0034" name="Software Diagnostics" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="DGSW" scope="Node"/>
+  <features>
+    <feature bit="0" code="WTRMRK" name="Watermarks" summary="Node makes available the metrics for high watermark related to memory consumption.">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <struct name="ThreadMetricsStruct">
+      <field id="0" name="ID" type="uint64">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Name" type="&lt;&lt;ref_DataTypeString&gt;&gt;" default="empty">
+        <optionalConform/>
+        <constraint type="max" value="8"/>
+      </field>
+      <field id="2" name="StackFreeCurrent" type="uint32" default="MS">
+        <optionalConform/>
+      </field>
+      <field id="3" name="StackFreeMinimum" type="uint32" default="MS">
+        <optionalConform/>
+      </field>
+      <field id="4" name="StackSize" type="uint32" default="MS">
+        <optionalConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="ThreadMetrics" type="&lt;&lt;ref_DataTypeList&gt;&gt;[ThreadMetricsStruct]">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="max" value="64"/>
+    </attribute>
+    <attribute id="0x0001" name="CurrentHeapFree" type="uint64">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0002" name="CurrentHeapUsed" type="uint64">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0003" name="CurrentHeapHighWatermark" type="uint64">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="WTRMRK"/>
+      </mandatoryConform>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="ResetWatermarks" response="Y">
+      <access invokePrivilege="manage"/>
+      <mandatoryConform>
+        <feature name="WTRMRK"/>
+      </mandatoryConform>
+    </command>
+  </commands>
+  <events>
+    <event id="0x00" name="SoftwareFault" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+      <field id="0" name="ID" type="uint64" default="0">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Name" type="&lt;&lt;ref_DataTypeString&gt;&gt;" default="empty">
+        <optionalConform/>
+        <constraint type="max" value="8"/>
+      </field>
+      <field id="2" name="FaultRecording" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;" default="empty">
+        <optionalConform/>
+        <constraint type="max" value="1024"/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/DiagnosticsThread.xml b/zcl-builtin/matter/new-data-model/DiagnosticsThread.xml
new file mode 100644
index 0000000000000000000000000000000000000000..1772f31618d2c097a2b2dcbda7a3295fcb80c850
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/DiagnosticsThread.xml
@@ -0,0 +1,691 @@
+<?xml version="1.0"?>
+<!--
+link:../matter-defines.adoc[]
+
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0035" name="Thread Network Diagnostics" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="DGTHREAD" scope="Node"/>
+  <features>
+    <feature bit="0" code="PKTCNT" name="PacketCounts" summary="Server supports the counts for the number of received and transmitted packets on the Thread interface.">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="ERRCNT" name="ErrorCounts" summary="Server supports the counts for the number of errors that have occurred during the reception and transmission of packets on the Thread interface.">
+      <optionalConform/>
+    </feature>
+    <feature bit="2" code="MLECNT" name="MLECounts" summary="Server supports the counts for various MLE layer happenings.">
+      <optionalConform/>
+    </feature>
+    <feature bit="3" code="MACCNT" name="MACCounts" summary="Server supports the counts for various MAC layer happenings.">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="ConnectionStatusEnum">
+      <item value="0" name="Connected" summary="Node is connected">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="NotConnected" summary="Node is not connected">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="NetworkFaultEnum">
+      <item value="0" name="Unspecified" summary="Indicates an unspecified fault.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="LinkDown" summary="Indicates the Thread link is down.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="HardwareFailure" summary="Indicates there has been Thread hardware failure.">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="NetworkJammed" summary="Indicates the Thread network is jammed.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="RoutingRoleEnum">
+      <item value="0" name="Unspecified" summary="Unspecified routing role.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Unassigned" summary="The Node does not currently have a role as a result of the Thread interface not currently being configured or operational.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="SleepyEndDevice" summary="The Node acts as a Sleepy End Device with RX-off-when-idle sleepy radio behavior.">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="EndDevice" summary="The Node acts as an End Device without RX-off-when-idle sleepy radio behavior.">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="REED" summary="The Node acts as an Router Eligible End Device.">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="Router" summary="The Node acts as a Router Device.">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="Leader" summary="The Node acts as a Leader Device.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <struct name="NeighborTableStruct">
+      <field id="0" name="ExtAddress" type="uint64">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Age" type="uint32">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="Rloc16" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="LinkFrameCounter" type="uint32">
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="MleFrameCounter" type="uint32">
+        <mandatoryConform/>
+      </field>
+      <field id="5" name="LQI" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="255"/>
+      </field>
+      <field id="6" name="AverageRssi" type="int8" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="between" from="-128" to="0"/>
+      </field>
+      <field id="7" name="LastRssi" type="int8" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="between" from="-128" to="0"/>
+      </field>
+      <field id="8" name="FrameErrorRate" type="uint8" default="0">
+        <optionalConform/>
+        <constraint type="between" from="0" to="100"/>
+      </field>
+      <field id="9" name="MessageErrorRate" type="uint8" default="0">
+        <optionalConform/>
+        <constraint type="between" from="0" to="100"/>
+      </field>
+      <field id="10" name="RxOnWhenIdle" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="11" name="FullThreadDevice" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="12" name="FullNetworkData" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="13" name="IsChild" type="bool">
+        <mandatoryConform/>
+      </field>
+    </struct>
+    <struct name="OperationalDatasetComponents">
+      <field id="0" name="ActiveTimestampPresent" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="PendingTimestampPresent" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="MasterKeyPresent" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="NetworkNamePresent" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="ExtendedPanIdPresent" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="5" name="MeshLocalPrefixPresent" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="6" name="DelayPresent" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="7" name="PanIdPresent" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="8" name="ChannelPresent" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="9" name="PskcPresent" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="10" name="SecurityPolicyPresent" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="11" name="ChannelMaskPresent" type="bool">
+        <mandatoryConform/>
+      </field>
+    </struct>
+    <struct name="RouteTableStruct">
+      <field id="0" name="ExtAddress" type="uint64">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Rloc16" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="RouterId" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="NextHop" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="PathCost" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="5" name="LQIIn" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="6" name="LQIOut" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="7" name="Age" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="8" name="Allocated" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="9" name="LinkEstablished" type="bool">
+        <mandatoryConform/>
+      </field>
+    </struct>
+    <struct name="SecurityPolicy">
+      <field id="0" name="RotationTime" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Flags" type="uint16">
+        <mandatoryConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="Channel" type="uint16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="RoutingRole" type="RoutingRoleEnum">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="NetworkName" type="String">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="max" value="16"/>
+    </attribute>
+    <attribute id="0x0003" name="PanId" type="uint16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0004" name="ExtendedPanId" type="uint64">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0005" name="MeshLocalPrefix" type="ipv6pre">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0006" name="OverrunCount" type="uint64" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="ERRCNT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0007" name="NeighborTable" type="&lt;&lt;ref_DataTypeList&gt;&gt;[NeighborTableStruct Type]" default="[]">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0008" name="RouteTable" type="&lt;&lt;ref_DataTypeList&gt;&gt;[RouteTableStruct Type]" default="[]">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0009" name="PartitionId" type="uint32">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x000a" name="Weighting" type="uint16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="max" value="255"/>
+    </attribute>
+    <attribute id="0x000b" name="DataVersion" type="uint16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="max" value="255"/>
+    </attribute>
+    <attribute id="0x000c" name="StableDataVersion" type="uint16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="max" value="255"/>
+    </attribute>
+    <attribute id="0x000d" name="LeaderRouterId" type="uint8">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="max" value="62"/>
+    </attribute>
+    <attribute id="0x000e" name="DetachedRoleCount" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MLECNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x000f" name="ChildRoleCount" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MLECNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0010" name="RouterRoleCount" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MLECNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0011" name="LeaderRoleCount" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MLECNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0012" name="AttachAttemptCount" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MLECNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0013" name="PartitionIdChangeCount" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MLECNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0014" name="BetterPartitionAttachAttemptCount" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MLECNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0015" name="ParentChangeCount" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MLECNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0016" name="TxTotalCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0017" name="TxUnicastCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0018" name="TxBroadcastCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0019" name="TxAckRequestedCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x001a" name="TxAckedCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x001b" name="TxNoAckRequestedCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x001c" name="TxDataCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x001d" name="TxDataPollCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x001e" name="TxBeaconCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x001f" name="TxBeaconRequestCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0020" name="TxOtherCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0021" name="TxRetryCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0022" name="TxDirectMaxRetryExpiryCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0023" name="TxIndirectMaxRetryExpiryCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0024" name="TxErrCcaCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0025" name="TxErrAbortCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0026" name="TxErrBusyChannelCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0027" name="RxTotalCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0028" name="RxUnicastCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0029" name="RxBroadcastCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x002a" name="RxDataCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x002b" name="RxDataPollCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x002c" name="RxBeaconCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x002d" name="RxBeaconRequestCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x002e" name="RxOtherCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x002f" name="RxAddressFilteredCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0030" name="RxDestAddrFilteredCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0031" name="RxDuplicatedCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0032" name="RxErrNoFrameCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0033" name="RxErrUnknownNeighborCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0034" name="RxErrInvalidSrcAddrCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0035" name="RxErrSecCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0036" name="RxErrFcsCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0037" name="RxErrOtherCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="MACCNT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0038" name="ActiveTimestamp" type="uint64" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0039" name="PendingTimestamp" type="uint64" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x003a" name="Delay" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x003b" name="SecurityPolicy" type="SecurityPolicy">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x003c" name="ChannelPage0Mask" type="octets">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="maxLength" value="4"/>
+    </attribute>
+    <attribute id="0x003d" name="OperationalDatasetComponents" type="OperationalDatasetComponents">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x003e" name="ActiveNetworkFaultsList" type="&lt;&lt;ref_DataTypeList&gt;&gt;[NetworkFaultEnum Type]">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="max" value="4"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="ResetCounts" response="Y">
+      <access invokePrivilege="manage"/>
+      <mandatoryConform>
+        <feature name="ERRCNT"/>
+      </mandatoryConform>
+    </command>
+  </commands>
+  <events>
+    <event id="0x00" name="ConnectionStatus" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+      <field id="0" name="ConnectionStatus" type="ConnectionStatusEnum">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x01" name="NetworkFaultChange" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+      <field id="0" name="Current" type="&lt;&lt;ref_DataTypeList&gt;&gt;[NetworkFaultEnum Type]">
+        <mandatoryConform/>
+        <constraint type="max" value="4"/>
+      </field>
+      <field id="1" name="Previous" type="&lt;&lt;ref_DataTypeList&gt;&gt;[NetworkFaultEnum Type]">
+        <mandatoryConform/>
+        <constraint type="max" value="4"/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/DiagnosticsWiFi.xml b/zcl-builtin/matter/new-data-model/DiagnosticsWiFi.xml
new file mode 100644
index 0000000000000000000000000000000000000000..967a1eaceb48fc5675019223731edec28d6e535d
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/DiagnosticsWiFi.xml
@@ -0,0 +1,257 @@
+<?xml version="1.0"?>
+<!--
+link:../matter-defines.adoc[]
+
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0036" name="Wi-Fi Network Diagnostics" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="DGWIFI" scope="Node"/>
+  <features>
+    <feature bit="0" code="PKTCNT" name="PacketCounts" summary="Node makes available the counts for the number of received and transmitted packets on the Wi-Fi interface.">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="ERRCNT" name="ErrorCounts" summary="Node makes available the counts for the number of errors that have occurred during the reception and transmission of packets on the Wi-Fi interface.">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="AssociationFailureCauseEnum">
+      <item value="0" name="Unknown" summary="The reason for the failure is unknown.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="AssociationFailed" summary="An error occurred during association.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="AuthenticationFailed" summary="An error occurred during authentication.">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="SsidNotFound" summary="The specified SSID could not be found.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="ConnectionStatusEnum">
+      <item value="0" name="Connected" summary="Indicate the node is connected">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="NotConnected" summary="Indicate the node is not connected">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="SecurityTypeEnum">
+      <item value="0" name="Unspecified" summary="Indicate the usage of an unspecified Wi-Fi security type">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="None" summary="Indicate the usage of no Wi-Fi security">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="WEP" summary="Indicate the usage of WEP Wi-Fi security">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="WPA" summary="Indicate the usage of WPA Wi-Fi security">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="WPA2" summary="Indicate the usage of WPA2 Wi-Fi security">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="WPA3" summary="Indicate the usage of WPA3 Wi-Fi security">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="WiFiVersionEnum">
+      <item value="0" name="a" summary="Indicate the network interface is currently using 802.11a against the wireless access point.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="b" summary="Indicate the network interface is currently using 802.11b against the wireless access point.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="g" summary="Indicate the network interface is currently using 802.11g against the wireless access point.">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="n" summary="Indicate the network interface is currently using 802.11n against the wireless access point.">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="ac" summary="Indicate the network interface is currently using 802.11ac against the wireless access point.">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="ax" summary="Indicate the network interface is currently using 802.11ax against the wireless access point.">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="ah" summary="Indicate the network interface is currently using 802.11ah against the wireless access point.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="BSSID" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="allowed" value="6"/>
+    </attribute>
+    <attribute id="0x0001" name="SecurityType" type="SecurityTypeEnum" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="WiFiVersion" type="WiFiVersionEnum" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0003" name="ChannelNumber" type="uint16" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0004" name="RSSI" type="int8" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="-120" to="0"/>
+    </attribute>
+    <attribute id="0x0005" name="BeaconLostCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="ERRCNT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0006" name="BeaconRxCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="PKTCNT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0007" name="PacketMulticastRxCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="PKTCNT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0008" name="PacketMulticastTxCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="PKTCNT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0009" name="PacketUnicastRxCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="PKTCNT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x000a" name="PacketUnicastTxCount" type="uint32" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="PKTCNT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x000b" name="CurrentMaxRate" type="uint64" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x000c" name="OverrunCount" type="uint64" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="ERRCNT"/>
+      </mandatoryConform>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="ResetCounts" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="ERRCNT"/>
+      </mandatoryConform>
+    </command>
+  </commands>
+  <events>
+    <event id="0x00" name="Disconnection" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+      <field id="0" name="ReasonCode" type="uint16">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x01" name="AssociationFailure" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+      <field id="0" name="AssociationFailureCause" type="AssociationFailureCauseEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Status" type="uint16">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x02" name="ConnectionStatus" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+      <field id="0" name="ConnectionStatus" type="ConnectionStatusEnum">
+        <mandatoryConform/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/DishwasherAlarm.xml b/zcl-builtin/matter/new-data-model/DishwasherAlarm.xml
new file mode 100644
index 0000000000000000000000000000000000000000..b9342d630dbb946993983ed261f43cb7e933896c
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/DishwasherAlarm.xml
@@ -0,0 +1,100 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x005d" name="Dishwasher Alarm" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial revision"/>
+  </revisionHistory>
+  <classification hierarchy="derived" baseCluster="Alarm Base" role="application" picsCode="DISHALM" scope="Endpoint"/>
+  <dataTypes>
+    <bitmap name="AlarmMap">
+      <bitfield name="InflowError" bit="0" summary="Water inflow is abnormal">
+        <otherwiseConform>
+          <provisionalConform/>
+          <optionalConform choice="a" more="true"/>
+        </otherwiseConform>
+      </bitfield>
+      <bitfield name="DrainError" bit="1" summary="Water draining is abnormal">
+        <otherwiseConform>
+          <provisionalConform/>
+          <optionalConform choice="a" more="true"/>
+        </otherwiseConform>
+      </bitfield>
+      <bitfield name="DoorError" bit="2" summary="Door or door lock is abnormal">
+        <optionalConform choice="a" more="true"/>
+      </bitfield>
+      <bitfield name="TempTooLow" bit="3" summary="Unable to reach normal temperature">
+        <otherwiseConform>
+          <provisionalConform/>
+          <optionalConform choice="a" more="true"/>
+        </otherwiseConform>
+      </bitfield>
+      <bitfield name="TempTooHigh" bit="4" summary="Temperature is too high">
+        <otherwiseConform>
+          <provisionalConform/>
+          <optionalConform choice="a" more="true"/>
+        </otherwiseConform>
+      </bitfield>
+      <bitfield name="WaterLevelError" bit="5" summary="Water level is abnormal">
+        <otherwiseConform>
+          <provisionalConform/>
+          <optionalConform choice="a" more="true"/>
+        </otherwiseConform>
+      </bitfield>
+    </bitmap>
+  </dataTypes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/DoorLock.xml b/zcl-builtin/matter/new-data-model/DoorLock.xml
new file mode 100644
index 0000000000000000000000000000000000000000..44ad05fca71234ee534c05ae935a02ac13cdd3e1
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/DoorLock.xml
@@ -0,0 +1,2296 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0101" name="Door Lock" revision="7">
+  <revisionHistory>
+    <revision revision="1" summary="mandatory global ClusterRevision attribute added; CCB 1811 1812 1821"/>
+    <revision revision="2" summary="CCB 2430"/>
+    <revision revision="3" summary="CCB 2629 2630"/>
+    <revision revision="4" summary="All Hubs changes and added feature map"/>
+    <revision revision="5"/>
+    <revision revision="6" summary="New data model format and notation. Added User features. General cleanup of functionality"/>
+    <revision revision="7" summary="Added support for European door locks (unbolt feature)"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="DRLK" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="PIN" name="PIN Credential" summary="Lock supports PIN credentials (via keypad, or over-the-air)">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="RID" name="RFID Credential" summary="Lock supports RFID credentials">
+      <optionalConform/>
+    </feature>
+    <feature bit="2" code="FGP" name="Finger Credentials" summary="Lock supports finger related credentials (fingerprint, finger vein)">
+      <otherwiseConform>
+        <provisionalConform/>
+        <optionalConform/>
+      </otherwiseConform>
+    </feature>
+    <feature bit="3" code="LOG" name="Logging" summary="Lock supports local/on-lock logging when Events are not supported">
+      <optionalConform/>
+    </feature>
+    <feature bit="4" code="WDSCH" name="Week Day Access Schedules" summary="Lock supports week day user access schedules">
+      <optionalConform/>
+    </feature>
+    <feature bit="5" code="DPS" name="Door Position Sensor" summary="Lock supports a door position sensor that indicates door's state">
+      <optionalConform/>
+    </feature>
+    <feature bit="6" code="FACE" name="Face Credentials" summary="Lock supports face related credentials (face, iris, retina)">
+      <otherwiseConform>
+        <provisionalConform/>
+        <optionalConform/>
+      </otherwiseConform>
+    </feature>
+    <feature bit="7" code="COTA" name="Credential Over-the-Air Access" summary="PIN codes over-the-air supported for lock/unlock operations">
+      <optionalConform/>
+    </feature>
+    <feature bit="8" code="USR" name="User" summary="Lock supports the user commands and database">
+      <optionalConform>
+        <orTerm>
+          <feature name="PIN"/>
+          <feature name="RID"/>
+          <feature name="FGP"/>
+          <feature name="FACE"/>
+        </orTerm>
+      </optionalConform>
+    </feature>
+    <feature bit="9" code="NOT" name="Notification" summary="Operation and Programming Notifications">
+      <optionalConform/>
+    </feature>
+    <feature bit="10" code="YDSCH" name="Year Day Access Schedules" summary="Lock supports year day user access schedules">
+      <optionalConform/>
+    </feature>
+    <feature bit="11" code="HDSCH" name="Holiday Schedules" summary="Lock supports holiday schedules">
+      <optionalConform/>
+    </feature>
+    <feature bit="12" code="UBOLT" name="Unbolting" summary="Lock supports unbolting">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <number name="PIN/RFID Code Format" type=""/>
+    <enum name="AlarmCodeEnum">
+      <item value="0" name="LockJammed" summary="Locking Mechanism Jammed">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="LockFactoryReset" summary="Lock Reset to Factory Defaults">
+        <optionalConform/>
+      </item>
+      <item value="3" name="LockRadioPowerCycled" summary="Lock Radio Power Cycled">
+        <optionalConform/>
+      </item>
+      <item value="4" name="WrongCodeEntryLimit" summary="Tamper Alarm - wrong code entry limit">
+        <optionalConform>
+          <feature name="USR"/>
+        </optionalConform>
+      </item>
+      <item value="5" name="FrontEsceutcheonRemoved" summary="Tamper Alarm - front escutcheon removed from main">
+        <optionalConform/>
+      </item>
+      <item value="6" name="DoorForcedOpen" summary="Forced Door Open under Door Locked Condition">
+        <optionalConform>
+          <feature name="DPS"/>
+        </optionalConform>
+      </item>
+      <item value="7" name="DoorAjar" summary="Door ajar">
+        <optionalConform>
+          <feature name="DPS"/>
+        </optionalConform>
+      </item>
+      <item value="8" name="ForcedUser" summary="Force User SOS alarm">
+        <optionalConform>
+          <feature name="USR"/>
+        </optionalConform>
+      </item>
+    </enum>
+    <enum name="CredentialRuleEnum">
+      <item value="0" name="Single" summary="Only one credential is required for lock operation">
+        <mandatoryConform>
+          <feature name="USR"/>
+        </mandatoryConform>
+      </item>
+      <item value="1" name="Dual" summary="Any two credentials are required for lock operation">
+        <optionalConform>
+          <feature name="USR"/>
+        </optionalConform>
+      </item>
+      <item value="2" name="Tri" summary="Any three credentials are required for lock operation">
+        <optionalConform>
+          <feature name="USR"/>
+        </optionalConform>
+      </item>
+    </enum>
+    <enum name="CredentialTypeEnum">
+      <item value="0" name="ProgrammingPIN" summary="Programming PIN code credential type">
+        <optionalConform/>
+      </item>
+      <item value="1" name="PIN" summary="PIN code credential type">
+        <mandatoryConform>
+          <feature name="PIN"/>
+        </mandatoryConform>
+      </item>
+      <item value="2" name="RFID" summary="RFID identifier credential type">
+        <mandatoryConform>
+          <feature name="RID"/>
+        </mandatoryConform>
+      </item>
+      <item value="3" name="Fingerprint" summary="Fingerprint identifier credential type">
+        <mandatoryConform>
+          <feature name="FGP"/>
+        </mandatoryConform>
+      </item>
+      <item value="4" name="FingerVein" summary="Finger vein identifier credential type">
+        <mandatoryConform>
+          <feature name="FGP"/>
+        </mandatoryConform>
+      </item>
+      <item value="5" name="Face" summary="Face identifier credential type">
+        <mandatoryConform>
+          <feature name="FACE"/>
+        </mandatoryConform>
+      </item>
+    </enum>
+    <enum name="DataOperationTypeEnum">
+      <item value="0" name="Add" summary="Data is being added or was added">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Clear" summary="Data is being cleared or was cleared">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Modify" summary="Data is being modified or was modified">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="DoorLockStatus">
+      <item value="2" summary="Entry would cause a duplicate credential/ID.">
+        <mandatoryConform/>
+      </item>
+      <item value="3" summary="Entry would replace an occupied slot.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="DoorStateEnum">
+      <item value="0" name="DoorOpen" summary="Door state is open">
+        <mandatoryConform>
+          <feature name="DPS"/>
+        </mandatoryConform>
+      </item>
+      <item value="1" name="DoorClosed" summary="Door state is closed">
+        <mandatoryConform>
+          <feature name="DPS"/>
+        </mandatoryConform>
+      </item>
+      <item value="2" name="DoorJammed" summary="Door state is jammed">
+        <optionalConform>
+          <feature name="DPS"/>
+        </optionalConform>
+      </item>
+      <item value="3" name="DoorForcedOpen" summary="Door state is currently forced open">
+        <optionalConform>
+          <feature name="DPS"/>
+        </optionalConform>
+      </item>
+      <item value="4" name="DoorUnspecifiedError" summary="Door state is invalid for unspecified reason">
+        <optionalConform>
+          <feature name="DPS"/>
+        </optionalConform>
+      </item>
+      <item value="5" name="DoorAjar" summary="Door state is ajar">
+        <optionalConform>
+          <feature name="DPS"/>
+        </optionalConform>
+      </item>
+    </enum>
+    <enum name="LockDataTypeEnum">
+      <item value="0" name="Unspecified" summary="Unspecified or manufacturer specific lock user data added, cleared, or modified.">
+        <optionalConform/>
+      </item>
+      <item value="1" name="ProgrammingCode" summary="Lock programming PIN code was added, cleared, or modified.">
+        <optionalConform/>
+      </item>
+      <item value="2" name="UserIndex" summary="Lock user index was added, cleared, or modified.">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="WeekDaySchedule" summary="Lock user week day schedule was added, cleared, or modified.">
+        <mandatoryConform>
+          <feature name="WDSCH"/>
+        </mandatoryConform>
+      </item>
+      <item value="4" name="YearDaySchedule" summary="Lock user year day schedule was added, cleared, or modified.">
+        <mandatoryConform>
+          <feature name="YDSCH"/>
+        </mandatoryConform>
+      </item>
+      <item value="5" name="HolidaySchedule" summary="Lock holiday schedule was added, cleared, or modified.">
+        <mandatoryConform>
+          <feature name="HDSCH"/>
+        </mandatoryConform>
+      </item>
+      <item value="6" name="PIN" summary="Lock user PIN code was added, cleared, or modified.">
+        <mandatoryConform>
+          <feature name="PIN"/>
+        </mandatoryConform>
+      </item>
+      <item value="7" name="RFID" summary="Lock user RFID code was added, cleared, or modified.">
+        <mandatoryConform>
+          <feature name="RID"/>
+        </mandatoryConform>
+      </item>
+      <item value="8" name="Fingerprint" summary="Lock user fingerprint was added, cleared, or modified.">
+        <mandatoryConform>
+          <feature name="FGP"/>
+        </mandatoryConform>
+      </item>
+      <item value="9" name="FingerVein" summary="Lock user finger-vein information was added, cleared, or modified.">
+        <mandatoryConform>
+          <feature name="FGP"/>
+        </mandatoryConform>
+      </item>
+      <item value="10" name="Face" summary="Lock user face information was added, cleared, or modified.">
+        <mandatoryConform>
+          <feature name="FACE"/>
+        </mandatoryConform>
+      </item>
+    </enum>
+    <enum name="LockOperationTypeEnum">
+      <item value="0" name="Lock" summary="Lock operation">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Unlock" summary="Unlock operation">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="NonAccessUserEvent" summary="Triggered by keypad entry for user with User Type set to Non Access User">
+        <optionalConform/>
+      </item>
+      <item value="3" name="ForcedUserEvent" summary="Triggered by using a user with UserType set to Forced User">
+        <optionalConform/>
+      </item>
+      <item value="4" name="Unlatch" summary="Unlatch operation">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="OperatingModeEnum">
+      <item value="0" name="Normal">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Vacation">
+        <optionalConform/>
+      </item>
+      <item value="2" name="Privacy">
+        <optionalConform/>
+      </item>
+      <item value="3" name="NoRemoteLockUnlock">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="Passage">
+        <optionalConform/>
+      </item>
+    </enum>
+    <enum name="OperationErrorEnum">
+      <item value="0" name="Unspecified" summary="Lock/unlock error caused by unknown or unspecified source">
+        <optionalConform/>
+      </item>
+      <item value="1" name="InvalidCredential" summary="Lock/unlock error caused by invalid PIN, RFID, fingerprint or other credential">
+        <mandatoryConform>
+          <feature name="USR"/>
+        </mandatoryConform>
+      </item>
+      <item value="2" name="DisabledUserDenied" summary="Lock/unlock error caused by disabled USER or credential">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Restricted" summary="Lock/unlock error caused by schedule restriction">
+        <mandatoryConform>
+          <orTerm>
+            <feature name="WDSCH"/>
+            <feature name="YDSCH"/>
+          </orTerm>
+        </mandatoryConform>
+      </item>
+      <item value="4" name="InsufficientBattery" summary="Lock/unlock error caused by insufficient battery power left to safely actuate the lock">
+        <optionalConform/>
+      </item>
+    </enum>
+    <enum name="OperationSourceEnum">
+      <item value="0" name="Unspecified" summary="Lock/unlock operation came from unspecified source">
+        <optionalConform/>
+      </item>
+      <item value="1" name="Manual" summary="Lock/unlock operation came from manual operation (key, thumbturn, handle, etc).">
+        <optionalConform/>
+      </item>
+      <item value="2" name="ProprietaryRemote" summary="Lock/unlock operation came from prioretary remote source (e.g. vendor app/cloud)">
+        <optionalConform/>
+      </item>
+      <item value="3" name="Keypad" summary="Lock/unlock operation came from keypad">
+        <optionalConform/>
+      </item>
+      <item value="4" name="Auto" summary="Lock/unlock operation came from lock automatically (e.g. relock timer)">
+        <optionalConform/>
+      </item>
+      <item value="5" name="Button" summary="Lock/unlock operation came from lock button (e.g. one touch or button)">
+        <optionalConform/>
+      </item>
+      <item value="6" name="Schedule" summary="Lock/unlock operation came from lock due to a schedule">
+        <mandatoryConform>
+          <feature name="HDSCH"/>
+        </mandatoryConform>
+      </item>
+      <item value="7" name="Remote" summary="Lock/unlock operation came from remote node">
+        <mandatoryConform/>
+      </item>
+      <item value="8" name="RFID" summary="Lock/unlock operation came from RFID card">
+        <mandatoryConform>
+          <feature name="RID"/>
+        </mandatoryConform>
+      </item>
+      <item value="9" name="Biometric" summary="Lock/unlock operation came from biometric source (e.g. face, fingerprint/fingervein)">
+        <optionalConform>
+          <feature name="USR"/>
+        </optionalConform>
+      </item>
+    </enum>
+    <enum name="UserStatusEnum">
+      <item value="0" name="Available">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="OccupiedEnabled">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="OccupiedDisabled">
+        <optionalConform/>
+      </item>
+    </enum>
+    <enum name="UserTypeEnum">
+      <item value="0" name="UnrestrictedUser">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="YearDayScheduleUser">
+        <optionalConform/>
+      </item>
+      <item value="2" name="WeekDayScheduleUser">
+        <optionalConform/>
+      </item>
+      <item value="3" name="ProgrammingUser">
+        <optionalConform/>
+      </item>
+      <item value="4" name="NonAccessUser">
+        <optionalConform/>
+      </item>
+      <item value="5" name="ForcedUser">
+        <optionalConform>
+          <feature name="USR"/>
+        </optionalConform>
+      </item>
+      <item value="6" name="DisposableUser">
+        <optionalConform>
+          <feature name="USR"/>
+        </optionalConform>
+      </item>
+      <item value="7" name="ExpiringUser">
+        <optionalConform>
+          <feature name="USR"/>
+        </optionalConform>
+      </item>
+      <item value="8" name="ScheduleRestrictedUser">
+        <mandatoryConform>
+          <orTerm>
+            <feature name="WDSCH"/>
+            <feature name="YDSCH"/>
+          </orTerm>
+        </mandatoryConform>
+      </item>
+      <item value="9" name="RemoteOnlyUser">
+        <mandatoryConform>
+          <andTerm>
+            <feature name="USR"/>
+            <feature name="COTA"/>
+            <feature name="PIN"/>
+          </andTerm>
+        </mandatoryConform>
+      </item>
+    </enum>
+    <bitmap name="DaysMaskMap">
+      <bitfield name="Sunday" bit="0">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Monday" bit="1">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Tuesday" bit="2">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Wednesday" bit="3">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Thursday" bit="4">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Friday" bit="5">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Saturday" bit="6">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <struct name="CredentialStruct">
+      <field id="0" name="CredentialType" type="CredentialTypeEnum">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="CredentialIndex" type="uint16" default="0">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="LockState" type="enum8">
+      <enum>
+        <item value="0" name="Not Fully Locked" summary="Lock state is not fully locked">
+          <mandatoryConform/>
+        </item>
+        <item value="1" name="Locked" summary="Lock state is fully locked">
+          <mandatoryConform/>
+        </item>
+        <item value="2" name="Unlocked" summary="Lock state is fully unlocked">
+          <mandatoryConform/>
+        </item>
+        <item value="3" name="Unlatched" summary="Lock state is fully unlocked and the latch is pulled">
+          <optionalConform/>
+        </item>
+      </enum>
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="true" persistence="volatile" reportable="true"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0001" name="LockType" type="enum8">
+      <enum>
+        <item value="0" name="Dead bolt" summary="Physical lock type is dead bolt">
+          <mandatoryConform/>
+        </item>
+        <item value="1" name="Magnetic" summary="Physical lock type is magnetic">
+          <mandatoryConform/>
+        </item>
+        <item value="2" name="Other" summary="Physical lock type is other">
+          <mandatoryConform/>
+        </item>
+        <item value="3" name="Mortise" summary="Physical lock type is mortise">
+          <mandatoryConform/>
+        </item>
+        <item value="4" name="Rim" summary="Physical lock type is rim">
+          <mandatoryConform/>
+        </item>
+        <item value="5" name="Latch Bolt" summary="Physical lock type is latch bolt">
+          <mandatoryConform/>
+        </item>
+        <item value="6" name="Cylindrical Lock" summary="Physical lock type is cylindrical lock">
+          <mandatoryConform/>
+        </item>
+        <item value="7" name="Tubular Lock" summary="Physical lock type is tubular lock">
+          <mandatoryConform/>
+        </item>
+        <item value="8" name="Interconnected Lock" summary="Physical lock type is interconnected lock">
+          <mandatoryConform/>
+        </item>
+        <item value="9" name="Dead Latch" summary="Physical lock type is dead latch">
+          <mandatoryConform/>
+        </item>
+        <item value="10" name="Door Furniture" summary="Physical lock type is door furniture">
+          <mandatoryConform/>
+        </item>
+        <item value="11" name="Eurocylinder" summary="Physical lock type is eurocylinder">
+          <mandatoryConform/>
+        </item>
+      </enum>
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0002" name="ActuatorEnabled" type="bool">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0003" name="DoorState" type="enum8">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform>
+        <feature name="DPS"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0004" name="DoorOpenEvents" type="uint32">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform>
+        <feature name="DPS"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0005" name="DoorClosedEvents" type="uint32">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform>
+        <feature name="DPS"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0006" name="OpenPeriod" type="uint16">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform>
+        <feature name="DPS"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0010" name="NumberOfLogRecordsSupported" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="LOG"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0011" name="NumberOfTotalUsersSupported" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="USR"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0012" name="NumberOfPINUsersSupported" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="PIN"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0013" name="NumberOfRFIDUsersSupported" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="RID"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0014" name="NumberOfWeekDaySchedulesSupportedPerUser" type="uint8" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="WDSCH"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0015" name="NumberOfYearDaySchedulesSupportedPerUser" type="uint8" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="YDSCH"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0016" name="NumberOfHolidaySchedulesSupported" type="uint8" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="HDSCH"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0017" name="MaxPINCodeLength" type="uint8" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="PIN"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0018" name="MinPINCodeLength" type="uint8" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="PIN"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0019" name="MaxRFIDCodeLength" type="uint8" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="RID"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x001a" name="MinRFIDCodeLength" type="uint8" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="RID"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x001b" name="CredentialRulesSupport" type="map8" default="1">
+      <bitmap>
+        <bitfield name="Single" bit="0" summary="Only one credential is required for lock operation">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Dual" bit="1" summary="Any two credentials are required for lock operation">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Tri" bit="2" summary="Any three credentials are required for lock operation">
+          <mandatoryConform/>
+        </bitfield>
+      </bitmap>
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="USR"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x001c" name="NumberOfCredentialsSupportedPerUser" type="uint8" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="USR"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0020" name="EnableLogging" type="bool" default="0">
+      <access read="true" write="optional" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform>
+        <feature name="LOG"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0021" name="Language" type="string" default="MS">
+      <access read="true" write="optional" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform/>
+      <constraint type="maxLength" value="3"/>
+    </attribute>
+    <attribute id="0x0022" name="LEDSettings" type="uint8" default="0">
+      <access read="true" write="optional" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0023" name="AutoRelockTime" type="uint32" default="MS">
+      <access read="true" write="optional" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0024" name="SoundVolume" type="uint8" default="0">
+      <access read="true" write="optional" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0025" name="OperatingMode" type="enum8" default="0">
+      <access read="true" write="optional" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0026" name="SupportedOperatingModes" type="map16" default="0xFFF6">
+      <bitmap>
+        <bitfield name="Normal" bit="0">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Vacation" bit="1">
+          <optionalConform/>
+        </bitfield>
+        <bitfield name="Privacy" bit="2">
+          <optionalConform/>
+        </bitfield>
+        <bitfield name="NoRemoteLockUnlock" bit="3">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Passage" bit="4">
+          <optionalConform/>
+        </bitfield>
+      </bitmap>
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0027" name="DefaultConfigurationRegister" type="map16" default="0">
+      <bitmap>
+        <bitfield name="Local Programming" bit="0" summary="0 - Enable Local Programming Attribute default value is 0 (disabled)
+
+1 - Enable Local Programming Attribute default value is 1 (enabled)">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Keypad Interface" bit="1" summary="0 –Keypad Interface default access is disabled
+
+1 - Keypad Interface default access is enabled">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Remote Interface" bit="2" summary="0 - Remote Interface default access is disabled
+
+1 - Remote Interface default access is enabled">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Sound Volume" bit="5" summary="0 – Sound Volume attribute default value is 0 (Silent Mode)
+
+1 – Sound Volume attribute default value is equal to something other
+than 0">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Auto Relock" bit="6" summary="0 – Auto Relock Time attribute default value = 0
+
+1 – Auto Relock Time attribute default value is equal to something other
+than 0">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="LED Settings" bit="7" summary="0 – LED Settings attribute default value = 0
+
+1 – LED Settings attribute default value is equal to something other
+than 0">
+          <mandatoryConform/>
+        </bitfield>
+      </bitmap>
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0028" name="EnableLocalProgramming" type="bool" default="1">
+      <access read="true" write="optional" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0029" name="EnableOneTouchLocking" type="bool" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x002a" name="EnableInsideStatusLED" type="bool" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x002b" name="EnablePrivacyModeButton" type="bool" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x002c" name="LocalProgrammingFeatures" type="map8" default="0">
+      <bitmap>
+        <bitfield name="Add Locally" bit="0" summary="0 - The ability to add Users/credentials/Schedules locally is disabled
+
+1 - The ability to add Users/Credentials/Schedules locally is enabled">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Modify Locally" bit="1" summary="0 - The ability to modify Users/credentials/Schedules locally is disabled
+
+1 - The ability to modify Users/Credentials/Schedules locally is enabled">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Clear Locally" bit="2" summary="0 - The ability to clear Users/credentials/Schedules locally is disabled
+
+1 - The ability to clear Users/Credentials/Schedules locally is enabled">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Adjust Locally" bit="3" summary="0 - The ability to adjust lock settings locally is disabled
+
+1 - The ability to adjust lock settings locally is enabled">
+          <mandatoryConform/>
+        </bitfield>
+      </bitmap>
+      <access read="true" write="optional" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0030" name="WrongCodeEntryLimit" type="uint8" default="MS">
+      <access read="true" write="optional" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="PIN"/>
+          <feature name="RID"/>
+        </orTerm>
+      </mandatoryConform>
+      <constraint type="between" from="1" to="255"/>
+    </attribute>
+    <attribute id="0x0031" name="UserCodeTemporaryDisableTime" type="uint8" default="MS">
+      <access read="true" write="optional" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="PIN"/>
+          <feature name="RID"/>
+        </orTerm>
+      </mandatoryConform>
+      <constraint type="between" from="1" to="255"/>
+    </attribute>
+    <attribute id="0x0032" name="SendPINOverTheAir" type="bool" default="0">
+      <access read="true" write="optional" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform>
+        <andTerm>
+          <notTerm>
+            <feature name="USR"/>
+          </notTerm>
+          <feature name="PIN"/>
+        </andTerm>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0033" name="RequirePINforRemoteOperation" type="bool" default="0">
+      <access read="true" write="optional" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="COTA"/>
+          <feature name="PIN"/>
+        </andTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0034" name="SecurityLevel" default="0">
+      <deprecateConform/>
+    </attribute>
+    <attribute id="0x0035" name="ExpiringUserTimeout" type="uint16" default="MS">
+      <access read="true" write="optional" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform>
+        <feature name="USR"/>
+      </optionalConform>
+      <constraint type="between" from="1" to="2880"/>
+    </attribute>
+    <attribute id="0x0040" name="AlarmMask" type="map16" default="0xFFFF">
+      <bitmap>
+        <bitfield name="Alarm Code 0" bit="0" summary="Locking Mechanism Jammed">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Alarm Code 1" bit="1" summary="Lock Reset to Factory Defaults">
+          <optionalConform/>
+        </bitfield>
+        <bitfield name="Alarm Code 2" bit="2" summary="Reserved">
+          <optionalConform/>
+        </bitfield>
+        <bitfield name="Alarm Code 3" bit="3" summary="RF Module Power Cycled">
+          <optionalConform/>
+        </bitfield>
+        <bitfield name="Alarm Code 4" bit="4" summary="Tamper Alarm - wrong code entry limit">
+          <mandatoryConform>
+            <orTerm>
+              <feature name="PIN"/>
+              <feature name="RID"/>
+            </orTerm>
+          </mandatoryConform>
+        </bitfield>
+        <bitfield name="Alarm Code 5" bit="5" summary="Tamper Alarm - front escutcheon removed from main">
+          <optionalConform/>
+        </bitfield>
+        <bitfield name="Alarm Code 6" bit="6" summary="Forced Door Open under Door Locked Condition">
+          <optionalConform/>
+        </bitfield>
+      </bitmap>
+      <access read="true" write="true" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0041" name="KeypadOperationEventMask" type="map16" default="0xFFFF">
+      <bitmap>
+        <bitfield name="Operation Event Code 0" bit="0" summary="Unknown or manufacturer-specific keypad operation event">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 1" bit="1" summary="Lock, source: keypad">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 2" bit="2" summary="Unlock, source: keypad">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 3" bit="3" summary="Lock, source: keypad, error: invalid PIN">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 4" bit="4" summary="Lock, source: keypad, error: invalid schedule">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 5" bit="5" summary="Unlock, source: keypad, error: invalid code">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 6" bit="6" summary="Unlock, source: keypad, error: invalid schedule">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 15" bit="7" summary="Non-Access User operation event, source keypad.">
+          <mandatoryConform/>
+        </bitfield>
+      </bitmap>
+      <access read="true" write="true" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform>
+        <andTerm>
+          <feature name="NOT"/>
+          <feature name="PIN"/>
+        </andTerm>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0042" name="RemoteOperationEventMask" type="map16" default="0xFFFF">
+      <bitmap>
+        <bitfield name="Operation Event Code 0" bit="0" summary="Unknown or manufacturer-specific remote operation event">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 1" bit="1" summary="Lock, source: remote">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 2" bit="2" summary="Unlock, source: remote">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 3" bit="3" summary="Lock, source: remote, error: invalid code">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 4" bit="4" summary="Lock, source: remote, error: invalid schedule">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 5" bit="5" summary="Unlock, source: remote, error: invalid code">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 6" bit="6" summary="Unlock, source: remote, error: invalid schedule">
+          <mandatoryConform/>
+        </bitfield>
+      </bitmap>
+      <access read="true" write="true" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform>
+        <feature name="NOT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0043" name="ManualOperationEventMask" type="map16" default="0xFFFF">
+      <bitmap>
+        <bitfield name="Operation Even Code 0" bit="0" summary="Unknown or manufacturer-specific manual operation event">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Even Code 1" bit="1" summary="Thumbturn Lock">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Even Code 2" bit="2" summary="Thumbturn Unlock">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Even Code 7" bit="3" summary="One touch lock">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Even Code 8" bit="4" summary="Key Lock">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Even Code 9" bit="5" summary="Key Unlock">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Even Code 10" bit="6" summary="Auto lock">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Even Code 11" bit="7" summary="Schedule Lock">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Even Code 12" bit="8" summary="Schedule Unlock">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Even Code 13" bit="9" summary="Manual Lock (Key or Thumbturn)">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Even Code 14" bit="10" summary="Manual Unlock (Key or Thumbturn)">
+          <mandatoryConform/>
+        </bitfield>
+      </bitmap>
+      <access read="true" write="true" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform>
+        <feature name="NOT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0044" name="RFIDOperationEventMask" type="map16" default="0xFFFF">
+      <bitmap>
+        <bitfield name="Operation Event Code 0" bit="0" summary="Unknown or manufacturer-specific keypad operation event">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 1" bit="1" summary="Lock, source: RFID">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 2" bit="2" summary="Unlock, source: RFID">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 3" bit="3" summary="Lock, source: RFID, error: invalid RFID ID">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 4" bit="4" summary="Lock, source: RFID, error: invalid schedule">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 5" bit="5" summary="Unlock, source: RFID, error: invalid RFID ID">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Operation Event Code 6" bit="6" summary="Unlock, source: RFID, error: invalid schedule">
+          <mandatoryConform/>
+        </bitfield>
+      </bitmap>
+      <access read="true" write="true" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform>
+        <andTerm>
+          <feature name="NOT"/>
+          <feature name="RID"/>
+        </andTerm>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0045" name="KeypadProgrammingEventMask" type="map16" default="0xFFFF">
+      <bitmap>
+        <bitfield name="Program Event Code 0" bit="0" summary="Unknown or manufacturer-specific keypad programming event">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Program Event Code 1" bit="1" summary="Programming PIN code changed, source: keypad
+
+User ID: programming user ID.
+
+PIN: default or programming PIN code if codes can be sent over the air per attribute.
+
+User type: default
+
+User Status: default">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Program Event Code 2" bit="2" summary="PIN added, source: keypad
+
+User ID: user ID that was added.
+
+PIN: code that was added (if codes can be sent over the air per attribute.)
+
+User type: default or type added.
+
+User Status: default or status added.">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Program Event Code 3" bit="3" summary="PIN cleared, source: keypad
+
+User ID: user ID that was cleared.
+
+PIN: code that was cleared (if codes can be sent over the air per attribute.)
+
+User type: default or type cleared.
+
+User Status: default or status cleared.">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Program Event Code 4" bit="4" summary="PIN changed
+
+Source: keypad
+
+User ID: user ID that was changed
+
+PIN: code that was changed (if codes can be sent over the air per attribute.)
+
+User type: default or type changed.
+
+User Status: default or status changed.">
+          <mandatoryConform/>
+        </bitfield>
+      </bitmap>
+      <access read="true" write="true" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform>
+        <andTerm>
+          <feature name="NOT"/>
+          <feature name="PIN"/>
+        </andTerm>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0046" name="RemoteProgrammingEventMask" type="map16" default="0xFFFF">
+      <bitmap>
+        <bitfield name="Program Event Code 0" bit="0" summary="Unknown or manufacturer-specific remote programming event.">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Program Event Code 2" bit="2" summary="PIN added, source remote
+
+Same as keypad source above">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Program Event Code 3" bit="3" summary="PIN cleared, source remote
+
+Same as keypad source above.">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Program Event Code 4" bit="4" summary="PIN changed
+
+Source remote
+
+Same as keypad source above">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Program Event Code 5" bit="5" summary="RFID code added, Source remote">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Program Event Code 6" bit="6" summary="RFID code cleared, Source remote">
+          <mandatoryConform/>
+        </bitfield>
+      </bitmap>
+      <access read="true" write="true" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform>
+        <feature name="NOT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0047" name="RFIDProgrammingEventMask" type="map16" default="0xFFFF">
+      <bitmap>
+        <bitfield name="Program Event Code 0" bit="0" summary="Unknown or manufacturer-specific keypad programming event">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Program Event Code 5" bit="5" summary="ID Added, Source: RFID
+
+User ID: user ID that was added.
+
+ID: ID that was added (if codes can be sent over the air per attribute.)
+
+User Type: default or type added.
+
+User Status: default or status added.">
+          <mandatoryConform/>
+        </bitfield>
+        <bitfield name="Program Event Code 6" bit="6" summary="ID cleared, Source: RFID
+
+User ID: user ID that was cleared.
+
+ID: ID that was cleared (if codes can be sent over the air per attribute.)
+
+User Type: default or type cleared.
+
+User Status: default or status cleared.">
+          <mandatoryConform/>
+        </bitfield>
+      </bitmap>
+      <access read="true" write="true" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform>
+        <andTerm>
+          <feature name="NOT"/>
+          <feature name="RID"/>
+        </andTerm>
+      </optionalConform>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="Lock Door" response="Y">
+      <access invokePrivilege="operate" timed="true"/>
+      <mandatoryConform/>
+      <field id="0" name="PINCode
+
+        PIN/RFID Code&amp;#8224;" type="octets">
+        <optionalConform>
+          <andTerm>
+            <feature name="COTA"/>
+            <feature name="PIN"/>
+          </andTerm>
+        </optionalConform>
+      </field>
+    </command>
+    <command id="0x01" name="Unlock Door" response="Y">
+      <access invokePrivilege="operate" timed="true"/>
+      <mandatoryConform/>
+      <field id="0" name="PINCode
+
+        PIN/RFID Code&amp;#8224;" type="octets">
+        <optionalConform>
+          <andTerm>
+            <feature name="COTA"/>
+            <feature name="PIN"/>
+          </andTerm>
+        </optionalConform>
+      </field>
+    </command>
+    <command id="0x02" name="Toggle" response="Y">
+      <access invokePrivilege="operate" timed="true"/>
+      <disallowConform/>
+    </command>
+    <command id="0x03" name="Unlock with Timeout" response="Y">
+      <access invokePrivilege="operate" timed="true"/>
+      <optionalConform/>
+      <field id="0" name="Timeout" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="PINCode
+
+        PIN/RFID Code&amp;#8224;" type="octets">
+        <optionalConform>
+          <andTerm>
+            <feature name="COTA"/>
+            <feature name="PIN"/>
+          </andTerm>
+        </optionalConform>
+      </field>
+    </command>
+    <command id="0x04" name="Get Log Record" response="Get Log Record Response">
+      <access invokePrivilege="manage"/>
+      <mandatoryConform>
+        <feature name="LOG"/>
+      </mandatoryConform>
+      <field id="0" name="Log Index" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x04" name="Get Log Record Response" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="LOG"/>
+      </mandatoryConform>
+      <field id="0" name="Log Entry ID" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="Timestamp" type="epoch-s">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="Event Type" type="enum8">
+        <enum>
+          <item value="0" name="Operation">
+            <mandatoryConform/>
+          </item>
+          <item value="1" name="Programming">
+            <mandatoryConform/>
+          </item>
+          <item value="2" name="Alarm">
+            <mandatoryConform/>
+          </item>
+        </enum>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="Source" type="uint8">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="4" name="Event ID/Alarm Code" type="uint8">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="5" name="User ID" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="6" name="PIN" type="octets">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x05" name="Set PIN Code" response="Y">
+      <access invokePrivilege="admin" timed="true"/>
+      <mandatoryConform>
+        <andTerm>
+          <notTerm>
+            <feature name="USR"/>
+          </notTerm>
+          <feature name="PIN"/>
+        </andTerm>
+      </mandatoryConform>
+      <field id="0" name="User ID" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="User Status" type="uint8" default="OccupiedEnabled">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="allowed" value="UserStatusEnum"/>
+      </field>
+      <field id="2" name="User Type" type="enum8" default="UnrestrictedUser">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="allowed" value="UserTypeEnum"/>
+      </field>
+      <field id="3" name="PIN" type="octets">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x06" name="Get PIN Code" response="Get PIN Code Response">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <andTerm>
+          <notTerm>
+            <feature name="USR"/>
+          </notTerm>
+          <feature name="PIN"/>
+        </andTerm>
+      </mandatoryConform>
+      <field id="0" name="User ID" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x06" name="Get PIN Code Response" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <andTerm>
+          <notTerm>
+            <feature name="USR"/>
+          </notTerm>
+          <feature name="PIN"/>
+        </andTerm>
+      </mandatoryConform>
+      <field id="0" name="User ID" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="User Status" type="uint8" default="Available">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="allowed" value="UserStatusEnum"/>
+      </field>
+      <field id="2" name="User Type" type="enum8">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="allowed" value="UserTypeEnum"/>
+      </field>
+      <field id="3" name="PIN Code" type="octets" default="empty">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x07" name="Clear PIN Code" response="Y">
+      <access invokePrivilege="admin" timed="true"/>
+      <mandatoryConform>
+        <andTerm>
+          <notTerm>
+            <feature name="USR"/>
+          </notTerm>
+          <feature name="PIN"/>
+        </andTerm>
+      </mandatoryConform>
+      <field id="0" name="PINSlotIndex
+
+        User ID&amp;#8224;" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfPINUsersSupported"/>
+        <constraint type="allowed" value="0xFFFE"/>
+      </field>
+    </command>
+    <command id="0x08" name="Clear All PIN Codes" response="Y">
+      <access invokePrivilege="admin" timed="true"/>
+      <mandatoryConform>
+        <andTerm>
+          <notTerm>
+            <feature name="USR"/>
+          </notTerm>
+          <feature name="PIN"/>
+        </andTerm>
+      </mandatoryConform>
+    </command>
+    <command id="0x09" name="Set User Status" response="Y">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <andTerm>
+          <notTerm>
+            <feature name="USR"/>
+          </notTerm>
+          <orTerm>
+            <feature name="PIN"/>
+            <feature name="RID"/>
+            <feature name="FGP"/>
+          </orTerm>
+        </andTerm>
+      </mandatoryConform>
+      <field id="0" name="User ID" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="User Status" type="uint8">
+        <mandatoryConform/>
+        <constraint type="allowed" value="UserStatusEnum"/>
+      </field>
+    </command>
+    <command id="0x0a" name="Get User Status" response="Get User Status Response">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <andTerm>
+          <notTerm>
+            <feature name="USR"/>
+          </notTerm>
+          <orTerm>
+            <feature name="PIN"/>
+            <feature name="RID"/>
+            <feature name="FGP"/>
+          </orTerm>
+        </andTerm>
+      </mandatoryConform>
+      <field id="0" name="User ID" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x0a" name="Get User Status Response" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <notTerm>
+          <feature name="USR"/>
+        </notTerm>
+      </mandatoryConform>
+      <field id="0" name="User ID" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="User Status" type="enum8">
+        <mandatoryConform/>
+        <constraint type="allowed" value="UserStatusEnum"/>
+      </field>
+    </command>
+    <command id="0x0b" name="Set Week Day Schedule" response="Y">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <feature name="WDSCH"/>
+      </mandatoryConform>
+      <field id="0" name="WeekDayIndex
+
+        Schedule ID&amp;#8224;" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfWeekDaySchedulesSupportedPerUser"/>
+      </field>
+      <field id="1" name="UserIndex
+
+        User ID&amp;#8224;" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfTotalUsersSupported"/>
+      </field>
+      <field id="2" name="DaysMask" type="DaysMaskMap">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="StartHour" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="23"/>
+      </field>
+      <field id="4" name="StartMinute" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="59"/>
+      </field>
+      <field id="5" name="EndHour" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="23"/>
+      </field>
+      <field id="6" name="EndMinute" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="59"/>
+      </field>
+    </command>
+    <command id="0x0c" name="Get Week Day Schedule" response="Get Week Day Schedule Response">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <feature name="WDSCH"/>
+      </mandatoryConform>
+      <field id="0" name="WeekDayIndex
+
+        Schedule ID&amp;#8224;" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfWeekDaySchedulesSupportedPerUser"/>
+      </field>
+      <field id="1" name="UserIndex
+
+        User ID&amp;#8224;" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfTotalUsersSupported"/>
+      </field>
+    </command>
+    <command id="0x0c" name="Get Week Day Schedule Response" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="WDSCH"/>
+      </mandatoryConform>
+      <field id="0" name="WeekDayIndex
+
+        Schedule ID&amp;#8224;" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfWeekDaySchedulesSupportedPerUser"/>
+      </field>
+      <field id="1" name="UserIndex
+
+        User ID&amp;#8224;" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfTotalUsersSupported"/>
+      </field>
+      <field id="2" name="Status" type="enum8" default="SUCCESS">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="DaysMask" type="DaysMaskMap">
+        <optionalConform/>
+      </field>
+      <field id="4" name="StartHour" type="uint8">
+        <optionalConform/>
+        <constraint type="between" from="0" to="23"/>
+      </field>
+      <field id="5" name="StartMinute" type="uint8">
+        <optionalConform/>
+        <constraint type="between" from="0" to="59"/>
+      </field>
+      <field id="6" name="EndHour" type="uint8">
+        <optionalConform/>
+        <constraint type="between" from="0" to="23"/>
+      </field>
+      <field id="7" name="EndMinute" type="uint8">
+        <optionalConform/>
+        <constraint type="between" from="0" to="59"/>
+      </field>
+    </command>
+    <command id="0x0d" name="Clear Week Day Schedule" response="Y">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <feature name="WDSCH"/>
+      </mandatoryConform>
+      <field id="0" name="WeekDayIndex
+
+        Schedule ID&amp;#8224;" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfWeekDaySchedulesSupportedPerUser"/>
+        <constraint type="allowed" value="0xFE"/>
+      </field>
+      <field id="1" name="UserIndex
+
+        User ID&amp;#8224;" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfTotalUsersSupported"/>
+      </field>
+    </command>
+    <command id="0x0e" name="Set Year Day Schedule" response="Y">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <feature name="YDSCH"/>
+      </mandatoryConform>
+      <field id="0" name="YearDayIndex
+
+        Schedule ID&amp;#8224;" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfYearDaySchedulesSupportedPerUser"/>
+      </field>
+      <field id="1" name="UserIndex
+
+        User ID&amp;#8224;" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfTotalUsersSupported"/>
+      </field>
+      <field id="2" name="LocalStartTime" type="epoch-s">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="LocalEndTime" type="epoch-s">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x0f" name="Get Year Day Schedule" response="Get Year Day Schedule Response">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <feature name="YDSCH"/>
+      </mandatoryConform>
+      <field id="0" name="YearDayIndex
+
+        Schedule ID&amp;#8224;" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfYearDaySchedulesSupportedPerUser"/>
+      </field>
+      <field id="1" name="UserIndex
+
+        User ID&amp;#8224;" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfTotalUsersSupported"/>
+      </field>
+    </command>
+    <command id="0x0f" name="Get Year Day Schedule Response" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="YDSCH"/>
+      </mandatoryConform>
+      <field id="0" name="YearDayIndex
+
+        Schedule ID&amp;#8224;" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfYearDaySchedulesSupportedPerUser"/>
+      </field>
+      <field id="1" name="UserIndex
+
+        User ID&amp;#8224;" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfTotalUsersSupported"/>
+      </field>
+      <field id="2" name="Status" type="enum8" default="SUCCESS">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="2" name="LocalStartTime" type="epoch-s">
+        <optionalConform/>
+      </field>
+      <field id="3" name="LocalEndTime" type="epoch-s">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x10" name="Clear Year Day Schedule" response="Y">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <feature name="YDSCH"/>
+      </mandatoryConform>
+      <field id="0" name="YearDayIndex
+
+        Schedule ID&amp;#8224;" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfYearDaySchedulesSupportedPerUser"/>
+        <constraint type="allowed" value="0xFE"/>
+      </field>
+      <field id="1" name="UserIndex
+
+        User ID&amp;#8224;" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfTotalUsersSupported"/>
+      </field>
+    </command>
+    <command id="0x11" name="Set Holiday Schedule" response="Y">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <feature name="HDSCH"/>
+      </mandatoryConform>
+      <field id="0" name="HolidayIndex
+
+        Holiday Schedule ID&amp;#8224;" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfHolidaySchedulesSupported"/>
+      </field>
+      <field id="1" name="LocalStartTime" type="epoch-s">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="LocalEndTime" type="epoch-s">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="OperatingMode" type="OperatingModeEnum">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x12" name="Get Holiday Schedule" response="Get Holiday Schedule Response">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <feature name="HDSCH"/>
+      </mandatoryConform>
+      <field id="0" name="HolidayIndex
+
+        Holiday Schedule ID&amp;#8224;" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfHolidaySchedulesSupported"/>
+      </field>
+    </command>
+    <command id="0x12" name="Get Holiday Schedule Response" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="HDSCH"/>
+      </mandatoryConform>
+      <field id="0" name="HolidayIndex
+
+        Holiday Schedule ID&amp;#8224;" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfHolidaySchedulesSupported"/>
+      </field>
+      <field id="1" name="Status" type="enum8" default="SUCCESS">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="2" name="LocalStartTime" type="epoch-s">
+        <quality nullable="true"/>
+        <optionalConform/>
+      </field>
+      <field id="3" name="Local End Time" type="epoch-s">
+        <quality nullable="true"/>
+        <optionalConform/>
+      </field>
+      <field id="4" name="OperatingMode" type="OperatingModeEnum">
+        <quality nullable="true"/>
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x13" name="Clear Holiday Schedule" response="Y">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <feature name="HDSCH"/>
+      </mandatoryConform>
+      <field id="0" name="HolidayIndex
+
+        Holiday Schedule ID&amp;#8224;" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfHolidaySchedulesSupported"/>
+        <constraint type="allowed" value="0xFE"/>
+      </field>
+    </command>
+    <command id="0x14" name="Set User Type" response="Y">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <andTerm>
+          <notTerm>
+            <feature name="USR"/>
+          </notTerm>
+          <orTerm>
+            <feature name="PIN"/>
+            <feature name="RID"/>
+            <feature name="FGP"/>
+          </orTerm>
+        </andTerm>
+      </mandatoryConform>
+      <field id="0" name="User ID" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="User Type" type="enum8">
+        <mandatoryConform/>
+        <constraint type="allowed" value="UserTypeEnum"/>
+      </field>
+    </command>
+    <command id="0x15" name="Get User Type" response="Get User Type Response">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <andTerm>
+          <notTerm>
+            <feature name="USR"/>
+          </notTerm>
+          <orTerm>
+            <feature name="PIN"/>
+            <feature name="RID"/>
+            <feature name="FGP"/>
+          </orTerm>
+        </andTerm>
+      </mandatoryConform>
+      <field id="0" name="User ID" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x15" name="Get User Type Response" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <notTerm>
+          <feature name="USR"/>
+        </notTerm>
+      </mandatoryConform>
+      <field id="0" name="User ID" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="User Type" type="enum8">
+        <mandatoryConform/>
+        <constraint type="allowed" value="UserTypeEnum"/>
+      </field>
+    </command>
+    <command id="0x16" name="Set RFID Code" response="Y">
+      <access invokePrivilege="admin" timed="true"/>
+      <mandatoryConform>
+        <andTerm>
+          <notTerm>
+            <feature name="USR"/>
+          </notTerm>
+          <feature name="RID"/>
+        </andTerm>
+      </mandatoryConform>
+      <field id="0" name="User ID" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="User Status" type="uint8" default="OccupiedEnabled">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="allowed" value="UserStatusEnum"/>
+      </field>
+      <field id="2" name="User Type" type="enum8" default="UnrestrictedUser">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="allowed" value="UserTypeEnum"/>
+      </field>
+      <field id="3" name="RFID Code" type="octets">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x17" name="Get RFID Code" response="Get RFID Code Response">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <andTerm>
+          <notTerm>
+            <feature name="USR"/>
+          </notTerm>
+          <feature name="RID"/>
+        </andTerm>
+      </mandatoryConform>
+      <field id="0" name="User ID" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x17" name="Get RFID Code Response" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <andTerm>
+          <notTerm>
+            <feature name="USR"/>
+          </notTerm>
+          <feature name="RID"/>
+        </andTerm>
+      </mandatoryConform>
+      <field id="0" name="User ID" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="User Status" type="enum8" default="Available">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="allowed" value="UserStatusEnum"/>
+      </field>
+      <field id="2" name="User Type" type="enum8">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="allowed" value="UserTypeEnum"/>
+      </field>
+      <field id="3" name="RFID Code" type="octets" default="empty">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x18" name="Clear RFID Code" response="Y">
+      <access invokePrivilege="admin" timed="true"/>
+      <mandatoryConform>
+        <andTerm>
+          <notTerm>
+            <feature name="USR"/>
+          </notTerm>
+          <feature name="RID"/>
+        </andTerm>
+      </mandatoryConform>
+      <field id="0" name="RFIDSlotIndex
+
+        User ID&amp;#8224;" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfRFIDUsersSupported"/>
+        <constraint type="allowed" value="0xFFFE"/>
+      </field>
+    </command>
+    <command id="0x19" name="Clear All RFID Codes" response="Y">
+      <access invokePrivilege="admin" timed="true"/>
+      <mandatoryConform>
+        <andTerm>
+          <notTerm>
+            <feature name="USR"/>
+          </notTerm>
+          <feature name="RID"/>
+        </andTerm>
+      </mandatoryConform>
+    </command>
+    <command id="0x1a" name="Set User" response="Y">
+      <access invokePrivilege="admin" timed="true"/>
+      <mandatoryConform>
+        <feature name="USR"/>
+      </mandatoryConform>
+      <field id="0" name="OperationType" type="DataOperationTypeEnum">
+        <mandatoryConform/>
+        <constraint type="allowed" value="Add"/>
+        <constraint type="allowed" value="Modify"/>
+      </field>
+      <field id="1" name="UserIndex" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfTotalUsersSupported"/>
+      </field>
+      <field id="2" name="UserName" type="string" default="empty">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="maxLength" value="10"/>
+      </field>
+      <field id="3" name="UserUniqueID" type="uint32" default="0xFFFFFFFF">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="UserStatus" type="UserStatusEnum" default="OccupiedEnabled">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="allowed" value="OccupiedEnabled"/>
+        <constraint type="allowed" value="OccupiedDisabled"/>
+      </field>
+      <field id="5" name="UserType" type="UserTypeEnum" default="UnrestrictedUser">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="allowed" value="UnrestrictedUser"/>
+        <constraint type="allowed" value="NonAccessUser"/>
+        <constraint type="allowed" value="ForcedUser"/>
+        <constraint type="allowed" value="DisposableUser"/>
+        <constraint type="allowed" value="ExpiringUser"/>
+        <constraint type="allowed" value="ScheduleRestrictedUser"/>
+        <constraint type="allowed" value="RemoteOnlyUser"/>
+      </field>
+      <field id="6" name="CredentialRule" type="CredentialRuleEnum" default="Single">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x1b" name="Get User" response="Get User Response">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <feature name="USR"/>
+      </mandatoryConform>
+      <field id="0" name="UserIndex" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfTotalUsersSupported"/>
+      </field>
+    </command>
+    <command id="0x1c" name="Get User Response" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="USR"/>
+      </mandatoryConform>
+      <field id="0" name="UserIndex" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfTotalUsersSupported"/>
+      </field>
+      <field id="1" name="UserName" type="string" default="empty">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="maxLength" value="10"/>
+      </field>
+      <field id="2" name="UserUniqueID" type="uint32" default="0">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="UserStatus" type="UserStatusEnum" default="Available">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="UserType" type="UserTypeEnum" default="UnrestrictedUser">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="5" name="CredentialRule" type="CredentialRuleEnum" default="Single">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="6" name="Credentials" type="list">
+        <entry type="CredentialStruct"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="countBetween" from="0" to="NumberOfCredentialsSupportedPerUser"/>
+      </field>
+      <field id="7" name="CreatorFabricIndex" type="fabric-idx">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="8" name="LastModifiedFabricIndex" type="fabric-idx">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="9" name="NextUserIndex" type="uint16">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfTotalUsersSupported"/>
+      </field>
+    </command>
+    <command id="0x1d" name="Clear User" response="Y">
+      <access invokePrivilege="admin" timed="true"/>
+      <mandatoryConform>
+        <feature name="USR"/>
+      </mandatoryConform>
+      <field id="0" name="UserIndex" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfTotalUsersSupported"/>
+        <constraint type="allowed" value="0xFFFE"/>
+      </field>
+    </command>
+    <command id="0x20" name="Operating Event Notification" direction="commandToClient">
+      <access invokePrivilege="operate"/>
+      <optionalConform>
+        <feature name="NOT"/>
+      </optionalConform>
+    </command>
+    <command id="0x21" name="Programming Event Notification" direction="commandToClient">
+      <access invokePrivilege="operate"/>
+      <optionalConform>
+        <feature name="NOT"/>
+      </optionalConform>
+      <field id="0" name="Program Event Source" type="uint8">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="Program Event Code" type="uint8">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="2" name="User ID" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="PIN" type="octets">
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="User Type" type="enum8">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="5" name="User Status" type="enum8">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="6" name="LocalTime" type="epoch-s">
+        <mandatoryConform/>
+      </field>
+      <field id="7" name="Data" type="string">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x22" name="Set Credential" response="Set Credential Response">
+      <access invokePrivilege="admin" timed="true"/>
+      <mandatoryConform>
+        <feature name="USR"/>
+      </mandatoryConform>
+      <field id="0" name="OperationType" type="DataOperationTypeEnum">
+        <mandatoryConform/>
+        <constraint type="allowed" value="Add"/>
+        <constraint type="allowed" value="Modify"/>
+      </field>
+      <field id="1" name="Credential" type="CredentialStruct">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="CredentialData" type="octets">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="UserIndex" type="uint16">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfTotalUsersSupported"/>
+      </field>
+      <field id="4" name="UserStatus" type="UserStatusEnum" default="OccupiedEnabled">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="allowed" value="OccupiedEnabled"/>
+        <constraint type="allowed" value="OccupiedDisabled"/>
+      </field>
+      <field id="5" name="UserType" type="UserTypeEnum" default="UnrestrictedUser">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="allowed" value="UnrestrictedUser"/>
+        <constraint type="allowed" value="ProgrammingUser"/>
+        <constraint type="allowed" value="NonAccessUser"/>
+        <constraint type="allowed" value="ForcedUser"/>
+        <constraint type="allowed" value="DisposableUser"/>
+        <constraint type="allowed" value="ExpiringUser"/>
+        <constraint type="allowed" value="RemoteOnlyUser"/>
+      </field>
+    </command>
+    <command id="0x23" name="Set Credential Response" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="USR"/>
+      </mandatoryConform>
+      <field id="0" name="Status" type="status">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="UserIndex" type="uint16" default="0">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfTotalUsersSupported"/>
+      </field>
+      <field id="2" name="NextCredentialIndex" type="uint16">
+        <quality nullable="true"/>
+        <optionalConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x24" name="Get Credential Status" response="Get Credential Status Response">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <feature name="USR"/>
+      </mandatoryConform>
+      <field id="0" name="Credential" type="CredentialStruct">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x25" name="Get Credential Status Response" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="USR"/>
+      </mandatoryConform>
+      <field id="0" name="CredentialExists" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="UserIndex" type="uint16">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="NumberOfTotalUsersSupported"/>
+      </field>
+      <field id="2" name="CreatorFabricIndex" type="fabric-idx">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="LastModifiedFabricIndex" type="fabric-idx">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="NextCredentialIndex" type="uint16">
+        <quality nullable="true"/>
+        <optionalConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x26" name="Clear Credential" response="Y">
+      <access invokePrivilege="admin" timed="true"/>
+      <mandatoryConform>
+        <feature name="USR"/>
+      </mandatoryConform>
+      <field id="0" name="Credential" type="CredentialStruct">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x27" name="Unbolt Door" response="Y">
+      <access invokePrivilege="operate" timed="true"/>
+      <mandatoryConform>
+        <feature name="UBOLT"/>
+      </mandatoryConform>
+      <field id="0" name="PINCode" type="octets">
+        <optionalConform>
+          <andTerm>
+            <feature name="COTA"/>
+            <feature name="PIN"/>
+          </andTerm>
+        </optionalConform>
+      </field>
+    </command>
+  </commands>
+  <events>
+    <event id="0x00" name="DoorLockAlarm" priority="critical">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+      <field id="0" name="AlarmCode" type="AlarmCodeEnum">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x01" name="DoorStateChange" priority="desc">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="DPS"/>
+      </mandatoryConform>
+      <field id="0" name="DoorState" type="DoorStateEnum">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x02" name="LockOperation" priority="desc">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+      <field id="0" name="LockOperationType" type="LockOperationTypeEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="OperationSource" type="OperationSourceEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="UserIndex" type="uint16">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="FabricIndex" type="fabric-idx">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="SourceNode" type="node-id">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="5" name="Credentials" type="list">
+        <entry type="CredentialStruct"/>
+        <quality nullable="true"/>
+        <optionalConform>
+          <feature name="USR"/>
+        </optionalConform>
+        <constraint type="countBetween" from="1" to="NumberOfCredentialsSupportedPerUser"/>
+      </field>
+    </event>
+    <event id="0x03" name="LockOperationError" priority="desc">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+      <field id="0" name="LockOperationType" type="LockOperationTypeEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="OperationSource" type="OperationSourceEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="OperationError" type="OperationErrorEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="UserIndex" type="uint16">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="FabricIndex" type="fabric-idx">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="5" name="SourceNode" type="node-id">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="6" name="Credentials" type="list">
+        <entry type="CredentialStruct"/>
+        <quality nullable="true"/>
+        <optionalConform>
+          <feature name="USR"/>
+        </optionalConform>
+        <constraint type="countBetween" from="1" to="NumberOfCredentialsSupportedPerUser"/>
+      </field>
+    </event>
+    <event id="0x04" name="LockUserChange" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="USR"/>
+      </mandatoryConform>
+      <field id="0" name="LockDataType" type="LockDataTypeEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="DataOperationType" type="DataOperationTypeEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="OperationSource" type="OperationSourceEnum">
+        <mandatoryConform/>
+        <constraint type="allowed" value="Unspecified"/>
+        <constraint type="allowed" value="Keypad"/>
+        <constraint type="allowed" value="Remote"/>
+      </field>
+      <field id="3" name="UserIndex" type="uint16">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="FabricIndex" type="fabric-idx">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="5" name="SourceNode" type="node-id">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="6" name="DataIndex" type="uint16">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/EVSE-Attributes.xml b/zcl-builtin/matter/new-data-model/EVSE-Attributes.xml
new file mode 100644
index 0000000000000000000000000000000000000000..2d7c35187622d8dfe0d0f7e3566d5da013f8f214
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/EVSE-Attributes.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<!--
+Electric Vehicle Supply Equipment (EVSE) is equipment used to charge an Electric
+Vehicle (EV) or Plug-In Hybrid Electric Vehicle. This cluster provides an
+interface to the functionality of Electric Vehicle Supply Equipment (EVSE)
+management.
+
+Devices targeted by this cluster include Electric Vehicle Supply Equipment
+(EVSE). The cluster generically assumes a signaling protocol (J1772 in NA and
+IEC61851 in Europe and Asia) between the EVSE and Electric Vehicle (EV) that
+utilizes a pilot signal to manage the states of the charge. SAE J1772 and
+IEC61841 define Pilot signal as a modulated DC voltage on a single wire.
+
+Power Line Communication (PLC) is supported by some EVSEs (e.g. for support of
+ISO 15118) and may enable features such as Vehicle to Grid (V2G) or Vehicle to
+Home (V2H) that allows for bi-directional charging/discharging of electric
+vehicles.
+
+More modern EVSE devices may optionally support ISO 15118 to support
+bi-directional charging (Vehicle to Grid - V2G) and Plug and Charge
+capabilities.
+
+This cluster definition assumes AC charging only. DC charging options may be
+added in future revisions of this cluster.
+
+This cluster supports a safety mechanism that may lockout remote operation until
+the initial latching conditions have been met. Some of the fault conditions
+defined in SAE J1772, such as Ground-Fault Circuit Interrupter (GFCI) or
+Charging Circuit Interrupting Device (CCID), may require clearing by an operator
+by, for example, pressing a button on the equipment or breaker panel.
+
+Signals and data provided by Electric Vehicle (EV) are labeled using EV in
+control and attribute names. Signals and data provided by Electric Vehicle
+Supply Equipment (EVSE) are labeled using EVSE in control and attribute names.
+
+This EVSE cluster is written around support of a single EVSE. Having multiple
+EVSEs at home or a business is managed by backend system and outside scope of
+this cluster.
+
+Note that in many deployments the EVSE may be outside the home and may suffer
+from intermittent network connections (e.g. a weak Wi-Fi signal). It also allows
+for a charging profile to be pre-configured, in case there is a temporary
+communications loss during a charging session.
+-->
+<cluster xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd cluster cluster.xsd" id="" name="Attributes" revision=""/>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/EVSE-Classification.xml b/zcl-builtin/matter/new-data-model/EVSE-Classification.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e6a09cec3e6470e98832fb4e24e920fa6e39b2a4
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/EVSE-Classification.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<!--
+Electric Vehicle Supply Equipment (EVSE) is equipment used to charge an Electric
+Vehicle (EV) or Plug-In Hybrid Electric Vehicle. This cluster provides an
+interface to the functionality of Electric Vehicle Supply Equipment (EVSE)
+management.
+
+Devices targeted by this cluster include Electric Vehicle Supply Equipment
+(EVSE). The cluster generically assumes a signaling protocol (J1772 in NA and
+IEC61851 in Europe and Asia) between the EVSE and Electric Vehicle (EV) that
+utilizes a pilot signal to manage the states of the charge. SAE J1772 and
+IEC61841 define Pilot signal as a modulated DC voltage on a single wire.
+
+Power Line Communication (PLC) is supported by some EVSEs (e.g. for support of
+ISO 15118) and may enable features such as Vehicle to Grid (V2G) or Vehicle to
+Home (V2H) that allows for bi-directional charging/discharging of electric
+vehicles.
+
+More modern EVSE devices may optionally support ISO 15118 to support
+bi-directional charging (Vehicle to Grid - V2G) and Plug and Charge
+capabilities.
+
+This cluster definition assumes AC charging only. DC charging options may be
+added in future revisions of this cluster.
+
+This cluster supports a safety mechanism that may lockout remote operation until
+the initial latching conditions have been met. Some of the fault conditions
+defined in SAE J1772, such as Ground-Fault Circuit Interrupter (GFCI) or
+Charging Circuit Interrupting Device (CCID), may require clearing by an operator
+by, for example, pressing a button on the equipment or breaker panel.
+
+Signals and data provided by Electric Vehicle (EV) are labeled using EV in
+control and attribute names. Signals and data provided by Electric Vehicle
+Supply Equipment (EVSE) are labeled using EVSE in control and attribute names.
+
+This EVSE cluster is written around support of a single EVSE. Having multiple
+EVSEs at home or a business is managed by backend system and outside scope of
+this cluster.
+
+Note that in many deployments the EVSE may be outside the home and may suffer
+from intermittent network connections (e.g. a weak Wi-Fi signal). It also allows
+for a charging profile to be pre-configured, in case there is a temporary
+communications loss during a charging session.
+-->
+<cluster xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd cluster cluster.xsd" id="" name="Classification" revision=""/>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/EVSE-ClusterID.xml b/zcl-builtin/matter/new-data-model/EVSE-ClusterID.xml
new file mode 100644
index 0000000000000000000000000000000000000000..4d79099afada6e728aaf67aabf44406965a8e972
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/EVSE-ClusterID.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<!--
+Electric Vehicle Supply Equipment (EVSE) is equipment used to charge an Electric
+Vehicle (EV) or Plug-In Hybrid Electric Vehicle. This cluster provides an
+interface to the functionality of Electric Vehicle Supply Equipment (EVSE)
+management.
+
+Devices targeted by this cluster include Electric Vehicle Supply Equipment
+(EVSE). The cluster generically assumes a signaling protocol (J1772 in NA and
+IEC61851 in Europe and Asia) between the EVSE and Electric Vehicle (EV) that
+utilizes a pilot signal to manage the states of the charge. SAE J1772 and
+IEC61841 define Pilot signal as a modulated DC voltage on a single wire.
+
+Power Line Communication (PLC) is supported by some EVSEs (e.g. for support of
+ISO 15118) and may enable features such as Vehicle to Grid (V2G) or Vehicle to
+Home (V2H) that allows for bi-directional charging/discharging of electric
+vehicles.
+
+More modern EVSE devices may optionally support ISO 15118 to support
+bi-directional charging (Vehicle to Grid - V2G) and Plug and Charge
+capabilities.
+
+This cluster definition assumes AC charging only. DC charging options may be
+added in future revisions of this cluster.
+
+This cluster supports a safety mechanism that may lockout remote operation until
+the initial latching conditions have been met. Some of the fault conditions
+defined in SAE J1772, such as Ground-Fault Circuit Interrupter (GFCI) or
+Charging Circuit Interrupting Device (CCID), may require clearing by an operator
+by, for example, pressing a button on the equipment or breaker panel.
+
+Signals and data provided by Electric Vehicle (EV) are labeled using EV in
+control and attribute names. Signals and data provided by Electric Vehicle
+Supply Equipment (EVSE) are labeled using EVSE in control and attribute names.
+
+This EVSE cluster is written around support of a single EVSE. Having multiple
+EVSEs at home or a business is managed by backend system and outside scope of
+this cluster.
+
+Note that in many deployments the EVSE may be outside the home and may suffer
+from intermittent network connections (e.g. a weak Wi-Fi signal). It also allows
+for a charging profile to be pre-configured, in case there is a temporary
+communications loss during a charging session.
+-->
+<cluster xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd cluster cluster.xsd" id="" name="Cluster ID" revision=""/>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/EVSE-Commands.xml b/zcl-builtin/matter/new-data-model/EVSE-Commands.xml
new file mode 100644
index 0000000000000000000000000000000000000000..eab3b632236b50024c04fa7b5c1c1519c113b378
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/EVSE-Commands.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<!--
+Electric Vehicle Supply Equipment (EVSE) is equipment used to charge an Electric
+Vehicle (EV) or Plug-In Hybrid Electric Vehicle. This cluster provides an
+interface to the functionality of Electric Vehicle Supply Equipment (EVSE)
+management.
+
+Devices targeted by this cluster include Electric Vehicle Supply Equipment
+(EVSE). The cluster generically assumes a signaling protocol (J1772 in NA and
+IEC61851 in Europe and Asia) between the EVSE and Electric Vehicle (EV) that
+utilizes a pilot signal to manage the states of the charge. SAE J1772 and
+IEC61841 define Pilot signal as a modulated DC voltage on a single wire.
+
+Power Line Communication (PLC) is supported by some EVSEs (e.g. for support of
+ISO 15118) and may enable features such as Vehicle to Grid (V2G) or Vehicle to
+Home (V2H) that allows for bi-directional charging/discharging of electric
+vehicles.
+
+More modern EVSE devices may optionally support ISO 15118 to support
+bi-directional charging (Vehicle to Grid - V2G) and Plug and Charge
+capabilities.
+
+This cluster definition assumes AC charging only. DC charging options may be
+added in future revisions of this cluster.
+
+This cluster supports a safety mechanism that may lockout remote operation until
+the initial latching conditions have been met. Some of the fault conditions
+defined in SAE J1772, such as Ground-Fault Circuit Interrupter (GFCI) or
+Charging Circuit Interrupting Device (CCID), may require clearing by an operator
+by, for example, pressing a button on the equipment or breaker panel.
+
+Signals and data provided by Electric Vehicle (EV) are labeled using EV in
+control and attribute names. Signals and data provided by Electric Vehicle
+Supply Equipment (EVSE) are labeled using EVSE in control and attribute names.
+
+This EVSE cluster is written around support of a single EVSE. Having multiple
+EVSEs at home or a business is managed by backend system and outside scope of
+this cluster.
+
+Note that in many deployments the EVSE may be outside the home and may suffer
+from intermittent network connections (e.g. a weak Wi-Fi signal). It also allows
+for a charging profile to be pre-configured, in case there is a temporary
+communications loss during a charging session.
+-->
+<cluster xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd cluster cluster.xsd" id="" name="Commands" revision=""/>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/EVSE-DataTypes.xml b/zcl-builtin/matter/new-data-model/EVSE-DataTypes.xml
new file mode 100644
index 0000000000000000000000000000000000000000..5e3c60917973dee9976f2abefbe6c11189de4de1
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/EVSE-DataTypes.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<!--
+Electric Vehicle Supply Equipment (EVSE) is equipment used to charge an Electric
+Vehicle (EV) or Plug-In Hybrid Electric Vehicle. This cluster provides an
+interface to the functionality of Electric Vehicle Supply Equipment (EVSE)
+management.
+
+Devices targeted by this cluster include Electric Vehicle Supply Equipment
+(EVSE). The cluster generically assumes a signaling protocol (J1772 in NA and
+IEC61851 in Europe and Asia) between the EVSE and Electric Vehicle (EV) that
+utilizes a pilot signal to manage the states of the charge. SAE J1772 and
+IEC61841 define Pilot signal as a modulated DC voltage on a single wire.
+
+Power Line Communication (PLC) is supported by some EVSEs (e.g. for support of
+ISO 15118) and may enable features such as Vehicle to Grid (V2G) or Vehicle to
+Home (V2H) that allows for bi-directional charging/discharging of electric
+vehicles.
+
+More modern EVSE devices may optionally support ISO 15118 to support
+bi-directional charging (Vehicle to Grid - V2G) and Plug and Charge
+capabilities.
+
+This cluster definition assumes AC charging only. DC charging options may be
+added in future revisions of this cluster.
+
+This cluster supports a safety mechanism that may lockout remote operation until
+the initial latching conditions have been met. Some of the fault conditions
+defined in SAE J1772, such as Ground-Fault Circuit Interrupter (GFCI) or
+Charging Circuit Interrupting Device (CCID), may require clearing by an operator
+by, for example, pressing a button on the equipment or breaker panel.
+
+Signals and data provided by Electric Vehicle (EV) are labeled using EV in
+control and attribute names. Signals and data provided by Electric Vehicle
+Supply Equipment (EVSE) are labeled using EVSE in control and attribute names.
+
+This EVSE cluster is written around support of a single EVSE. Having multiple
+EVSEs at home or a business is managed by backend system and outside scope of
+this cluster.
+
+Note that in many deployments the EVSE may be outside the home and may suffer
+from intermittent network connections (e.g. a weak Wi-Fi signal). It also allows
+for a charging profile to be pre-configured, in case there is a temporary
+communications loss during a charging session.
+-->
+<cluster xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd cluster cluster.xsd" id="" name="Data Types" revision=""/>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/EVSE-Definitions.xml b/zcl-builtin/matter/new-data-model/EVSE-Definitions.xml
new file mode 100644
index 0000000000000000000000000000000000000000..5656d3840fddf398483753130227ba58ecd09009
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/EVSE-Definitions.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<!--
+Electric Vehicle Supply Equipment (EVSE) is equipment used to charge an Electric
+Vehicle (EV) or Plug-In Hybrid Electric Vehicle. This cluster provides an
+interface to the functionality of Electric Vehicle Supply Equipment (EVSE)
+management.
+
+Devices targeted by this cluster include Electric Vehicle Supply Equipment
+(EVSE). The cluster generically assumes a signaling protocol (J1772 in NA and
+IEC61851 in Europe and Asia) between the EVSE and Electric Vehicle (EV) that
+utilizes a pilot signal to manage the states of the charge. SAE J1772 and
+IEC61841 define Pilot signal as a modulated DC voltage on a single wire.
+
+Power Line Communication (PLC) is supported by some EVSEs (e.g. for support of
+ISO 15118) and may enable features such as Vehicle to Grid (V2G) or Vehicle to
+Home (V2H) that allows for bi-directional charging/discharging of electric
+vehicles.
+
+More modern EVSE devices may optionally support ISO 15118 to support
+bi-directional charging (Vehicle to Grid - V2G) and Plug and Charge
+capabilities.
+
+This cluster definition assumes AC charging only. DC charging options may be
+added in future revisions of this cluster.
+
+This cluster supports a safety mechanism that may lockout remote operation until
+the initial latching conditions have been met. Some of the fault conditions
+defined in SAE J1772, such as Ground-Fault Circuit Interrupter (GFCI) or
+Charging Circuit Interrupting Device (CCID), may require clearing by an operator
+by, for example, pressing a button on the equipment or breaker panel.
+
+Signals and data provided by Electric Vehicle (EV) are labeled using EV in
+control and attribute names. Signals and data provided by Electric Vehicle
+Supply Equipment (EVSE) are labeled using EVSE in control and attribute names.
+
+This EVSE cluster is written around support of a single EVSE. Having multiple
+EVSEs at home or a business is managed by backend system and outside scope of
+this cluster.
+
+Note that in many deployments the EVSE may be outside the home and may suffer
+from intermittent network connections (e.g. a weak Wi-Fi signal). It also allows
+for a charging profile to be pre-configured, in case there is a temporary
+communications loss during a charging session.
+-->
+<cluster xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd cluster cluster.xsd" id="" name="Definitions" revision=""/>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/EVSE-Dependencies.xml b/zcl-builtin/matter/new-data-model/EVSE-Dependencies.xml
new file mode 100644
index 0000000000000000000000000000000000000000..76af332ca016df5cf1b93ba1da37b53c40974d29
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/EVSE-Dependencies.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<!--
+Electric Vehicle Supply Equipment (EVSE) is equipment used to charge an Electric
+Vehicle (EV) or Plug-In Hybrid Electric Vehicle. This cluster provides an
+interface to the functionality of Electric Vehicle Supply Equipment (EVSE)
+management.
+
+Devices targeted by this cluster include Electric Vehicle Supply Equipment
+(EVSE). The cluster generically assumes a signaling protocol (J1772 in NA and
+IEC61851 in Europe and Asia) between the EVSE and Electric Vehicle (EV) that
+utilizes a pilot signal to manage the states of the charge. SAE J1772 and
+IEC61841 define Pilot signal as a modulated DC voltage on a single wire.
+
+Power Line Communication (PLC) is supported by some EVSEs (e.g. for support of
+ISO 15118) and may enable features such as Vehicle to Grid (V2G) or Vehicle to
+Home (V2H) that allows for bi-directional charging/discharging of electric
+vehicles.
+
+More modern EVSE devices may optionally support ISO 15118 to support
+bi-directional charging (Vehicle to Grid - V2G) and Plug and Charge
+capabilities.
+
+This cluster definition assumes AC charging only. DC charging options may be
+added in future revisions of this cluster.
+
+This cluster supports a safety mechanism that may lockout remote operation until
+the initial latching conditions have been met. Some of the fault conditions
+defined in SAE J1772, such as Ground-Fault Circuit Interrupter (GFCI) or
+Charging Circuit Interrupting Device (CCID), may require clearing by an operator
+by, for example, pressing a button on the equipment or breaker panel.
+
+Signals and data provided by Electric Vehicle (EV) are labeled using EV in
+control and attribute names. Signals and data provided by Electric Vehicle
+Supply Equipment (EVSE) are labeled using EVSE in control and attribute names.
+
+This EVSE cluster is written around support of a single EVSE. Having multiple
+EVSEs at home or a business is managed by backend system and outside scope of
+this cluster.
+
+Note that in many deployments the EVSE may be outside the home and may suffer
+from intermittent network connections (e.g. a weak Wi-Fi signal). It also allows
+for a charging profile to be pre-configured, in case there is a temporary
+communications loss during a charging session.
+-->
+<cluster xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd cluster cluster.xsd" id="" name="Dependencies" revision=""/>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/EVSE-Events.xml b/zcl-builtin/matter/new-data-model/EVSE-Events.xml
new file mode 100644
index 0000000000000000000000000000000000000000..097272ba1e106348fd832e0d20070724009c3f79
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/EVSE-Events.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<!--
+Electric Vehicle Supply Equipment (EVSE) is equipment used to charge an Electric
+Vehicle (EV) or Plug-In Hybrid Electric Vehicle. This cluster provides an
+interface to the functionality of Electric Vehicle Supply Equipment (EVSE)
+management.
+
+Devices targeted by this cluster include Electric Vehicle Supply Equipment
+(EVSE). The cluster generically assumes a signaling protocol (J1772 in NA and
+IEC61851 in Europe and Asia) between the EVSE and Electric Vehicle (EV) that
+utilizes a pilot signal to manage the states of the charge. SAE J1772 and
+IEC61841 define Pilot signal as a modulated DC voltage on a single wire.
+
+Power Line Communication (PLC) is supported by some EVSEs (e.g. for support of
+ISO 15118) and may enable features such as Vehicle to Grid (V2G) or Vehicle to
+Home (V2H) that allows for bi-directional charging/discharging of electric
+vehicles.
+
+More modern EVSE devices may optionally support ISO 15118 to support
+bi-directional charging (Vehicle to Grid - V2G) and Plug and Charge
+capabilities.
+
+This cluster definition assumes AC charging only. DC charging options may be
+added in future revisions of this cluster.
+
+This cluster supports a safety mechanism that may lockout remote operation until
+the initial latching conditions have been met. Some of the fault conditions
+defined in SAE J1772, such as Ground-Fault Circuit Interrupter (GFCI) or
+Charging Circuit Interrupting Device (CCID), may require clearing by an operator
+by, for example, pressing a button on the equipment or breaker panel.
+
+Signals and data provided by Electric Vehicle (EV) are labeled using EV in
+control and attribute names. Signals and data provided by Electric Vehicle
+Supply Equipment (EVSE) are labeled using EVSE in control and attribute names.
+
+This EVSE cluster is written around support of a single EVSE. Having multiple
+EVSEs at home or a business is managed by backend system and outside scope of
+this cluster.
+
+Note that in many deployments the EVSE may be outside the home and may suffer
+from intermittent network connections (e.g. a weak Wi-Fi signal). It also allows
+for a charging profile to be pre-configured, in case there is a temporary
+communications loss during a charging session.
+-->
+<cluster xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd cluster cluster.xsd" id="" name="Events" revision=""/>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/EVSE-Features.xml b/zcl-builtin/matter/new-data-model/EVSE-Features.xml
new file mode 100644
index 0000000000000000000000000000000000000000..711029743d99828b9440a7efa46dcd3e0babbf93
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/EVSE-Features.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<!--
+Electric Vehicle Supply Equipment (EVSE) is equipment used to charge an Electric
+Vehicle (EV) or Plug-In Hybrid Electric Vehicle. This cluster provides an
+interface to the functionality of Electric Vehicle Supply Equipment (EVSE)
+management.
+
+Devices targeted by this cluster include Electric Vehicle Supply Equipment
+(EVSE). The cluster generically assumes a signaling protocol (J1772 in NA and
+IEC61851 in Europe and Asia) between the EVSE and Electric Vehicle (EV) that
+utilizes a pilot signal to manage the states of the charge. SAE J1772 and
+IEC61841 define Pilot signal as a modulated DC voltage on a single wire.
+
+Power Line Communication (PLC) is supported by some EVSEs (e.g. for support of
+ISO 15118) and may enable features such as Vehicle to Grid (V2G) or Vehicle to
+Home (V2H) that allows for bi-directional charging/discharging of electric
+vehicles.
+
+More modern EVSE devices may optionally support ISO 15118 to support
+bi-directional charging (Vehicle to Grid - V2G) and Plug and Charge
+capabilities.
+
+This cluster definition assumes AC charging only. DC charging options may be
+added in future revisions of this cluster.
+
+This cluster supports a safety mechanism that may lockout remote operation until
+the initial latching conditions have been met. Some of the fault conditions
+defined in SAE J1772, such as Ground-Fault Circuit Interrupter (GFCI) or
+Charging Circuit Interrupting Device (CCID), may require clearing by an operator
+by, for example, pressing a button on the equipment or breaker panel.
+
+Signals and data provided by Electric Vehicle (EV) are labeled using EV in
+control and attribute names. Signals and data provided by Electric Vehicle
+Supply Equipment (EVSE) are labeled using EVSE in control and attribute names.
+
+This EVSE cluster is written around support of a single EVSE. Having multiple
+EVSEs at home or a business is managed by backend system and outside scope of
+this cluster.
+
+Note that in many deployments the EVSE may be outside the home and may suffer
+from intermittent network connections (e.g. a weak Wi-Fi signal). It also allows
+for a charging profile to be pre-configured, in case there is a temporary
+communications loss during a charging session.
+-->
+<cluster xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd cluster cluster.xsd" id="" name="Features" revision=""/>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/EVSE-RevisionHistory.xml b/zcl-builtin/matter/new-data-model/EVSE-RevisionHistory.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e2f45ed309fd4b368fc04dca779c196feb6c1c69
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/EVSE-RevisionHistory.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<!--
+Electric Vehicle Supply Equipment (EVSE) is equipment used to charge an Electric
+Vehicle (EV) or Plug-In Hybrid Electric Vehicle. This cluster provides an
+interface to the functionality of Electric Vehicle Supply Equipment (EVSE)
+management.
+
+Devices targeted by this cluster include Electric Vehicle Supply Equipment
+(EVSE). The cluster generically assumes a signaling protocol (J1772 in NA and
+IEC61851 in Europe and Asia) between the EVSE and Electric Vehicle (EV) that
+utilizes a pilot signal to manage the states of the charge. SAE J1772 and
+IEC61841 define Pilot signal as a modulated DC voltage on a single wire.
+
+Power Line Communication (PLC) is supported by some EVSEs (e.g. for support of
+ISO 15118) and may enable features such as Vehicle to Grid (V2G) or Vehicle to
+Home (V2H) that allows for bi-directional charging/discharging of electric
+vehicles.
+
+More modern EVSE devices may optionally support ISO 15118 to support
+bi-directional charging (Vehicle to Grid - V2G) and Plug and Charge
+capabilities.
+
+This cluster definition assumes AC charging only. DC charging options may be
+added in future revisions of this cluster.
+
+This cluster supports a safety mechanism that may lockout remote operation until
+the initial latching conditions have been met. Some of the fault conditions
+defined in SAE J1772, such as Ground-Fault Circuit Interrupter (GFCI) or
+Charging Circuit Interrupting Device (CCID), may require clearing by an operator
+by, for example, pressing a button on the equipment or breaker panel.
+
+Signals and data provided by Electric Vehicle (EV) are labeled using EV in
+control and attribute names. Signals and data provided by Electric Vehicle
+Supply Equipment (EVSE) are labeled using EVSE in control and attribute names.
+
+This EVSE cluster is written around support of a single EVSE. Having multiple
+EVSEs at home or a business is managed by backend system and outside scope of
+this cluster.
+
+Note that in many deployments the EVSE may be outside the home and may suffer
+from intermittent network connections (e.g. a weak Wi-Fi signal). It also allows
+for a charging profile to be pre-configured, in case there is a temporary
+communications loss during a charging session.
+-->
+<cluster xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="types types.xsd cluster cluster.xsd" id="" name="Revision History" revision=""/>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/ElectricalEnergyMeasurement.xml b/zcl-builtin/matter/new-data-model/ElectricalEnergyMeasurement.xml
new file mode 100644
index 0000000000000000000000000000000000000000..2cf79935140e8b17b28ed3916a82cb4ab1e4ef48
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/ElectricalEnergyMeasurement.xml
@@ -0,0 +1,322 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0091" name="Electrical Energy Measurement" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="EEM" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="IMPE" name="ImportedEnergy" summary="Measurement of energy imported by the server">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="1" code="EXPE" name="ExportedEnergy" summary="Measurement of energy provided by the server">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="2" code="CUME" name="CumulativeEnergy" summary="Measurements are accumulative">
+      <optionalConform choice="b" more="true">
+        <notTerm>
+          <feature name="EPHE"/>
+        </notTerm>
+      </optionalConform>
+    </feature>
+    <feature bit="3" code="PERE" name="PeriodicEnergy" summary="Measurements are periodic">
+      <optionalConform choice="b" more="true">
+        <notTerm>
+          <feature name="EPHE"/>
+        </notTerm>
+      </optionalConform>
+    </feature>
+    <feature bit="4" code="EPHE" name="EphemeralEnergy" summary="Measurements are ephemeral">
+      <mandatoryConform>
+        <andTerm>
+          <notTerm>
+            <feature name="CUME"/>
+          </notTerm>
+          <notTerm>
+            <feature name="PERE"/>
+          </notTerm>
+        </andTerm>
+      </mandatoryConform>
+    </feature>
+  </features>
+  <attributes>
+    <attribute id="0x0000" name="Measured" type="bool" default="false">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="CumulativeEnergyImportedTime" type="epoch-s" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="IMPE"/>
+          <feature name="CUME"/>
+        </andTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0002" name="CumulativeEnergyImported" type="uint64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="IMPE"/>
+          <feature name="CUME"/>
+        </andTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0003" name="CumulativeEnergyExportedTime" type="epoch-s" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="EXPE"/>
+          <feature name="CUME"/>
+        </andTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0004" name="CumulativeEnergyExported" type="uint64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="EXPE"/>
+          <feature name="CUME"/>
+        </andTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0005" name="PeriodicEnergyImportedStartTime" type="epoch-s" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="IMPE"/>
+          <feature name="PERE"/>
+        </andTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0006" name="PeriodicEnergyImportedEndTime" type="epoch-s" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="IMPE"/>
+          <feature name="PERE"/>
+        </andTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0007" name="PeriodicEnergyImported" type="uint64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="IMPE"/>
+          <feature name="PERE"/>
+        </andTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0008" name="PeriodicEnergyExportedStartTime" type="epoch-s" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="EXPE"/>
+          <feature name="PERE"/>
+        </andTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0009" name="PeriodicEnergyExportedEndTime" type="epoch-s" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="EXPE"/>
+          <feature name="PERE"/>
+        </andTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x000a" name="PeriodicEnergyExported" type="uint64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="EXPE"/>
+          <feature name="PERE"/>
+        </andTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x000b" name="EphemeralEnergyImported" type="uint64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="IMPE"/>
+          <feature name="EPHE"/>
+        </andTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x000c" name="EphemeralEnergyImported" type="uint64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="EXPE"/>
+          <feature name="EPHE"/>
+        </andTerm>
+      </mandatoryConform>
+    </attribute>
+  </attributes>
+  <events>
+    <event id="0x00" name="CumulativeEnergyImported" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="CUME"/>
+          <feature name="IMPE"/>
+        </andTerm>
+      </mandatoryConform>
+      <field id="0" name="ImportedTimestamp" type="epoch-s">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="EnergyImported" type="uint64">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x01" name="CumulativeEnergyExported" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="CUME"/>
+          <feature name="EXPE"/>
+        </andTerm>
+      </mandatoryConform>
+      <field id="0" name="ExportedTimestamp" type="epoch-s">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="EnergyExported" type="uint64">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x03" name="PeriodicEnergyImported" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="PERE"/>
+          <feature name="IMPE"/>
+        </andTerm>
+      </mandatoryConform>
+      <field id="0" name="PeriodStart" type="epoch-s">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="PeriodEnd" type="epoch-s">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="EnergyImported" type="uint64">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x04" name="PeriodicEnergyExported" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="PERE"/>
+          <feature name="EXPE"/>
+        </andTerm>
+      </mandatoryConform>
+      <field id="0" name="PeriodStart" type="epoch-s">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="PeriodEnd" type="epoch-s">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="EnergyExported" type="uint64">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x05" name="EphemeralEnergyImported" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform>
+        <feature name="EPHE"/>
+      </optionalConform>
+      <field id="0" name="PeriodStart" type="systime-ms">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="PeriodEnd" type="systime-ms">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="EnergyImported" type="uint64">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x06" name="EphemeralEnergyExported" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform>
+        <feature name="EPHE"/>
+      </optionalConform>
+      <field id="0" name="PeriodStart" type="systime-ms">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="PeriodEnd" type="systime-ms">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="EnergyExported" type="uint64">
+        <mandatoryConform/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/ElectricalPowerMeasurement.xml b/zcl-builtin/matter/new-data-model/ElectricalPowerMeasurement.xml
new file mode 100644
index 0000000000000000000000000000000000000000..1ba8ff79fe60d26b8b643eab548975698af3645a
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/ElectricalPowerMeasurement.xml
@@ -0,0 +1,356 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0090" name="Electrical Power Measurement" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="EMR" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="DIRC" name="DirectCurrent" summary="Measurement of direct current">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="1" code="ALTC" name="AlternatingCurrent" summary="Measurement of alternating current">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="2" code="THRP" name="ThreePhasePower" summary="Represents a three-phase connection">
+      <optionalConform>
+        <feature name="ALTC"/>
+      </optionalConform>
+    </feature>
+    <feature bit="3" code="HARM" name="Harmonics" summary="Measurement of AC harmonics">
+      <optionalConform>
+        <feature name="ALTC"/>
+      </optionalConform>
+    </feature>
+    <feature bit="4" code="PWRQ" name="PowerQuality" summary="Measurement of AC harmonic phases">
+      <optionalConform>
+        <feature name="ALTC"/>
+      </optionalConform>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="MeasurementTypeEnum">
+      <item value="0" name="Unspecified">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Voltage">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Current">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="ActivePower">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="RMSCurrent">
+        <mandatoryConform>
+          <feature name="ALTC"/>
+        </mandatoryConform>
+      </item>
+      <item value="5" name="RMSPower">
+        <mandatoryConform>
+          <feature name="ALTC"/>
+        </mandatoryConform>
+      </item>
+      <item value="6" name="ApparentPower">
+        <mandatoryConform>
+          <feature name="ALTC"/>
+        </mandatoryConform>
+      </item>
+      <item value="7" name="ReactivePower">
+        <mandatoryConform>
+          <feature name="ALTC"/>
+        </mandatoryConform>
+      </item>
+      <item value="8" name="Frequency">
+        <mandatoryConform>
+          <feature name="ALTC"/>
+        </mandatoryConform>
+      </item>
+      <item value="9" name="PowerFactor">
+        <mandatoryConform>
+          <feature name="ALTC"/>
+        </mandatoryConform>
+      </item>
+      <item value="10" name="LineCurrent">
+        <mandatoryConform>
+          <feature name="ALTC"/>
+        </mandatoryConform>
+      </item>
+      <item value="11" name="NeutralCurrent">
+        <mandatoryConform>
+          <feature name="THRP"/>
+        </mandatoryConform>
+      </item>
+    </enum>
+    <enum name="PowerModeEnum">
+      <item value="0" name="Unspecified">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="DC"/>
+      <item value="2" name="AC"/>
+    </enum>
+    <struct name="HarmonicMeasurementStruct">
+      <field id="0" name="Order" type="uint8" default="1">
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="min" value="1"/>
+      </field>
+      <field id="1" name="Measurement" type="int32" default="null">
+        <access read="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+    <struct name="MeasurementAccuracyStruct">
+      <field id="0" name="MeasurementType" type="MeasurementTypeEnum">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Measured" type="bool" default="false">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="PercentTypical" type="percent100ths" default="0">
+        <access read="true"/>
+        <quality nullable="true"/>
+        <optionalConform choice="a"/>
+      </field>
+      <field id="3" name="FixedTypical" type="int64" default="0">
+        <access read="true"/>
+        <quality nullable="true"/>
+        <optionalConform choice="a"/>
+        <constraint type="min" value="0"/>
+      </field>
+      <field id="4" name="PercentMin" type="percent100ths" default="0">
+        <access read="true"/>
+        <optionalConform/>
+      </field>
+      <field id="4" name="FixedMin" type="int64" default="0">
+        <access read="true"/>
+        <optionalConform/>
+        <constraint type="min" value="0"/>
+      </field>
+      <field id="5" name="PercentMax" type="percent100ths" default="0">
+        <access read="true"/>
+        <optionalConform/>
+      </field>
+      <field id="5" name="FixedMax" type="int64" default="0">
+        <access read="true"/>
+        <optionalConform/>
+        <constraint type="min" value="0"/>
+      </field>
+    </struct>
+    <struct name="MeasurementRangeStruct">
+      <field id="0" name="MeasurementType" type="MeasurementTypeEnum" default="0">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Min" type="int64" default="null">
+        <access read="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="MinTimestamp" type="epoch-s" default="null">
+        <access read="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="Max" type="int64" default="null">
+        <access read="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="MaxTimestamp" type="epoch-s" default="null">
+        <access read="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="PowerMode" type="PowerModeEnum">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="Accuracy" type="list[MeasurementAccuracyStruct Type]">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="Ranges" type="list[MeasurementRangeStruct Type]">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0003" name="Voltage" type="int64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0004" name="Current" type="int64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0005" name="ActivePower" type="int64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0006" name="RMSCurrent" type="int64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="ALTC"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0007" name="RMSPower" type="int64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="ALTC"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0008" name="ApparentPower" type="int64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="ALTC"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0009" name="ReactivePower" type="int64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="ALTC"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x000a" name="Frequency" type="int64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="ALTC"/>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="1000000"/>
+    </attribute>
+    <attribute id="0x000b" name="HarmonicCurrents" type="list[HarmonicMeasurementStruct Type]" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="HARM"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x000c" name="HarmonicPhases" type="list[HarmonicMeasurementStruct Type]" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="PWRQ"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x000d" name="PowerFactor" type="int64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+      <constraint type="between" from="-10000" to="+10000"/>
+    </attribute>
+    <attribute id="0x000e" name="LineCurrent" type="int64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="ALTC"/>
+      </mandatoryConform>
+      <constraint type="min" value="0"/>
+    </attribute>
+    <attribute id="0x000f" name="NeutralCurrent" type="int64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="THRP"/>
+      </mandatoryConform>
+    </attribute>
+  </attributes>
+  <events>
+    <event id="0x00" name="MeasurementPeriodRange" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+      <field id="0" name="MeasurementType" type="MeasurementTypeEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="PeriodStart" type="epoch-s">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="PeriodEnd" type="epoch-s">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="Min" type="int64">
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="MinTimestamp" type="epoch-s">
+        <mandatoryConform/>
+      </field>
+      <field id="5" name="Max" type="int64">
+        <mandatoryConform/>
+      </field>
+      <field id="6" name="MaxTimestamp" type="epoch-s">
+        <mandatoryConform/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/EnergyCalendar.xml b/zcl-builtin/matter/new-data-model/EnergyCalendar.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a2495b44f452716f68d99ca37178de86d3455f7c
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/EnergyCalendar.xml
@@ -0,0 +1,300 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x009a" name="Energy Calendar" revision="3">
+  <revisionHistory>
+    <revision revision="1" summary="mandatory global ClusterRevision attribute added; Added from SE1.4; CCB 2068"/>
+    <revision revision="2" summary="CCB 3042"/>
+    <revision revision="3" summary="Initial Matter Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="SECA" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="PTIER" name="PricingTier" summary="Supports information about pricing tiers">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="1" code="FCRED" name="FriendlyCredit" summary="Supports information about when friendly credit periods begin and end">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="2" code="AUXLD" name="AuxiliaryLoad" summary="Supports information about when auxiliary loads should be enabled or disabled">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="3" code="PEAKP" name="PeakPeriod" summary="Supports information about peak periods">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="PeakPeriodSeverityEnum">
+      <item value="0" name="Unused">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Low">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Medium">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="High">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="TimeReferenceEnum">
+      <item value="0" name="UTC" summary="UTC Time">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Standard" summary="UTC time adjusted to local time zone">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Local" summary="Standard time, adjusted to DST">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <bitmap name="AuxiliaryLoadBitmap">
+      <bitfield name="AuxiliarySwitch1" bit="0" summary="Auxiliary Switch 1">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="AuxiliarySwitch2" bit="1" summary="Auxiliary Switch 2">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="AuxiliarySwitch3" bit="2" summary="Auxiliary Switch 3">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="AuxiliarySwitch4" bit="3" summary="Auxiliary Switch 4">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="AuxiliarySwitch5" bit="4" summary="Auxiliary Switch 5">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="AuxiliarySwitch6" bit="5" summary="Auxiliary Switch 6">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="AuxiliarySwitch7" bit="6" summary="Auxiliary Switch 7">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="AuxiliarySwitch8" bit="7" summary="Auxiliary Switch 8">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="TransitionDayOfWeekBitmap">
+      <bitfield name="Sunday" bit="0" summary="Sunday">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Monday" bit="1" summary="Monday">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Tuesday" bit="2" summary="Tuesday">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Wednesday" bit="3" summary="Wednesday">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Thursday" bit="4" summary="Thursday">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Friday" bit="5" summary="Friday">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Saturday" bit="6" summary="Saturday">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <struct name="CalendarPeriod">
+      <field id="0" name="StartDate" type="epoch-s">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Days" type="list">
+        <entry type="DayStruct"/>
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="minCount" value="1"/>
+      </field>
+    </struct>
+    <struct name="DayStruct">
+      <field id="0" name="Date" type="epoch-s">
+        <access read="true" write="true"/>
+        <optionalConform choice="a"/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="DaysOfWeek" type="TransitionDayOfWeekBitmap">
+        <access read="true" write="true"/>
+        <optionalConform choice="a"/>
+        <constraint type="desc"/>
+      </field>
+      <field id="2" name="Transitions" type="list">
+        <entry type="TransitionStruct"/>
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="minCount" value="1"/>
+      </field>
+    </struct>
+    <struct name="PeakPeriodStatusStruct">
+      <field id="0" name="CurrentDaySeverity" type="PeakPeriodSeverityEnum">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="NextDaySeverity" type="PeakPeriodSeverityEnum">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="PeakPeriod" type="uint16">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="PeakPeriodPriorNotice" type="uint16">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+    <struct name="TransitionStruct">
+      <field id="0" name="TransitionTime" type="uint16">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="1439"/>
+      </field>
+      <field id="1" name="PriceTier" type="uint32">
+        <access read="true" write="true"/>
+      </field>
+      <field id="2" name="FriendlyCredit" type="bool">
+        <access read="true" write="true"/>
+      </field>
+      <field id="3" name="AuxiliaryLoad" type="AuxiliaryLoadBitmap">
+        <access read="true" write="true"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="CalendarID" type="uint32" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="Name" type="string" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="maxLength" value="12"/>
+    </attribute>
+    <attribute id="0x0002" name="ProviderID" type="uint32" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0003" name="EventID" type="uint32" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0004" name="StartDate" type="epoch-s" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0005" name="TimeReference" type="TimeReferenceEnum" default="UTC">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0006" name="CalendarPeriods" type="list" default="empty">
+      <entry type="CalendarPeriod"/>
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0007" name="SpecialDays" type="list" default="empty">
+      <entry type="DayStruct"/>
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x000a" name="CurrentDay" type="DayStruct" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x000d" name="NextDay" type="DayStruct" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x000d" name="CurrentTransition" type="TransitionStruct" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x000f" name="PeakPeriodStatus" type="PeakPeriodStatusStruct" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="PEAKP"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0010" name="PeakPeriodStartTime" type="epoch-s" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="PEAKP"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0011" name="PeakPeriodEndTime" type="epoch-s" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="PEAKP"/>
+      </mandatoryConform>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/EnergyPreference.xml b/zcl-builtin/matter/new-data-model/EnergyPreference.xml
new file mode 100644
index 0000000000000000000000000000000000000000..19da63d8be854ebcbdf2fbeff6778aa914e8cde3
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/EnergyPreference.xml
@@ -0,0 +1,141 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x009b" name="Energy Preference" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="EPREF" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="BALA" name="EnergyBalance" summary="Device can balance energy consumption vs. another priority">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="0" code="LPMS" name="LowPowerModeSensitivity" summary="Device can adjust the conditions for entering a low power mode">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="EnergyPriorityEnum">
+      <item value="0" name="Comfort">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Speed">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Efficiency">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="WaterConsumption">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <struct name="BalanceStruct">
+      <field id="0" name="Step" type="uint8" default="MS">
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="allowed" value="percent"/>
+      </field>
+      <field id="1" name="Label" type="string">
+        <access read="true"/>
+        <optionalConform/>
+        <constraint type="maxLength" value="64"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="EnergyBalances" type="list[BalanceStruct Type]">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="BALA"/>
+      </mandatoryConform>
+      <constraint type="between" from="2" to="10"/>
+    </attribute>
+    <attribute id="0x0001" name="CurrentEnergyBalance" type="uint8">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="BALA"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0001" name="CurrentLowPowerModeSensitivity" type="uint8">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="LPMS"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0002" name="EnergyPriorities" type="list[EnergyPriorityEnum Type]">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="BALA"/>
+      </mandatoryConform>
+      <constraint type="allowed" value="2"/>
+    </attribute>
+    <attribute id="0x0003" name="LowPowerModeSensitivities" type="list[BalanceStruct Type]">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="LPMS"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/EnergyPrice.xml b/zcl-builtin/matter/new-data-model/EnergyPrice.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a379808a5923932c9a2cb7df51f8d3017b403829
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/EnergyPrice.xml
@@ -0,0 +1,236 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0095" name="Energy Price" revision="4">
+  <revisionHistory>
+    <revision revision="1" summary="mandatory global ClusterRevision attribute added"/>
+    <revision revision="2" summary="Updated from SE1.4 version; CCB 1447 2964 2965"/>
+    <revision revision="3" summary="CCBs 2043 2706 2810 2912 3566"/>
+    <revision revision="4" summary="Initial Matter Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="SEPR" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="FORE" name="Forecasting" summary="Forecasts upcoming pricing">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="PriceComponentSourceEnum">
+      <item value="0" name="Tariff">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="IncentiveSignal">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="UnitOfMeasureEnum">
+      <item value="0" name="kWh" summary="Kilowatt Hours">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="m³" summary="Cubic meters">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="ft³" summary="Cubic feet">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="CCF" summary="Centum Cubic feet">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="US gl" summary="US Gallons">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="IMP gl" summary="Imperial Gallons">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="L" summary="Liters">
+        <mandatoryConform/>
+      </item>
+      <item value="7" name="BTUs" summary="British Thermal Units">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <bitmap name="PriceDetailBitmap">
+      <bitfield name="Description" bit="0" summary="A textual description of a price; e.g. the name of a rate plan.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Components" bit="1" summary="A breakdown of the component parts of a price; e.g. generation, delivery, etc.">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <struct name="PriceComponentStruct">
+      <field id="0" name="Price" type="int32">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Source" type="PriceComponentSourceEnum" default="Tariff">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="Description" type="string">
+        <access read="true"/>
+        <optionalConform/>
+        <constraint type="maxLength" value="32"/>
+      </field>
+    </struct>
+    <struct name="PriceStruct">
+      <field id="0" name="PeriodStart" type="epoch-s">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="PeriodEnd" type="epoch-s" default="null">
+        <access read="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="Price" type="int32">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="DecimalPoints" type="uint8" default="0">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="Currency" type="uint16">
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="max" value="999"/>
+      </field>
+      <field id="5" name="Description" type="string">
+        <access read="true"/>
+        <optionalConform/>
+        <constraint type="maxLength" value="32"/>
+      </field>
+      <field id="6" name="Components" type="list" default="empty">
+        <entry type="PriceComponentStruct"/>
+        <access read="true"/>
+        <optionalConform/>
+        <constraint type="maxCount" value="10"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="UnitOfMeasure" type="UnitOfMeasureEnum" default="null">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="CurrentPrice" type="PriceStruct" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="PriceForecast" type="list" default="empty">
+      <entry type="PriceStruct"/>
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="FORE"/>
+      </mandatoryConform>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="GetDetailedPriceRequest" response="GetDetailedPriceResponse">
+      <access invokePrivilege="operate"/>
+      <optionalConform/>
+      <field id="0" name="Details" type="PriceDetailBitmap" default="0">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x01" name="GetDetailedPriceResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <optionalConform/>
+      <field id="0" name="Price" type="PriceStruct" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x02" name="GetDetailedForecastRequest" response="GetDetailedForecastResponse">
+      <access invokePrivilege="operate"/>
+      <optionalConform>
+        <feature name="FORE"/>
+      </optionalConform>
+      <field id="0" name="Details" type="PriceDetailBitmap" default="0">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x03" name="GetDetailedForecastResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <optionalConform>
+        <feature name="FORE"/>
+      </optionalConform>
+      <field id="0" name="Price" type="list" default="empty">
+        <entry type="PriceStruct"/>
+        <mandatoryConform/>
+      </field>
+    </command>
+  </commands>
+  <events>
+    <event id="0x00" name="PriceChange" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+      <field id="0" name="Price" type="PriceStruct">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x01" name="ForecastChange" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+      <field id="0" name="Forecast" type="list">
+        <entry type="PriceStruct"/>
+        <mandatoryConform/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/FanControl.xml b/zcl-builtin/matter/new-data-model/FanControl.xml
new file mode 100644
index 0000000000000000000000000000000000000000..4babd50653a3dfe15bffbfe28e9e2d656bd7521e
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/FanControl.xml
@@ -0,0 +1,296 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0202" name="Fan Control" revision="4">
+  <revisionHistory>
+    <revision revision="1" summary="Global mandatory ClusterRevision attribute added"/>
+    <revision revision="2" summary="New data model format and notation; Percent, speed and motion settings; General cleanup"/>
+    <revision revision="3" summary="Addition of Airflow Direction and Step command"/>
+    <revision revision="4" summary="Change conformance for FanModeSequenceEnum"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="FAN" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="SPD" name="MultiSpeed" summary="1-100 speeds">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="AUT" name="Auto" summary="Automatic mode supported for fan speed">
+      <optionalConform/>
+    </feature>
+    <feature bit="2" code="RCK" name="Rocking" summary="Rocking movement supported">
+      <optionalConform/>
+    </feature>
+    <feature bit="3" code="WND" name="Wind" summary="Wind emulation supported">
+      <optionalConform/>
+    </feature>
+    <feature bit="4" code="STEP" name="Step" summary="Step command supported">
+      <optionalConform/>
+    </feature>
+    <feature bit="5" code="DIR" name="Airflow Direction" summary="Airflow Direction attribute is supported">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="AirflowDirectionEnum">
+      <item value="0" name="Forward" summary="Airflow is in the forward direction">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Reverse" summary="Airflow is in the reverse direction">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="FanModeEnum">
+      <item value="0" name="Off" summary="Fan is off">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Low" summary="Fan using low speed"/>
+      <item value="2" name="Medium" summary="Fan using medium speed"/>
+      <item value="3" name="High" summary="Fan using high speed">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="On">
+        <deprecateConform/>
+      </item>
+      <item value="5" name="Auto" summary="Fan is using auto mode">
+        <mandatoryConform>
+          <feature name="AUT"/>
+        </mandatoryConform>
+      </item>
+      <item value="6" name="Smart" summary="Fan is using smart mode">
+        <deprecateConform/>
+      </item>
+    </enum>
+    <enum name="FanModeSequenceEnum">
+      <item value="0" name="Off/Low/Med/High" summary="Fan is capable of off, low, medium and high modes">
+        <optionalConform choice="a">
+          <notTerm>
+            <feature name="AUT"/>
+          </notTerm>
+        </optionalConform>
+      </item>
+      <item value="1" name="Off/Low/High" summary="Fan is capable of off, low and high modes">
+        <optionalConform choice="a">
+          <notTerm>
+            <feature name="AUT"/>
+          </notTerm>
+        </optionalConform>
+      </item>
+      <item value="2" name="Off/Low/Med/High/Auto" summary="Fan is capable of off, low, medium, high and auto modes">
+        <optionalConform choice="a">
+          <feature name="AUT"/>
+        </optionalConform>
+      </item>
+      <item value="3" name="Off/Low/High/Auto" summary="Fan is capable of off, low, high and auto modes">
+        <optionalConform choice="a">
+          <feature name="AUT"/>
+        </optionalConform>
+      </item>
+      <item value="4" name="Off/High/Auto" summary="Fan is capable of off, high and auto modes">
+        <optionalConform choice="a">
+          <feature name="AUT"/>
+        </optionalConform>
+      </item>
+      <item value="5" name="Off/High" summary="Fan is capable of off and high modes">
+        <optionalConform choice="a">
+          <notTerm>
+            <feature name="AUT"/>
+          </notTerm>
+        </optionalConform>
+      </item>
+    </enum>
+    <enum name="StepDirectionEnum">
+      <item value="0" name="Increase" summary="Step moves in increasing direction">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Decrease" summary="Step moves in decreasing direction">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <bitmap name="RockBitmap">
+      <bitfield name="RockLeftRight" bit="0" summary="Indicate rock left to right">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="RockUpDown" bit="1" summary="Indicate rock up and down">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="RockRound" bit="2" summary="Indicate rock around">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="WindBitmap">
+      <bitfield name="SleepWind" bit="0" summary="Indicate sleep wind">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="NaturalWind" bit="1" summary="Indicate natural wind">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="FanMode" type="FanModeEnum" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="6"/>
+    </attribute>
+    <attribute id="0x0001" name="FanModeSequence" type="FanModeSequenceEnum" default="MS">
+      <access read="true" write="optional" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <condition name="Zigbee"/>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="5"/>
+    </attribute>
+    <attribute id="0x0001" name="FanModeSequence" type="FanModeSequenceEnum" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="5"/>
+    </attribute>
+    <attribute id="0x0002" name="PercentSetting" type="percent" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="100"/>
+    </attribute>
+    <attribute id="0x0003" name="PercentCurrent" type="percent" default="desc">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="100"/>
+    </attribute>
+    <attribute id="0x0004" name="SpeedMax" type="uint8" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="SPD"/>
+      </mandatoryConform>
+      <constraint type="between" from="1" to="100"/>
+    </attribute>
+    <attribute id="0x0005" name="SpeedSetting" type="uint8" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="SPD"/>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="SpeedMax"/>
+    </attribute>
+    <attribute id="0x0006" name="SpeedCurrent" type="uint8" default="desc">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform>
+        <feature name="SPD"/>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="SpeedMax"/>
+    </attribute>
+    <attribute id="0x0007" name="RockSupport" type="RockBitmap" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="RCK"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0008" name="RockSetting" type="RockBitmap" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform>
+        <feature name="RCK"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0009" name="WindSupport" type="WindBitmap" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="WND"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x000a" name="WindSetting" type="WindBitmap" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform>
+        <feature name="WND"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x000b" name="AirflowDirection" type="AirflowDirectionEnum" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform>
+        <feature name="DIR"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="Step" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="STEP"/>
+      </mandatoryConform>
+      <field id="0" name="Direction" type="StepDirectionEnum" default="Increase">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Wrap" type="bool" default="false">
+        <optionalConform/>
+      </field>
+      <field id="2" name="LowestOff" type="bool" default="true">
+        <optionalConform/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/FlowMeasurement.xml b/zcl-builtin/matter/new-data-model/FlowMeasurement.xml
new file mode 100644
index 0000000000000000000000000000000000000000..f309eb04574d8fdbdca6b113da00c53e0ccdcc97
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/FlowMeasurement.xml
@@ -0,0 +1,90 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0404" name="Flow Measurement" revision="3">
+  <revisionHistory>
+    <revision revision="1" summary="Mandatory global ClusterRevision attribute added"/>
+    <revision revision="2" summary="CCB 2241 2370"/>
+    <revision revision="3" summary="New data model format and notation"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="FLW" scope="Endpoint"/>
+  <attributes>
+    <attribute id="0x0000" name="MeasuredValue" type="uint16" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform/>
+      <constraint type="between" from="MinMeasuredValue" to="MaxMeasuredValue"/>
+    </attribute>
+    <attribute id="0x0001" name="MinMeasuredValue" type="uint16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="MaxMeasuredValue-1"/>
+    </attribute>
+    <attribute id="0x0002" name="MaxMeasuredValue" type="uint16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="MinMeasuredValue+1" to="65534"/>
+    </attribute>
+    <attribute id="0x0003" name="Tolerance" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="between" from="0" to="2048"/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/GeneralCommissioningCluster.xml b/zcl-builtin/matter/new-data-model/GeneralCommissioningCluster.xml
new file mode 100644
index 0000000000000000000000000000000000000000..c61aaeb29ae29384c9f1b4588151747add9575a8
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/GeneralCommissioningCluster.xml
@@ -0,0 +1,131 @@
+<?xml version="1.0"?>
+<!--
+link:../matter-defines.adoc[]
+
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0030" name="General Commissioning" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="CGEN" scope="Node"/>
+  <dataTypes>
+    <enum name="CommissioningErrorEnum">
+      <item value="0" name="OK" summary="No error">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="ValueOutsideRange" summary="[[ref_ValueOutsideRange]] Attempting to set regulatory configuration to a region or indoor/outdoor mode for which the server does not have proper configuration.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="InvalidAuthentication" summary="[[ref_InvalidAuthentication]] Executed CommissioningComplete outside CASE session.">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="NoFailSafe" summary="[[ref_NoFailSafe]] Executed CommissioningComplete when there was no active ArmFailSafe Command.">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="BusyWithOtherAdmin" summary="[[ref_BusyWithOtherAdmin]] Attempting to arm fail-safe or execute CommissioningComplete from a fabric different than the one associated with the current fail-safe context.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="RegulatoryLocationTypeEnum">
+      <item value="0" name="Indoor" summary="Indoor only">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Outdoor" summary="Outdoor only">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="IndoorOutdoor" summary="Indoor/Outdoor">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <struct name="BasicCommissioningInfo">
+      <field id="0" name="FailSafeExpiryLengthSeconds" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="MaxCumulativeFailsafeSeconds" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="Breadcrumb" type="uint64" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="admin"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="BasicCommissioningInfo" type="BasicCommissioningInfo">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0002" name="RegulatoryConfig" type="RegulatoryLocationTypeEnum" default="LocationCapability">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0003" name="LocationCapability" type="RegulatoryLocationTypeEnum" default="IndoorOutdoor">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0004" name="SupportsConcurrentConnection" type="bool" default="true">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+  </attributes>
+  <commands/>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Group-Key-Management-Cluster.xml b/zcl-builtin/matter/new-data-model/Group-Key-Management-Cluster.xml
new file mode 100644
index 0000000000000000000000000000000000000000..00565492c1863465262f56bf026055e716593e5a
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Group-Key-Management-Cluster.xml
@@ -0,0 +1,232 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x003f" name="GroupKeyManagement" revision="2">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+    <revision revision="2" summary="Clarify KeySetWrite validation and behavior on invalid epoch key lengths"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="GRPKEY" scope="Node"/>
+  <features>
+    <feature bit="0" code="CS" name="CacheAndSync" summary="The ability to support CacheAndSync security policy and MCSP.">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="GroupKeyMulticastPolicyEnum">
+      <item value="0" name="PerGroupID" summary="Indicates filtering of multicast messages for a specific Group ID">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="AllNodes" summary="Indicates not filtering of multicast messages">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="GroupKeySecurityPolicyEnum">
+      <item value="0" name="TrustFirst" summary="Message counter synchronization using trust-first">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="CacheAndSync" summary="Message counter synchronization using cache-and-sync">
+        <mandatoryConform>
+          <feature name="CS"/>
+        </mandatoryConform>
+      </item>
+    </enum>
+    <struct name="GroupInfoMapStruct">
+      <field id="1" name="GroupId" type="&lt;&lt;ref_DataTypeGroupId&gt;&gt;">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="Endpoints" type="&lt;&lt;ref_DataTypeList&gt;&gt;[&lt;&lt;ref_DataTypeEndpointNumber&gt;&gt;]">
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="min" value="1"/>
+      </field>
+      <field id="3" name="GroupName" type="&lt;&lt;ref_DataTypeString&gt;&gt;">
+        <access read="true"/>
+        <optionalConform/>
+        <constraint type="max" value="16"/>
+      </field>
+    </struct>
+    <struct name="GroupKeyMapStruct">
+      <field id="1" name="GroupId" type="&lt;&lt;ref_DataTypeGroupId&gt;&gt;">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="GroupKeySetID" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="65535"/>
+      </field>
+    </struct>
+    <struct name="GroupKeySetStruct">
+      <field id="0" name="GroupKeySetID" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="GroupKeySecurityPolicy" type="GroupKeySecurityPolicyEnum">
+        <access fabricSensitive="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="EpochKey0" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <access fabricSensitive="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="allowed" value="16"/>
+      </field>
+      <field id="3" name="EpochStartTime0" type="&lt;&lt;ref_DataTypeEpochUs&gt;&gt;">
+        <access fabricSensitive="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="EpochKey1" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <access fabricSensitive="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="allowed" value="16"/>
+      </field>
+      <field id="5" name="EpochStartTime1" type="&lt;&lt;ref_DataTypeEpochUs&gt;&gt;">
+        <access fabricSensitive="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="6" name="EpochKey2" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <access fabricSensitive="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="allowed" value="16"/>
+      </field>
+      <field id="7" name="EpochStartTime2" type="&lt;&lt;ref_DataTypeEpochUs&gt;&gt;">
+        <access fabricSensitive="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="8" name="GroupKeyMulticastPolicy" type="GroupKeyMulticastPolicyEnum">
+        <access fabricSensitive="true"/>
+        <otherwiseConform>
+          <provisionalConform/>
+          <mandatoryConform/>
+        </otherwiseConform>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="GroupKeyMap" type="&lt;&lt;ref_DataTypeList&gt;&gt;[GroupKeyMapStruct Type]" default="empty">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0001" name="GroupTable" type="&lt;&lt;ref_DataTypeList&gt;&gt;[GroupInfoMapStruct Type]" default="empty">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0002" name="MaxGroupsPerFabric" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0003" name="MaxGroupKeysPerFabric" type="uint16" default="1">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="1" to="65535"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="KeySetWrite Command" response="Y">
+      <access invokePrivilege="admin" fabricScoped="true"/>
+      <mandatoryConform/>
+      <field id="0" name="GroupKeySet" type="GroupKeySetStruct">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x01" name="KeySetRead Command" response="KeySetReadResponse Command">
+      <access invokePrivilege="admin" fabricScoped="true"/>
+      <mandatoryConform/>
+      <field id="0" name="GroupKeySetID" type="uint16">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x02" name="KeySetReadResponse Command" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="GroupKeySet" type="GroupKeySetStruct">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x03" name="KeySetRemove Command" response="Y">
+      <access invokePrivilege="admin" fabricScoped="true"/>
+      <mandatoryConform/>
+      <field id="0" name="GroupKeySetID" type="uint16">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x04" name="KeySetReadAllIndices Command" response="KeySetReadAllIndicesResponse Command">
+      <access invokePrivilege="admin" fabricScoped="true"/>
+      <mandatoryConform/>
+      <field id="0" name="reserved">
+        <disallowConform/>
+      </field>
+    </command>
+    <command id="0x05" name="KeySetReadAllIndicesResponse Command" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="GroupKeySetIDs" type="list">
+        <entry type="uint16"/>
+        <mandatoryConform/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Groups.xml b/zcl-builtin/matter/new-data-model/Groups.xml
new file mode 100644
index 0000000000000000000000000000000000000000..3c91b10a5a99b6bf2faefae7c1c5b447b4474aa2
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Groups.xml
@@ -0,0 +1,196 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0004" name="Groups" revision="4">
+  <revisionHistory>
+    <revision revision="1" summary="Global mandatory ClusterRevision attribute added; CCB 1745 2100"/>
+    <revision revision="2" summary="CCB 2289"/>
+    <revision revision="3" summary="CCB 2310 2704"/>
+    <revision revision="4" summary="New data model format and notation"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="G" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="GN" name="GroupNames" summary="The ability to store a name for a group.">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <bitmap name="NameSupportBitmap">
+      <bitfield name="GroupNames" bit="7" summary="The ability to store a name for a group.">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="NameSupport" type="NameSupportBitmap" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="AddGroup" response="AddGroupResponse">
+      <access invokePrivilege="manage" fabricScoped="true"/>
+      <mandatoryConform/>
+      <field id="0" name="GroupID" type="group-id">
+        <mandatoryConform/>
+        <constraint type="min" value="1"/>
+      </field>
+      <field id="1" name="GroupName" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="16"/>
+      </field>
+    </command>
+    <command id="0x00" name="AddGroupResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Status" type="enum8">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="GroupID" type="group-id">
+        <mandatoryConform/>
+        <constraint type="min" value="1"/>
+      </field>
+    </command>
+    <command id="0x01" name="ViewGroup" response="ViewGroupResponse">
+      <access invokePrivilege="operate" fabricScoped="true"/>
+      <mandatoryConform/>
+      <field id="0" name="GroupID" type="group-id">
+        <mandatoryConform/>
+        <constraint type="min" value="1"/>
+      </field>
+    </command>
+    <command id="0x01" name="ViewGroupResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Status" type="enum8">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="GroupID" type="group-id">
+        <mandatoryConform/>
+        <constraint type="min" value="1"/>
+      </field>
+      <field id="2" name="GroupName" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="16"/>
+      </field>
+    </command>
+    <command id="0x02" name="GetGroupMembership" response="GetGroupMembershipResponse">
+      <access invokePrivilege="operate" fabricScoped="true"/>
+      <mandatoryConform/>
+      <field id="0" name="GroupList" type="list">
+        <entry type="group-id">
+          <constraint type="min" value="1"/>
+        </entry>
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x02" name="GetGroupMembershipResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Capacity" type="uint8">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="GroupList" type="list">
+        <entry type="group-id">
+          <constraint type="min" value="1"/>
+        </entry>
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x03" name="RemoveGroup" response="RemoveGroupResponse">
+      <access invokePrivilege="manage" fabricScoped="true"/>
+      <mandatoryConform/>
+      <field id="0" name="GroupID" type="group-id">
+        <mandatoryConform/>
+        <constraint type="min" value="1"/>
+      </field>
+    </command>
+    <command id="0x03" name="RemoveGroupResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Status" type="enum8">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="GroupID" type="group-id">
+        <mandatoryConform/>
+        <constraint type="min" value="1"/>
+      </field>
+    </command>
+    <command id="0x04" name="RemoveAllGroups" response="Y">
+      <access invokePrivilege="manage" fabricScoped="true"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x05" name="AddGroupIfIdentifying" response="Y">
+      <access invokePrivilege="manage" fabricScoped="true"/>
+      <mandatoryConform/>
+      <field id="0" name="GroupID" type="group-id">
+        <mandatoryConform/>
+        <constraint type="min" value="1"/>
+      </field>
+      <field id="1" name="GroupName" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="16"/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Identify.xml b/zcl-builtin/matter/new-data-model/Identify.xml
new file mode 100644
index 0000000000000000000000000000000000000000..230338bec464625894c25a33e98e79a90003b878
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Identify.xml
@@ -0,0 +1,170 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0003" name="Identify" revision="4">
+  <revisionHistory>
+    <revision revision="1" summary="Global mandatory ClusterRevision attribute added"/>
+    <revision revision="2" summary="CCB 2808"/>
+    <revision revision="3" summary="All Hubs changes"/>
+    <revision revision="4" summary="New data model format and notation; add IdentifyType"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="I" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="QRY" name="Query" summary="Multicast query for identification state">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="EffectIdentifierEnum">
+      <item value="0" name="Blink" summary="e.g., Light is turned on/off once.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Breathe" summary="e.g., Light is turned on/off over 1 second and repeated 15 times.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Okay" summary="e.g., Colored light turns green for 1 second; non-colored light flashes twice.">
+        <mandatoryConform/>
+      </item>
+      <item value="11" name="ChannelChange" summary="e.g., Colored light turns orange for 8 seconds;
+                           non-colored light switches to the maximum brightness for 0.5s and then minimum brightness for 7.5s.">
+        <mandatoryConform/>
+      </item>
+      <item value="254" name="FinishEffect" summary="Complete the current effect sequence before
+                           terminating. e.g., if in the middle of a breathe effect (as above),
+                           first complete the current 1s breathe effect and then terminate the
+                           effect.">
+        <mandatoryConform/>
+      </item>
+      <item value="255" name="StopEffect" summary="Terminate the effect as soon as possible.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="EffectVariantEnum">
+      <item value="0" name="Default" summary="Indicates the default effect is used">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="IdentifyTypeEnum">
+      <item value="0" name="None" summary="No presentation.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="LightOutput" summary="Light output of a lighting product.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="VisibleIndicator" summary="Typically a small LED.">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="AudibleBeep">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="Display" summary="Presentation will be visible on display screen.">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="Actuator" summary="Presentation will be conveyed by actuator functionality
+                             such as through a window blind operation or in-wall relay.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="IdentifyTime" type="uint16" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="IdentifyType" type="IdentifyTypeEnum" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="Identify" response="Y">
+      <access invokePrivilege="manage"/>
+      <mandatoryConform/>
+      <field id="0" name="IdentifyTime" type="uint16">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x00" name="IdentifyQueryResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="QRY"/>
+      </mandatoryConform>
+      <field id="0" name="Timeout" type="uint16">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x01" name="IdentifyQuery" response="IdentifyQueryResponse">
+      <access invokePrivilege="manage"/>
+      <mandatoryConform>
+        <feature name="QRY"/>
+      </mandatoryConform>
+    </command>
+    <command id="0x40" name="TriggerEffect" response="Y">
+      <access invokePrivilege="manage"/>
+      <optionalConform/>
+      <field id="0" name="EffectIdentifier" type="EffectIdentifierEnum">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="EffectVariant" type="EffectVariantEnum">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/IlluminanceMeasurement.xml b/zcl-builtin/matter/new-data-model/IlluminanceMeasurement.xml
new file mode 100644
index 0000000000000000000000000000000000000000..24c4416f384fb795db70ac21756262246997ccd2
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/IlluminanceMeasurement.xml
@@ -0,0 +1,109 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0400" name="Illuminance Measurement" revision="3">
+  <revisionHistory>
+    <revision revision="1" summary="Mandatory global ClusterRevision attribute added; CCB 2048 2049 2050"/>
+    <revision revision="2" summary="CCB 2167"/>
+    <revision revision="3" summary="New data model format and notation"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="ILL" scope="Endpoint"/>
+  <dataTypes>
+    <enum name="LightSensorTypeEnum">
+      <item value="0" name="Photodiode" summary="Indicates photodiode sensor type">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="CMOS" summary="Indicates CMOS sensor type">
+        <mandatoryConform/>
+      </item>
+      <item from="64" to="254" name="MS" summary="Reserved for manufacturer specific light sensor types">
+        <optionalConform/>
+      </item>
+    </enum>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="MeasuredValue" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform/>
+      <constraint type="allowed" value="0"/>
+      <constraint type="between" from="MinMeasuredValue" to="MaxMeasuredValue"/>
+    </attribute>
+    <attribute id="0x0001" name="MinMeasuredValue" type="uint16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="1" to="MaxMeasuredValue-1"/>
+    </attribute>
+    <attribute id="0x0002" name="MaxMeasuredValue" type="uint16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="MinMeasuredValue+1" to="65534"/>
+    </attribute>
+    <attribute id="0x0003" name="Tolerance" type="uint16">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="between" from="0" to="2048"/>
+    </attribute>
+    <attribute id="0x0004" name="LightSensorType" type="LightSensorTypeEnum" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/KeypadInput.xml b/zcl-builtin/matter/new-data-model/KeypadInput.xml
new file mode 100644
index 0000000000000000000000000000000000000000..26052a949f06f57dfa695188437f7914d45eb4ea
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/KeypadInput.xml
@@ -0,0 +1,363 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0509" name="Keypad Input" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="KEYPADINPUT" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="NV" name="NavigationKeyCodes" summary="Supports UP, DOWN, LEFT, RIGHT, SELECT, BACK, EXIT, MENU">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="LK" name="LocationKeys" summary="Supports CEC keys 0x0A (Settings) and 0x09 (Home)">
+      <optionalConform/>
+    </feature>
+    <feature bit="2" code="NK" name="NumberKeys" summary="Supports numeric input 0..9">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="CecKeyCodeEnum">
+      <item value="0" name="Select">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Up">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Down">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Left">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="Right">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="RightUp">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="RightDown">
+        <mandatoryConform/>
+      </item>
+      <item value="7" name="LeftUp">
+        <mandatoryConform/>
+      </item>
+      <item value="8" name="LeftDown">
+        <mandatoryConform/>
+      </item>
+      <item value="9" name="RootMenu">
+        <mandatoryConform/>
+      </item>
+      <item value="10" name="SetupMenu">
+        <mandatoryConform/>
+      </item>
+      <item value="11" name="ContentsMenu">
+        <mandatoryConform/>
+      </item>
+      <item value="12" name="FavoriteMenu">
+        <mandatoryConform/>
+      </item>
+      <item value="13" name="Exit">
+        <mandatoryConform/>
+      </item>
+      <item value="16" name="MediaTopMenu">
+        <mandatoryConform/>
+      </item>
+      <item value="17" name="MediaContextSensitiveMenu">
+        <mandatoryConform/>
+      </item>
+      <item value="29" name="NumberEntryMode">
+        <mandatoryConform/>
+      </item>
+      <item value="30" name="Number11">
+        <mandatoryConform/>
+      </item>
+      <item value="31" name="Number12">
+        <mandatoryConform/>
+      </item>
+      <item value="32" name="Number0OrNumber10">
+        <mandatoryConform/>
+      </item>
+      <item value="33" name="Numbers1">
+        <mandatoryConform/>
+      </item>
+      <item value="34" name="Numbers2">
+        <mandatoryConform/>
+      </item>
+      <item value="35" name="Numbers3">
+        <mandatoryConform/>
+      </item>
+      <item value="36" name="Numbers4">
+        <mandatoryConform/>
+      </item>
+      <item value="37" name="Numbers5">
+        <mandatoryConform/>
+      </item>
+      <item value="38" name="Numbers6">
+        <mandatoryConform/>
+      </item>
+      <item value="39" name="Numbers7">
+        <mandatoryConform/>
+      </item>
+      <item value="40" name="Numbers8">
+        <mandatoryConform/>
+      </item>
+      <item value="41" name="Numbers9">
+        <mandatoryConform/>
+      </item>
+      <item value="42" name="Dot">
+        <mandatoryConform/>
+      </item>
+      <item value="43" name="Enter">
+        <mandatoryConform/>
+      </item>
+      <item value="44" name="Clear">
+        <mandatoryConform/>
+      </item>
+      <item value="47" name="NextFavorite">
+        <mandatoryConform/>
+      </item>
+      <item value="48" name="ChannelUp">
+        <mandatoryConform/>
+      </item>
+      <item value="49" name="ChannelDown">
+        <mandatoryConform/>
+      </item>
+      <item value="50" name="PreviousChannel">
+        <mandatoryConform/>
+      </item>
+      <item value="51" name="SoundSelect">
+        <mandatoryConform/>
+      </item>
+      <item value="52" name="InputSelect">
+        <mandatoryConform/>
+      </item>
+      <item value="53" name="DisplayInformation">
+        <mandatoryConform/>
+      </item>
+      <item value="54" name="Help">
+        <mandatoryConform/>
+      </item>
+      <item value="55" name="PageUp">
+        <mandatoryConform/>
+      </item>
+      <item value="56" name="PageDown">
+        <mandatoryConform/>
+      </item>
+      <item value="64" name="Power">
+        <mandatoryConform/>
+      </item>
+      <item value="65" name="VolumeUp">
+        <mandatoryConform/>
+      </item>
+      <item value="66" name="VolumeDown">
+        <mandatoryConform/>
+      </item>
+      <item value="67" name="Mute">
+        <mandatoryConform/>
+      </item>
+      <item value="68" name="Play">
+        <mandatoryConform/>
+      </item>
+      <item value="69" name="Stop">
+        <mandatoryConform/>
+      </item>
+      <item value="70" name="Pause">
+        <mandatoryConform/>
+      </item>
+      <item value="71" name="Record">
+        <mandatoryConform/>
+      </item>
+      <item value="72" name="Rewind">
+        <mandatoryConform/>
+      </item>
+      <item value="73" name="FastForward">
+        <mandatoryConform/>
+      </item>
+      <item value="74" name="Eject">
+        <mandatoryConform/>
+      </item>
+      <item value="75" name="Forward">
+        <mandatoryConform/>
+      </item>
+      <item value="76" name="Backward">
+        <mandatoryConform/>
+      </item>
+      <item value="77" name="StopRecord">
+        <mandatoryConform/>
+      </item>
+      <item value="78" name="PauseRecord">
+        <mandatoryConform/>
+      </item>
+      <item value="79" name="Reserved">
+        <mandatoryConform/>
+      </item>
+      <item value="80" name="Angle">
+        <mandatoryConform/>
+      </item>
+      <item value="81" name="SubPicture">
+        <mandatoryConform/>
+      </item>
+      <item value="82" name="VideoOnDemand">
+        <mandatoryConform/>
+      </item>
+      <item value="83" name="ElectronicProgramGuide">
+        <mandatoryConform/>
+      </item>
+      <item value="84" name="TimerProgramming">
+        <mandatoryConform/>
+      </item>
+      <item value="85" name="InitialConfiguration">
+        <mandatoryConform/>
+      </item>
+      <item value="86" name="SelectBroadcastType">
+        <mandatoryConform/>
+      </item>
+      <item value="87" name="SelectSoundPresentation">
+        <mandatoryConform/>
+      </item>
+      <item value="96" name="PlayFunction">
+        <mandatoryConform/>
+      </item>
+      <item value="97" name="PausePlayFunction">
+        <mandatoryConform/>
+      </item>
+      <item value="98" name="RecordFunction">
+        <mandatoryConform/>
+      </item>
+      <item value="99" name="PauseRecordFunction">
+        <mandatoryConform/>
+      </item>
+      <item value="100" name="StopFunction">
+        <mandatoryConform/>
+      </item>
+      <item value="101" name="MuteFunction">
+        <mandatoryConform/>
+      </item>
+      <item value="102" name="RestoreVolumeFunction">
+        <mandatoryConform/>
+      </item>
+      <item value="103" name="TuneFunction">
+        <mandatoryConform/>
+      </item>
+      <item value="104" name="SelectMediaFunction">
+        <mandatoryConform/>
+      </item>
+      <item value="105" name="SelectAvInputFunction">
+        <mandatoryConform/>
+      </item>
+      <item value="106" name="SelectAudioInputFunction">
+        <mandatoryConform/>
+      </item>
+      <item value="107" name="PowerToggleFunction">
+        <mandatoryConform/>
+      </item>
+      <item value="108" name="PowerOffFunction">
+        <mandatoryConform/>
+      </item>
+      <item value="109" name="PowerOnFunction">
+        <mandatoryConform/>
+      </item>
+      <item value="113" name="F1Blue">
+        <mandatoryConform/>
+      </item>
+      <item value="114" name="F2Red">
+        <mandatoryConform/>
+      </item>
+      <item value="115" name="F3Green">
+        <mandatoryConform/>
+      </item>
+      <item value="116" name="F4Yellow">
+        <mandatoryConform/>
+      </item>
+      <item value="117" name="F5">
+        <mandatoryConform/>
+      </item>
+      <item value="118" name="Data">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="StatusEnum">
+      <item value="0" name="Success" summary="Succeeded">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="UnsupportedKey" summary="Key code is not supported.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="InvalidKeyInCurrentState" summary="Requested key code is invalid in the context of the responder's current state.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+  </dataTypes>
+  <commands>
+    <command id="0x00" name="SendKey" response="SendKeyResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="KeyCode" type="CecKeyCodeEnum">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x01" name="SendKeyResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Status" type="StatusEnum">
+        <mandatoryConform/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Label-Cluster-FixedLabel.xml b/zcl-builtin/matter/new-data-model/Label-Cluster-FixedLabel.xml
new file mode 100644
index 0000000000000000000000000000000000000000..52c433d0647d4a26c81dd4c06703b9bd775b35ea
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Label-Cluster-FixedLabel.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0040" name="Fixed Label" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="derived" baseCluster="Label" role="utility" picsCode="FLABEL" scope="Endpoint"/>
+  <dataTypes/>
+  <attributes>
+    <attribute id="0x0000" name="LabelList" type="list[LabelStruct Type]" default="empty">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Label-Cluster-Label.xml b/zcl-builtin/matter/new-data-model/Label-Cluster-Label.xml
new file mode 100644
index 0000000000000000000000000000000000000000..df1238c7fbc9631f715dfe4b0bfea78cc7388661
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Label-Cluster-Label.xml
@@ -0,0 +1,82 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="" name="Label" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="LABEL" scope="Endpoint"/>
+  <dataTypes>
+    <struct name="LabelStruct">
+      <field id="0" name="Label" type="string" default="empty">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="16"/>
+      </field>
+      <field id="1" name="Value" type="string" default="empty">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="16"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="LabelList" type="list[LabelStruct Type]" default="empty">
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="allowed" value="derived"/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Label-Cluster-UserLabel.xml b/zcl-builtin/matter/new-data-model/Label-Cluster-UserLabel.xml
new file mode 100644
index 0000000000000000000000000000000000000000..4e9c7715eb781b7a9d4c63d7c2af833087a10843
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Label-Cluster-UserLabel.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0041" name="User Label" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="derived" baseCluster="Label" role="utility" picsCode="ULABEL" scope="Endpoint"/>
+  <dataTypes/>
+  <attributes>
+    <attribute id="0x0000" name="LabelList" type="list[LabelStruct Type]" default="empty">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="min" value="4"/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/LaundryDryerControls.xml b/zcl-builtin/matter/new-data-model/LaundryDryerControls.xml
new file mode 100644
index 0000000000000000000000000000000000000000..d2bc94acfd9fcbc34e89c1c26087d4b69151d775
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/LaundryDryerControls.xml
@@ -0,0 +1,76 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x004a" name="Laundry Dryer Controls" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="DRYERCTRL" scope="Endpoint"/>
+  <attributes>
+    <attribute id="0x0000" name="SupportedDrynessLevels" type="list[&lt;&lt; semtag &gt;&gt;]">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="max" value="16"/>
+    </attribute>
+    <attribute id="0x0001" name="SelectedDrynessLevel" type="uint8" default="desc">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="15"/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/LaundryWasherControls.xml b/zcl-builtin/matter/new-data-model/LaundryWasherControls.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a3e49ac700d5eb34d9b5eec3f0506373e81d7ec0
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/LaundryWasherControls.xml
@@ -0,0 +1,129 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0053" name="Laundry Washer Controls" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="WASHERCTRL" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="SPIN" name="Spin" summary="Multiple spin speeds supported">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="RINSE" name="Rinse" summary="Multiple rinse cycles supported">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="NumberOfRinsesEnum">
+      <item value="0" name="None" summary="This laundry mode does not perform rinse cycles">
+        <mandatoryConform>
+          <feature name="RINSE"/>
+        </mandatoryConform>
+      </item>
+      <item value="1" name="Normal" summary="This laundry mode performs normal rinse cycles determined by the manufacturer">
+        <mandatoryConform>
+          <feature name="RINSE"/>
+        </mandatoryConform>
+      </item>
+      <item value="2" name="Extra" summary="This laundry mode performs an extra rinse cycle">
+        <mandatoryConform>
+          <feature name="RINSE"/>
+        </mandatoryConform>
+      </item>
+      <item value="3" name="Max" summary="This laundry mode performs the maximum number of rinse cycles determined by the manufacturer">
+        <mandatoryConform>
+          <feature name="RINSE"/>
+        </mandatoryConform>
+      </item>
+    </enum>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="SpinSpeeds" type="list">
+      <entry type="string">
+        <constraint type="maxLength" value="64"/>
+      </entry>
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="SPIN"/>
+      </mandatoryConform>
+      <constraint type="maxCount" value="16"/>
+    </attribute>
+    <attribute id="0x0001" name="SpinSpeedCurrent" type="uint8" default="desc">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="SPIN"/>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="15"/>
+    </attribute>
+    <attribute id="0x0002" name="NumberOfRinses" type="NumberOfRinsesEnum" default="1">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="RINSE"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0003" name="SupportedRinses" type="list[NumberOfRinsesEnum Type]">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="RINSE"/>
+      </mandatoryConform>
+      <constraint type="max" value="4"/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/LevelControl.xml b/zcl-builtin/matter/new-data-model/LevelControl.xml
new file mode 100644
index 0000000000000000000000000000000000000000..3401a531fff6e516a5dba154368de59108f061da
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/LevelControl.xml
@@ -0,0 +1,305 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0008" name="Level Control" revision="5">
+  <revisionHistory>
+    <revision revision="1" summary="Global mandatory ClusterRevision attribute added"/>
+    <revision revision="2" summary="Added Options attribute, state change table; ZLO 1.0; Base cluster (no change)
+             CCB 2085 1775 2281 2147"/>
+    <revision revision="3" summary="CCB 2574 2616 2659 2702 2814 2818 2819 2898"/>
+    <revision revision="4" summary="FeatureMap support with On/Off, Lighting and Frequency features"/>
+    <revision revision="5" summary="New data model format and notation"/>
+  </revisionHistory>
+  <clusterIds>
+    <clusterId id="0x001c" name="Pulse Width Modulation"/>
+  </clusterIds>
+  <classification hierarchy="base" role="application" picsCode="LVL" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="OO" name="OnOff" default="1" summary="Dependency with the On/Off cluster">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="LT" name="Lighting" default="0" summary="Behavior that supports lighting applications">
+      <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.">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="MoveModeEnum">
+      <item value="0" name="Up" summary="Increase the level">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Down" summary="Decrease the level">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <bitmap name="OptionsBitmap">
+      <bitfield name="ExecuteIfOff" bit="0" summary="Dependency on On/Off cluster">
+        <mandatoryConform>
+          <orTerm>
+            <feature name="LT"/>
+            <feature name="OO"/>
+          </orTerm>
+        </mandatoryConform>
+      </bitfield>
+      <bitfield name="CoupleColorTempToLevel" bit="1" summary="Dependency on Color Control cluster">
+        <mandatoryConform>
+          <feature name="LT"/>
+        </mandatoryConform>
+      </bitfield>
+    </bitmap>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="CurrentLevel" type="uint8" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="true" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="MinLevel" to="MaxLevel"/>
+    </attribute>
+    <attribute id="0x0001" name="RemainingTime" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="LT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0002" name="MinLevel" type="uint8" default="1">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform>
+        <feature name="LT"/>
+      </optionalConform>
+      <constraint type="between" from="1" to="MaxLevel"/>
+    </attribute>
+    <attribute id="0x0002" name="MinLevel" type="uint8" default="0">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform>
+        <notTerm>
+          <feature name="LT"/>
+        </notTerm>
+      </optionalConform>
+      <constraint type="between" from="0" to="MaxLevel"/>
+    </attribute>
+    <attribute id="0x0003" name="MaxLevel" type="uint8" default="254">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="between" from="MinLevel" to="254"/>
+    </attribute>
+    <attribute id="0x0004" name="CurrentFrequency" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="true" persistence="volatile" reportable="true"/>
+      <mandatoryConform>
+        <feature name="FQ"/>
+      </mandatoryConform>
+      <constraint type="between" from="MinFrequency" to="MaxFrequency"/>
+    </attribute>
+    <attribute id="0x0005" name="MinFrequency" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="FQ"/>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="MaxFrequency"/>
+    </attribute>
+    <attribute id="0x0006" name="MaxFrequency" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="FQ"/>
+      </mandatoryConform>
+      <constraint type="min" value="MinFrequency"/>
+    </attribute>
+    <attribute id="0x000f" name="Options" type="OptionsBitmap" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0010" name="OnOffTransitionTime" type="uint16" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0011" name="OnLevel" type="uint8" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="MinLevel" to="MaxLevel"/>
+    </attribute>
+    <attribute id="0x0012" name="OnTransitionTime" type="uint16" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0013" name="OffTransitionTime" type="uint16" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0014" name="DefaultMoveRate" type="uint8" default="MS">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x4000" name="StartUpCurrentLevel" type="uint8" default="MS">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="LT"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="MoveToLevel" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Level" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="254"/>
+      </field>
+      <field id="1" name="TransitionTime" type="uint16">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="OptionsOverride" type="OptionsBitmap" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x01" name="Move" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="MoveMode" type="MoveModeEnum">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="Rate" type="uint8">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="OptionsOverride" type="OptionsBitmap" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x02" name="Step" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="StepMode" type="MoveModeEnum">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="StepSize" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="TransitionTime" type="uint16">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="4" name="OptionsOverride" type="OptionsBitmap" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x03" name="Stop" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="OptionsMask" type="map8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="OptionsOverride" type="OptionsBitmap" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x04" name="MoveToLevelWithOnOff" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x05" name="MoveWithOnOff" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x06" name="StepWithOnOff" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x07" name="StopWithOnOff" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x08" name="MoveToClosestFrequency" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="FQ"/>
+      </mandatoryConform>
+      <field id="0" name="Frequency" type="uint16" default="0">
+        <mandatoryConform/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/LocalizationConfiguration.xml b/zcl-builtin/matter/new-data-model/LocalizationConfiguration.xml
new file mode 100644
index 0000000000000000000000000000000000000000..af416c7472bc4ede7f5cde26e0e7343a8380aaa1
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/LocalizationConfiguration.xml
@@ -0,0 +1,76 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x002b" name="Localization Configuration" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="LCFG" scope="Node"/>
+  <attributes>
+    <attribute id="0x0000" name="ActiveLocale" type="&lt;&lt;ref_DataTypeString&gt;&gt;" default="MS">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="max" value="35"/>
+    </attribute>
+    <attribute id="0x0001" name="SupportedLocales" type="&lt;&lt;ref_DataTypeList&gt;&gt;[&lt;&lt;ref_DataTypeString&gt;&gt;]" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/LocalizationTimeFormat.xml b/zcl-builtin/matter/new-data-model/LocalizationTimeFormat.xml
new file mode 100644
index 0000000000000000000000000000000000000000..4b5e33b8183ff258706ceebc1809f7361baaebbc
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/LocalizationTimeFormat.xml
@@ -0,0 +1,144 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x002c" name="Time Format Localization" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="LTIME" scope="Node"/>
+  <features>
+    <feature bit="0" code="CALFMT" name="CalendarFormat" summary="The Node can be configured to use different calendar formats when conveying values to a user.">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="CalendarTypeEnum">
+      <item value="0" name="Buddhist" summary="Dates conveyed using the Buddhist calendar">
+        <optionalConform choice="a" more="true"/>
+      </item>
+      <item value="1" name="Chinese" summary="Dates conveyed using the Chinese calendar">
+        <optionalConform choice="a" more="true"/>
+      </item>
+      <item value="2" name="Coptic" summary="Dates conveyed using the Coptic calendar">
+        <optionalConform choice="a" more="true"/>
+      </item>
+      <item value="3" name="Ethiopian" summary="Dates conveyed using the Ethiopian calendar">
+        <optionalConform choice="a" more="true"/>
+      </item>
+      <item value="4" name="Gregorian" summary="Dates conveyed using the Gregorian calendar">
+        <optionalConform choice="a" more="true"/>
+      </item>
+      <item value="5" name="Hebrew" summary="Dates conveyed using the Hebrew calendar">
+        <optionalConform choice="a" more="true"/>
+      </item>
+      <item value="6" name="Indian" summary="Dates conveyed using the Indian calendar">
+        <optionalConform choice="a" more="true"/>
+      </item>
+      <item value="7" name="Islamic" summary="Dates conveyed using the Islamic calendar">
+        <optionalConform choice="a" more="true"/>
+      </item>
+      <item value="8" name="Japanese" summary="Dates conveyed using the Japanese calendar">
+        <optionalConform choice="a" more="true"/>
+      </item>
+      <item value="9" name="Korean" summary="Dates conveyed using the Korean calendar">
+        <optionalConform choice="a" more="true"/>
+      </item>
+      <item value="10" name="Persian" summary="Dates conveyed using the Persian calendar">
+        <optionalConform choice="a" more="true"/>
+      </item>
+      <item value="11" name="Taiwanese" summary="Dates conveyed using the Taiwanese calendar">
+        <optionalConform choice="a" more="true"/>
+      </item>
+      <item value="255" name="UseActiveLocale" summary="calendar implied from active locale">
+        <optionalConform choice="a" more="true"/>
+      </item>
+    </enum>
+    <enum name="HourFormatEnum">
+      <item value="0" name="12hr" summary="Time conveyed with a 12-hour clock">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="24hr" summary="Time conveyed with a 24-hour clock">
+        <mandatoryConform/>
+      </item>
+      <item value="255" name="UseActiveLocale" summary="Use active locale clock">
+        <mandatoryConform/>
+      </item>
+    </enum>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="HourFormat" type="HourFormatEnum">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="ActiveCalendarType" type="CalendarTypeEnum">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="CALFMT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0002" name="SupportedCalendarTypes" type="&lt;&lt;ref_DataTypeList&gt;&gt;[CalendarTypeEnum Type]" default="N/A">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="CALFMT"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/LocalizationUnit.xml b/zcl-builtin/matter/new-data-model/LocalizationUnit.xml
new file mode 100644
index 0000000000000000000000000000000000000000..cc3bdd5876fea24335ea6d0e4ec01e288d34c76a
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/LocalizationUnit.xml
@@ -0,0 +1,90 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x002d" name="Unit Localization" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="LUNIT" scope="Node"/>
+  <features>
+    <feature bit="0" code="TEMP" name="TemperatureUnit" summary="The Node can be configured to use different units of temperature when conveying values to a user.">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="TempUnitEnum">
+      <item value="0" name="Fahrenheit" summary="Temperature conveyed in Fahrenheit">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Celsius" summary="Temperature conveyed in Celsius">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Kelvin" summary="Temperature conveyed in Kelvin">
+        <mandatoryConform/>
+      </item>
+    </enum>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="TemperatureUnit" type="TempUnitEnum" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="TEMP"/>
+      </mandatoryConform>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/LowPower.xml b/zcl-builtin/matter/new-data-model/LowPower.xml
new file mode 100644
index 0000000000000000000000000000000000000000..ab0715e3532265820dd6ca0960c2ba958a06bde4
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/LowPower.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0508" name="Low Power" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="LOWPOWER" scope="Endpoint"/>
+  <commands>
+    <command id="0x00" name="Sleep" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/MediaInput.xml b/zcl-builtin/matter/new-data-model/MediaInput.xml
new file mode 100644
index 0000000000000000000000000000000000000000..f391346688f93f1029723bc40febef6029216657
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/MediaInput.xml
@@ -0,0 +1,162 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0507" name="Media Input" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="MEDIAINPUT" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="NU" name="NameUpdates" summary="Supports updates to the input names">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="InputTypeEnum">
+      <item value="0" name="Internal" summary="Indicates content not coming from a physical input.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Aux">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Coax">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Composite">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="HDMI">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="Input">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="Line">
+        <mandatoryConform/>
+      </item>
+      <item value="7" name="Optical">
+        <mandatoryConform/>
+      </item>
+      <item value="8" name="Video">
+        <mandatoryConform/>
+      </item>
+      <item value="9" name="SCART">
+        <mandatoryConform/>
+      </item>
+      <item value="10" name="USB">
+        <mandatoryConform/>
+      </item>
+      <item value="11" name="Other">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <struct name="InputInfoStruct">
+      <field id="0" name="Index" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="InputType" type="InputTypeEnum">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="2" name="Name" type="string">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="Description" type="string">
+        <mandatoryConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="InputList" type="list[InputInfoStruct Type]">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="CurrentInput" type="uint8">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="SelectInput" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Index" type="uint8">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x01" name="ShowInputStatus" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x02" name="HideInputStatus" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x03" name="RenameInput" response="Y">
+      <access invokePrivilege="manage"/>
+      <mandatoryConform>
+        <feature name="NU"/>
+      </mandatoryConform>
+      <field id="0" name="Index" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Name" type="string">
+        <mandatoryConform/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/MediaPlayback.xml b/zcl-builtin/matter/new-data-model/MediaPlayback.xml
new file mode 100644
index 0000000000000000000000000000000000000000..c4da89fa2ea0598f3097f08e61f9c20f8cc64e5b
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/MediaPlayback.xml
@@ -0,0 +1,248 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0506" name="Media Playback" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="MEDIAPLAYBACK" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="AS" name="AdvancedSeek" summary="Enables clients to implement more advanced media seeking behavior in their user interface, such as for example a &quot;seek bar&quot;.">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="VS" name="VariableSpeed" summary="Support for commands to support variable speed playback on media that supports it.">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="PlaybackStateEnum">
+      <item value="0" name="Playing" summary="Media is currently playing (includes FF and REW)">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Paused" summary="Media is currently paused">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="NotPlaying" summary="Media is not currently playing">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Buffering" summary="Media is not currently buffering and playback will start when buffer has been filled">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="StatusEnum">
+      <item value="0" name="Success" summary="Succeeded">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="InvalidStateForCommand" summary="Requested playback command is invalid in the current playback state.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="NotAllowed" summary="Requested playback command is not allowed in the current playback state.
+                                    For example, attempting to fast-forward during a commercial might return NotAllowed.">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="NotActive" summary="This endpoint is not active for playback.">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="SpeedOutOfRange" summary="The FastForward or Rewind Command was issued but the media is already playing
+                                    back at the fastest speed supported by the server in the respective direction.">
+        <mandatoryConform>
+          <feature name="VS"/>
+        </mandatoryConform>
+      </item>
+      <item value="5" name="SeekOutOfRange" summary="The Seek Command was issued with a value of position outside of the allowed seek range of the media.">
+        <mandatoryConform>
+          <feature name="AS"/>
+        </mandatoryConform>
+      </item>
+    </enum>
+    <struct name="PlaybackPositionStruct">
+      <field id="0" name="UpdatedAt" type="epoch-us">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Position" type="uint64">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="CurrentState" type="PlaybackStateEnum">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0001" name="StartTime" type="epoch-us" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="AS"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0002" name="Duration" type="uint64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="AS"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0003" name="SampledPosition" type="PlaybackPositionStruct" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="AS"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0004" name="PlaybackSpeed" type="single" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="AS"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0005" name="SeekRangeEnd" type="uint64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="AS"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0006" name="SeekRangeStart" type="uint64" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="AS"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="Play" response="PlaybackResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x01" name="Pause" response="PlaybackResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x02" name="Stop" response="PlaybackResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x03" name="StartOver" response="PlaybackResponse">
+      <access invokePrivilege="operate"/>
+      <optionalConform/>
+    </command>
+    <command id="0x04" name="Previous" response="PlaybackResponse">
+      <access invokePrivilege="operate"/>
+      <optionalConform/>
+    </command>
+    <command id="0x05" name="Next" response="PlaybackResponse">
+      <access invokePrivilege="operate"/>
+      <optionalConform/>
+    </command>
+    <command id="0x06" name="Rewind" response="PlaybackResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="VS"/>
+      </mandatoryConform>
+    </command>
+    <command id="0x07" name="FastForward" response="PlaybackResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="VS"/>
+      </mandatoryConform>
+    </command>
+    <command id="0x08" name="SkipForward" response="PlaybackResponse">
+      <access invokePrivilege="operate"/>
+      <optionalConform/>
+      <field id="0" name="DeltaPositionMilliseconds" type="uint64">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x09" name="SkipBackward" response="PlaybackResponse">
+      <access invokePrivilege="operate"/>
+      <optionalConform/>
+      <field id="0" name="DeltaPositionMilliseconds" type="uint64">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x0a" name="PlaybackResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Status" type="StatusEnum">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="Data" type="string">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x0b" name="Seek" response="PlaybackResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="AS"/>
+      </mandatoryConform>
+      <field id="0" name="Position" type="uint64">
+        <mandatoryConform/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Messages.xml b/zcl-builtin/matter/new-data-model/Messages.xml
new file mode 100644
index 0000000000000000000000000000000000000000..350e82c1d51e00346e7906b05afe4f38ee69b77b
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Messages.xml
@@ -0,0 +1,300 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+Connectivity Standards Alliance +
+508 Second Street, Suite 206 +
+Davis, CA 95616, USA
+
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved. This
+information within this document is the property of the Connectivity Standards
+Alliance and its use and disclosure are restricted.
+
+Elements of Connectivity Standards Alliance specifications may be subject to third
+party intellectual property rights, including without limitation,
+patent, copyright or trademark rights (such a third party may or may
+not be a member of the Connectivity Standards Alliance). The Connectivity Standards Alliance is not
+responsible and shall not be held responsible in any manner for
+identifying or failing to identify any or all such third party
+intellectual property rights.
+
+This document and the information contained herein are provided on an
+"AS IS" basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE
+OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD
+PARTIES (INCLUDING WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS
+INCLUDING PATENT, COPYRIGHT OR TRADEMARK RIGHTS) OR (B) ANY IMPLIED
+WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE
+OR NON-INFRINGEMENT. IN NO EVENT WILL THE CONNECTIVITY STANDARDS ALLIANCE BE LIABLE
+FOR ANY LOSS OF PROFITS, LOSS OF BUSINESS, LOSS OF USE OF DATA,
+INTERRUPTION OF BUSINESS, OR FOR ANY OTHER DIRECT, INDIRECT, SPECIAL
+OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL DAMAGES OF ANY
+KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT OR THE
+INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF
+SUCH LOSS OR DAMAGE.
+
+All company, brand and product names may be trademarks that are the
+sole property of their respective owners.
+
+This legal notice must be included on all copies of this document that
+are made.
+
+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="0x0097" name="Messages" revision="3">
+  <revisionHistory>
+    <revision revision="1" summary="mandatory global ClusterRevision attribute added"/>
+    <revision revision="2" summary="Updated from SE1.4 version; CCB 1819"/>
+    <revision revision="3" summary="Matter Release; renamed from EnergyMessaging to Messages"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="MESS" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="CONF" name="ReceivedConfirmation">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="RESP" name="ConfirmationResponse">
+      <optionalConform>
+        <feature name="CONF"/>
+      </optionalConform>
+    </feature>
+    <feature bit="2" code="RPLY" name="ConfirmationReply">
+      <optionalConform>
+        <feature name="CONF"/>
+      </optionalConform>
+    </feature>
+    <feature bit="3" code="PROT" name="ProtectedMessages">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <number name="MessageID" type=""/>
+    <enum name="FutureMessagePreferenceEnum">
+      <item value="0" name="Allowed" summary="Similar messages are allowed">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Increased" summary="Similar messages should be sent more often">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Reduced" summary="Similar messages should be sent less often">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Disallowed" summary="Similar messages should not be sent">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="Banned" summary="No further messages should be sent">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="MessagePriorityEnum">
+      <item value="0" name="Low" summary="Message to be transferred with a low level of importance">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Medium" summary="Message to be transferred with a medium level of importance">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="High" summary="Message to be transferred with a high level of importance">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Critical" summary="Message to be transferred with a critical level of importance">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <bitmap name="MessageControlBitmap">
+      <bitfield name="ConfirmationRequired" bit="0" summary="Message requires confirmation from user">
+        <mandatoryConform>
+          <feature name="CONF"/>
+        </mandatoryConform>
+      </bitfield>
+      <bitfield name="ResponseRequired" bit="1" summary="Message requires response from user">
+        <mandatoryConform>
+          <feature name="RESP"/>
+        </mandatoryConform>
+      </bitfield>
+      <bitfield name="ReplyMessage" bit="2" summary="Message supports reply message from user">
+        <mandatoryConform>
+          <feature name="RPLY"/>
+        </mandatoryConform>
+      </bitfield>
+      <bitfield name="MessageConfirmed" bit="3" summary="Message has already been confirmed">
+        <mandatoryConform>
+          <feature name="CONF"/>
+        </mandatoryConform>
+      </bitfield>
+      <bitfield name="MessageProtected" bit="4" summary="Message required PIN/password protection">
+        <mandatoryConform>
+          <feature name="PROT"/>
+        </mandatoryConform>
+      </bitfield>
+    </bitmap>
+    <struct name="MessageResponseOptionStruct">
+      <field id="0" name="MessageResponseID" type="uint32">
+        <access read="true" write="true"/>
+        <mandatoryConform>
+          <feature name="RESP"/>
+        </mandatoryConform>
+        <constraint type="min" value="1"/>
+      </field>
+      <field id="1" name="Label" type="string">
+        <access read="true" write="true"/>
+        <mandatoryConform>
+          <feature name="RPLY"/>
+        </mandatoryConform>
+        <constraint type="maxLength" value="32"/>
+      </field>
+    </struct>
+    <struct name="MessageStruct">
+      <field id="0" name="MessageID" type="MessageID">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Priority" type="MessagePriorityEnum" default="0">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="MessageControl" type="MessageControlBitmap" default="0">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="StartTime" type="epoch-s" default="0">
+        <access read="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="Duration" type="uint16" default="0">
+        <access read="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="5" name="MessageText" type="string">
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="maxLength" value="256"/>
+      </field>
+      <field id="6" name="Responses" type="list[MessageResponseOptionStruct Type]" default="empty">
+        <access read="true"/>
+        <mandatoryConform>
+          <feature name="RESP"/>
+        </mandatoryConform>
+        <constraint type="max" value="4"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="Messages" type="list[MessageStruct Type]" default="empty">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="max" value="8"/>
+    </attribute>
+    <attribute id="0x0001" name="ActiveMessageIDs" type="list[MessageID Type]" default="empty">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="PresentMessagesRequest" response="Y">
+      <access invokePrivilege="operate" fabricScoped="true"/>
+      <mandatoryConform/>
+      <field id="0" name="Messages" type="list[MessageStruct Type]">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x01" name="CancelMessagesRequest" response="Y">
+      <access invokePrivilege="operate" fabricScoped="true"/>
+      <mandatoryConform/>
+      <field id="0" name="MessageIDs" type="list[MessageID Type]">
+        <mandatoryConform/>
+      </field>
+    </command>
+  </commands>
+  <events>
+    <event id="0x00" name="MessageQueued" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+      <field id="0" name="MessageID" type="MessageID">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x01" name="MessagePresented" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+      <field id="0" name="MessageID" type="MessageID">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x02" name="MessageComplete" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+      <field id="0" name="MessageID" type="MessageID">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="ResponseID" type="uint32" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform>
+          <feature name="RESP"/>
+        </mandatoryConform>
+      </field>
+      <field id="2" name="Reply" type="string" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform>
+          <feature name="RPLY"/>
+        </mandatoryConform>
+        <constraint type="maxLength" value="256"/>
+      </field>
+      <field id="3" name="FutureMessagesPreference" type="FutureMessagePreferenceEnum" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/MicrowaveOvenControl.xml b/zcl-builtin/matter/new-data-model/MicrowaveOvenControl.xml
new file mode 100644
index 0000000000000000000000000000000000000000..aa6017b2aaffc0e7af384882008cb5cd3996f7b8
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/MicrowaveOvenControl.xml
@@ -0,0 +1,123 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x050f" name="Microwave Oven Control" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="MWOCTRL" scope="Endpoint"/>
+  <attributes>
+    <attribute id="0x0001" name="CookTime" type="elapsed-s" default="30">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="between" from="1" to="65535"/>
+    </attribute>
+    <attribute id="0x0002" name="PowerSetting" type="uint8" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0003" name="MinPower" type="uint8" default="10">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform/>
+      <constraint type="between" from="1" to="MaxPower"/>
+    </attribute>
+    <attribute id="0x0004" name="MaxPower" type="uint8" default="100">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <attribute name="MinPower"/>
+      </mandatoryConform>
+      <constraint type="between" from="MinPower" to="100"/>
+    </attribute>
+    <attribute id="0x0005" name="PowerStep" type="uint8" default="10">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <attribute name="MinPower"/>
+      </mandatoryConform>
+      <constraint type="between" from="1" to="MaxPower"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="SetCookingParameters" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="CookMode" type="uint8" default="Normal">
+        <optionalConform choice="a" more="true"/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="CookTime" type="elapsed-s" default="MS">
+        <optionalConform choice="a" more="true"/>
+        <constraint type="between" from="1" to="65535"/>
+      </field>
+      <field id="2" name="PowerSetting" type="uint8" default="MaxPower">
+        <optionalConform choice="a" more="true"/>
+        <constraint type="between" from="MinPower" to="MaxPower"/>
+      </field>
+    </command>
+    <command id="0x01" name="AddMoreTime" response="Y">
+      <access invokePrivilege="operate"/>
+      <optionalConform/>
+      <field id="0" name="TimeToAdd" type="elapsed-s">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="65535"/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/ModeBase.xml b/zcl-builtin/matter/new-data-model/ModeBase.xml
new file mode 100644
index 0000000000000000000000000000000000000000..98464b7a67122bb6573fdab872c3277e27d45310
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/ModeBase.xml
@@ -0,0 +1,176 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="" name="Mode Base" revision="2">
+  <revisionHistory>
+    <revision revision="1" summary="Initial version"/>
+    <revision revision="2" summary="ChangeToModeResponse command: StatusText must be provided for InvalidInMode status"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="MODB" scope="Endpoint"/>
+  <features>
+    <feature name="base reserved" summary="This range of bits is reserved for this base cluster">
+      <optionalConform/>
+    </feature>
+    <feature name="derived reserved" summary="This range of bits is reserved for derived clusters">
+      <optionalConform/>
+    </feature>
+    <feature bit="0" code="DEPONOFF" name="OnOff" summary="Dependency with the OnOff cluster">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <struct name="ModeOptionStruct">
+      <field id="0" name="Label" type="string" default="MS">
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="maxLength" value="64"/>
+      </field>
+      <field id="1" name="Mode" type="uint8" default="MS">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="ModeTags" type="list[ModeTagStruct Type]" default="MS">
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="max" value="8"/>
+      </field>
+    </struct>
+    <struct name="ModeTagStruct">
+      <field id="0" name="MfgCode" type="vendor-id">
+        <access read="true"/>
+        <optionalConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="Value" type="enum16">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute name="base reserved">
+      <mandatoryConform/>
+    </attribute>
+    <attribute name="derived reserved">
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0000" name="SupportedModes" type="list[ModeOptionStruct Type]" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="2" to="255"/>
+    </attribute>
+    <attribute id="0x0001" name="CurrentMode" type="uint8" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="true" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0002" name="StartUpMode" type="uint8" default="MS">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0003" name="OnMode" type="uint8" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="DEPONOFF"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command name="ChangeToMode" response="ChangeToModeResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="NewMode" type="uint8">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command name="ChangeToModeResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Status" type="enum8">
+        <enum>
+          <item from="0x00" to="0x3F" name="CommonCodes" summary="Common standard values defined in the generic Mode Base cluster specification.">
+            <mandatoryConform/>
+          </item>
+          <item from="0x40" to="0x7F" name="DerivedClusterCodes" summary="Derived cluster specific standard values defined in the derived Mode Base cluster specification.">
+            <mandatoryConform/>
+          </item>
+          <item from="0x80" to="0xBF" name="MfgCodes" summary="Manufacturer specific values. For the derived Mode Base cluster instances, these are manufacturer specific under the derived cluster.">
+            <mandatoryConform/>
+          </item>
+        </enum>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="StatusText" type="string">
+        <constraint type="maxLength" value="64"/>
+      </field>
+    </command>
+    <command name="base reserved" direction="commandToClient">
+      <access invokePrivilege="operate"/>
+    </command>
+    <command name="derived reserved" direction="commandToClient">
+      <access invokePrivilege="operate"/>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/ModeSelect.xml b/zcl-builtin/matter/new-data-model/ModeSelect.xml
new file mode 100644
index 0000000000000000000000000000000000000000..b9bbe00dd821fdc754ec2641e33b3d195a465695
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/ModeSelect.xml
@@ -0,0 +1,150 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0050" name="Mode Select" revision="2">
+  <revisionHistory>
+    <revision revision="1" summary="Initial version"/>
+    <revision revision="2" summary="The MfgCode field was marked non-nullable. Updated the related text. Reorder sections."/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="MOD" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="DEPONOFF" name="OnOff" summary="Dependency with the OnOff cluster">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <struct name="ModeOptionStruct">
+      <field id="0" name="Label" type="string" default="MS">
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="maxLength" value="64"/>
+      </field>
+      <field id="1" name="Mode" type="uint8" default="MS">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="SemanticTags" type="list" default="MS">
+        <entry type="SemanticTagStruct"/>
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="maxCount" value="64"/>
+      </field>
+    </struct>
+    <struct name="SemanticTagStruct">
+      <field id="0" name="MfgCode" type="vendor-id">
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="Value" type="enum16">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="Description" type="string" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="maxLength" value="64"/>
+    </attribute>
+    <attribute id="0x0001" name="StandardNamespace" type="enum16" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0002" name="SupportedModes" type="list" default="MS">
+      <entry type="ModeOptionStruct"/>
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="maxCount" value="255"/>
+    </attribute>
+    <attribute id="0x0003" name="CurrentMode" type="uint8" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="true" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0004" name="StartUpMode" type="uint8" default="MS">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0005" name="OnMode" type="uint8" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="DEPONOFF"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="ChangeToMode" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="NewMode" type="uint8">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Mode_Dishwasher.xml b/zcl-builtin/matter/new-data-model/Mode_Dishwasher.xml
new file mode 100644
index 0000000000000000000000000000000000000000..93220234dd6169a9b94b535e27485e6813c6d9cf
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Mode_Dishwasher.xml
@@ -0,0 +1,92 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0059" name="Dishwasher Mode" revision="2">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+    <revision revision="2" summary="ChangeToModeResponse command: StatusText must be provided for InvalidInMode status"/>
+  </revisionHistory>
+  <classification hierarchy="derived" baseCluster="Mode Base" role="application" picsCode="DISHM" scope="Endpoint"/>
+  <dataTypes>
+    <struct name="ModeOptionStruct">
+      <field id="0" name="Label">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Mode">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="ModeTags">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="8"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="SupportedModes">
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="CurrentMode">
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="StartUpMode">
+      <provisionalConform/>
+    </attribute>
+    <attribute id="0x0003" name="OnMode">
+      <provisionalConform/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Mode_EVSE.xml b/zcl-builtin/matter/new-data-model/Mode_EVSE.xml
new file mode 100644
index 0000000000000000000000000000000000000000..bcf4bef7e34257995e9932178f6f6a37e28efc10
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Mode_EVSE.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="" name="EVSE Mode" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="derived" baseCluster="Mode Base" role="application" picsCode="EVSEM" scope="Endpoint"/>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Mode_Laundry.xml b/zcl-builtin/matter/new-data-model/Mode_Laundry.xml
new file mode 100644
index 0000000000000000000000000000000000000000..319ba3101d3c0e31b7dd03fc793ed26f21cd5ccf
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Mode_Laundry.xml
@@ -0,0 +1,92 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0051" name="Laundry Mode" revision="2">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+    <revision revision="2" summary="ChangeToModeResponse command: StatusText must be provided for InvalidInMode status"/>
+  </revisionHistory>
+  <classification hierarchy="derived" baseCluster="Mode Base" role="application" picsCode="LWM" scope="Endpoint"/>
+  <dataTypes>
+    <struct name="ModeOptionStruct">
+      <field id="0" name="Label">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Mode">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="ModeTags">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="8"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="SupportedModes">
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="CurrentMode">
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="StartUpMode">
+      <provisionalConform/>
+    </attribute>
+    <attribute id="0x0003" name="OnMode">
+      <provisionalConform/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Mode_LaundryWasher.xml b/zcl-builtin/matter/new-data-model/Mode_LaundryWasher.xml
new file mode 100644
index 0000000000000000000000000000000000000000..40972ce46c491f429e559bbb9e97f52b6c88eca8
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Mode_LaundryWasher.xml
@@ -0,0 +1,91 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0051" name="Laundry Washer Mode" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="derived" baseCluster="Mode Base" role="application" picsCode="LWM" scope="Endpoint"/>
+  <dataTypes>
+    <struct name="ModeOptionStruct">
+      <field id="0" name="Label">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Mode">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="ModeTags">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="8"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="SupportedModes">
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="CurrentMode">
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="StartUpMode">
+      <provisionalConform/>
+    </attribute>
+    <attribute id="0x0003" name="OnMode">
+      <provisionalConform/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Mode_MicrowaveOven.xml b/zcl-builtin/matter/new-data-model/Mode_MicrowaveOven.xml
new file mode 100644
index 0000000000000000000000000000000000000000..f9aac46fc1a53ff3fd1effd681e15bdf6295e4d9
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Mode_MicrowaveOven.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x005e" name="Microwave Oven Mode" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="derived" baseCluster="Mode Base" role="application" picsCode="MWOM" 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">
+      <disallowConform/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="ChangeToMode" direction="commandToClient">
+      <access invokePrivilege="operate"/>
+      <disallowConform/>
+    </command>
+    <command id="0x01" name="ChangeToModeResponse" direction="commandToClient">
+      <access invokePrivilege="operate"/>
+      <disallowConform/>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Mode_Oven.xml b/zcl-builtin/matter/new-data-model/Mode_Oven.xml
new file mode 100644
index 0000000000000000000000000000000000000000..aaef2a99c6c399b1a55b1f4e87ab368fe5201c53
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Mode_Oven.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0049" name="Oven Mode" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="derived" baseCluster="Mode Base" role="application" picsCode="OTCCM" scope="Endpoint"/>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Mode_RVCClean.xml b/zcl-builtin/matter/new-data-model/Mode_RVCClean.xml
new file mode 100644
index 0000000000000000000000000000000000000000..0a49c2700d0a7070c20d418e3f4e3caed7f78c0a
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Mode_RVCClean.xml
@@ -0,0 +1,78 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0055" name="RVC Clean Mode" revision="2">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+    <revision revision="2" summary="Add constraint about changing cleaning modes while the RVC Run Mode cluster is in a non-Idle mode. ChangeToModeResponse command: StatusText must be provided for InvalidInMode status"/>
+  </revisionHistory>
+  <classification hierarchy="derived" baseCluster="Mode Base" role="application" picsCode="RVCCLEANM" scope="Endpoint"/>
+  <dataTypes>
+    <struct name="ModeOptionStruct">
+      <field id="0" name="Label">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Mode">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="ModeTags">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="8"/>
+      </field>
+    </struct>
+  </dataTypes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Mode_RVCRun.xml b/zcl-builtin/matter/new-data-model/Mode_RVCRun.xml
new file mode 100644
index 0000000000000000000000000000000000000000..950e52e94dfde9817a699654d2396b1c1108e320
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Mode_RVCRun.xml
@@ -0,0 +1,79 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0054" name="RVC Run Mode" revision="2">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+    <revision revision="2" summary="Add constraint about switching from non-Idle to non-Idle modes. ChangeToModeResponse command: StatusText must be provided for InvalidInMode status"/>
+  </revisionHistory>
+  <classification hierarchy="derived" baseCluster="Mode Base" role="application" picsCode="RVCRUNM" scope="Endpoint"/>
+  <dataTypes>
+    <struct name="ModeOptionStruct">
+      <field id="0" name="Label">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Mode">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="ModeTags">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="8"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes/>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Mode_Refrigerator.xml b/zcl-builtin/matter/new-data-model/Mode_Refrigerator.xml
new file mode 100644
index 0000000000000000000000000000000000000000..c820a76055e4385c4befb3aa199ce9b921ed3864
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Mode_Refrigerator.xml
@@ -0,0 +1,92 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0052" name="Refrigerator And Temperature Controlled Cabinet Mode" revision="2">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+    <revision revision="2" summary="ChangeToModeResponse command: StatusText must be provided for InvalidInMode status"/>
+  </revisionHistory>
+  <classification hierarchy="derived" baseCluster="Mode Base" role="application" picsCode="TCCM" scope="Endpoint"/>
+  <dataTypes>
+    <struct name="ModeOptionStruct">
+      <field id="0" name="Label">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Mode">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="ModeTags">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="8"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="SupportedModes">
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="CurrentMode">
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="StartUpMode">
+      <provisionalConform/>
+    </attribute>
+    <attribute id="0x0003" name="OnMode">
+      <provisionalConform/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Mode_WaterHeater.xml b/zcl-builtin/matter/new-data-model/Mode_WaterHeater.xml
new file mode 100644
index 0000000000000000000000000000000000000000..eb440ab2483a3827a6fad9dcad37ed5b47ac9aa9
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Mode_WaterHeater.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="" name="Water Heater Mode" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="derived" baseCluster="Mode Base" role="application" picsCode="WHM" scope="Endpoint"/>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/NetworkCommissioningCluster.xml b/zcl-builtin/matter/new-data-model/NetworkCommissioningCluster.xml
new file mode 100644
index 0000000000000000000000000000000000000000..4cfdc57a9ba8b76518e602f0cef4f9a1ae7ccd4b
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/NetworkCommissioningCluster.xml
@@ -0,0 +1,511 @@
+<?xml version="1.0"?>
+<!--
+link:../matter-defines.adoc[]
+
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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>
+    <revision revision="1" summary="Initial Release"/>
+    <revision revision="2" summary="Support determining capabilities for Wi-Fi and Thread interfaces. Additional Wi-Fi directed scanning requirements."/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="CNET" scope="Node"/>
+  <features>
+    <feature bit="0" code="WI" name="WiFiNetworkInterface" summary="Wi-Fi related features">
+      <optionalConform choice="a"/>
+    </feature>
+    <feature bit="1" code="TH" name="ThreadNetworkInterface" summary="Thread related features">
+      <optionalConform choice="a"/>
+    </feature>
+    <feature bit="2" code="ET" name="EthernetNetworkInterface" summary="Ethernet related features">
+      <optionalConform choice="a"/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="NetworkCommissioningStatusEnum">
+      <item value="0" name="Success" summary="OK, no error">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="OutOfRange" summary="[[ref_OutOfRange]] Value Outside Range">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="BoundsExceeded" summary="[[ref_BoundsExceeded]] A collection would exceed its size limit">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="NetworkIDNotFound" summary="[[ref_NetworkIdNotFound]] The NetworkID is not among the collection of added networks">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="DuplicateNetworkID" summary="[[ref_DuplicateNetworkId]] The NetworkID is already among the collection of added networks">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="NetworkNotFound" summary="[[ref_NetworkNotFound]] Cannot find AP: SSID Not found">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="RegulatoryError" summary="[[ref_RegulatoryError]] Cannot find AP: Mismatch on band/channels/regulatory domain / 2.4GHz vs 5GHz">
+        <mandatoryConform/>
+      </item>
+      <item value="7" name="AuthFailure" summary="[[ref_AuthFailure]] Cannot associate due to authentication failure">
+        <mandatoryConform/>
+      </item>
+      <item value="8" name="UnsupportedSecurity" summary="[[ref_UnsupportedSecurity]] Cannot associate due to unsupported security mode">
+        <mandatoryConform/>
+      </item>
+      <item value="9" name="OtherConnectionFailure" summary="[[ref_OtherConnectionFailure]] Other association failure">
+        <mandatoryConform/>
+      </item>
+      <item value="10" name="IPV6Failed" summary="[[ref_Ipv6Failed]] Failure to generate an IPv6 address">
+        <mandatoryConform/>
+      </item>
+      <item value="11" name="IPBindFailed" summary="[[ref_IpBindFailed]] Failure to bind Wi-Fi +&lt;-&gt;+ IP interfaces">
+        <mandatoryConform/>
+      </item>
+      <item value="12" name="UnknownError" summary="[[ref_UnknownError]] Unknown error">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="WiFiBandEnum">
+      <item value="0" name="2G4" summary="2.4GHz - 2.401GHz to 2.495GHz (802.11b/g/n/ax)">
+        <optionalConform choice="a" more="true"/>
+      </item>
+      <item value="1" name="3G65" summary="3.65GHz - 3.655GHz to 3.695GHz (802.11y)">
+        <optionalConform choice="a" more="true"/>
+      </item>
+      <item value="2" name="5G" summary="5GHz - 5.150GHz to 5.895GHz (802.11a/n/ac/ax)">
+        <optionalConform choice="a" more="true"/>
+      </item>
+      <item value="3" name="6G" summary="6GHz - 5.925GHz to 7.125GHz (802.11ax / Wi-Fi 6E)">
+        <optionalConform choice="a" more="true"/>
+      </item>
+      <item value="4" name="60G" summary="60GHz - 57.24GHz to 70.20GHz (802.11ad/ay)">
+        <optionalConform choice="a" more="true"/>
+      </item>
+      <item value="5" name="1G" summary="Sub-1GHz - 755MHz to 931MHz (802.11ah)">
+        <optionalConform choice="a" more="true"/>
+      </item>
+    </enum>
+    <bitmap name="ThreadCapabilitiesBitmap">
+      <bitfield name="IsBorderRouterCapable" bit="0" summary="Thread Border Router functionality is present">
+        <optionalConform/>
+      </bitfield>
+      <bitfield name="IsRouterCapable" bit="1" summary="Router mode is supported (interface could be in router or REED mode)">
+        <optionalConform/>
+      </bitfield>
+      <bitfield name="IsSleepyEndDeviceCapable" bit="2" summary="Sleepy end-device mode is supported">
+        <optionalConform/>
+      </bitfield>
+      <bitfield name="IsFullThreadDevice" bit="3" summary="Device is a full Thread device (opposite of Minimal Thread Device)">
+        <optionalConform/>
+      </bitfield>
+      <bitfield name="IsSynchronizedSleepyEndDeviceCapable" bit="4" summary="Synchronized sleepy end-device mode is supported">
+        <optionalConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="WiFiSecurityBitmap">
+      <bitfield name="Unencrypted" bit="0" summary="Supports unencrypted Wi-Fi">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="WEP" bit="1" summary="Supports Wi-Fi using WEP security">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="WPA-PERSONAL" bit="2" summary="Supports Wi-Fi using WPA-Personal security">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="WPA2-PERSONAL" bit="3" summary="Supports Wi-Fi using WPA2-Personal security">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="WPA3-PERSONAL" bit="4" summary="Supports Wi-Fi using WPA3-Personal security">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <struct name="NetworkInfoStruct">
+      <field id="0" name="NetworkID" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="32"/>
+      </field>
+      <field id="1" name="Connected" type="bool">
+        <mandatoryConform/>
+      </field>
+    </struct>
+    <struct name="ThreadInterfaceScanResultStruct">
+      <field id="0" name="PanId" type="uint16">
+        <mandatoryConform>
+          <feature name="TH"/>
+        </mandatoryConform>
+        <constraint type="between" from="0" to="65534"/>
+      </field>
+      <field id="1" name="ExtendedPanId" type="uint64">
+        <mandatoryConform>
+          <feature name="TH"/>
+        </mandatoryConform>
+      </field>
+      <field id="2" name="NetworkName" type="&lt;&lt;ref_DataTypeString&gt;&gt;">
+        <mandatoryConform>
+          <feature name="TH"/>
+        </mandatoryConform>
+        <constraint type="between" from="1" to="16"/>
+      </field>
+      <field id="3" name="Channel" type="uint16">
+        <mandatoryConform>
+          <feature name="TH"/>
+        </mandatoryConform>
+      </field>
+      <field id="4" name="Version" type="uint8">
+        <mandatoryConform>
+          <feature name="TH"/>
+        </mandatoryConform>
+      </field>
+      <field id="5" name="ExtendedAddress" type="hwadr">
+        <mandatoryConform>
+          <feature name="TH"/>
+        </mandatoryConform>
+      </field>
+      <field id="6" name="RSSI" type="int8">
+        <mandatoryConform>
+          <feature name="TH"/>
+        </mandatoryConform>
+      </field>
+      <field id="7" name="LQI" type="uint8">
+        <mandatoryConform>
+          <feature name="TH"/>
+        </mandatoryConform>
+      </field>
+    </struct>
+    <struct name="WiFiInterfaceScanResultStruct">
+      <field id="0" name="Security" type="WiFiSecurityBitmap">
+        <mandatoryConform>
+          <feature name="WI"/>
+        </mandatoryConform>
+      </field>
+      <field id="1" name="SSID" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <mandatoryConform>
+          <feature name="WI"/>
+        </mandatoryConform>
+        <constraint type="max" value="32"/>
+      </field>
+      <field id="2" name="BSSID" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <mandatoryConform>
+          <feature name="WI"/>
+        </mandatoryConform>
+        <constraint type="allowed" value="6"/>
+      </field>
+      <field id="3" name="Channel" type="uint16">
+        <mandatoryConform>
+          <feature name="WI"/>
+        </mandatoryConform>
+      </field>
+      <field id="4" name="WiFiBand" type="WiFiBandEnum">
+        <optionalConform>
+          <feature name="WI"/>
+        </optionalConform>
+      </field>
+      <field id="5" name="RSSI" type="int8">
+        <optionalConform>
+          <feature name="WI"/>
+        </optionalConform>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="MaxNetworks" type="uint8">
+      <access read="true" readPrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="min" value="1"/>
+    </attribute>
+    <attribute id="0x0001" name="Networks" type="&lt;&lt;ref_DataTypeList&gt;&gt;[NetworkInfoStruct]" default="empty">
+      <access read="true" readPrivilege="admin"/>
+      <mandatoryConform/>
+      <constraint type="max" value="MaxNetworks"/>
+    </attribute>
+    <attribute id="0x0002" name="ScanMaxTimeSeconds" type="uint8">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="WI"/>
+          <feature name="TH"/>
+        </orTerm>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0003" name="ConnectMaxTimeSeconds" type="uint8">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="WI"/>
+          <feature name="TH"/>
+        </orTerm>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0004" name="InterfaceEnabled" type="bool" default="true">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="admin"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0005" name="LastNetworkingStatus" type="NetworkCommissioningStatusEnum" default="null">
+      <access read="true" readPrivilege="admin"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0006" name="LastNetworkID" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;" default="null">
+      <access read="true" readPrivilege="admin"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="1" to="32"/>
+    </attribute>
+    <attribute id="0x0007" name="LastConnectErrorValue" type="int32" default="null">
+      <access read="true" readPrivilege="admin"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0008" name="SupportedWiFiBands" type="&lt;&lt;ref_DataTypeList&gt;&gt;[WiFiBandEnum]" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="WI"/>
+      </mandatoryConform>
+      <constraint type="min" value="1"/>
+    </attribute>
+    <attribute id="0x0009" name="SupportedThreadFeatures" type="ThreadCapabilitiesBitmap" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="TH"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x000a" name="ThreadVersion" type="uint16" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="TH"/>
+      </mandatoryConform>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="ScanNetworks" response="ScanNetworksResponse">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="WI"/>
+          <feature name="TH"/>
+        </orTerm>
+      </mandatoryConform>
+      <field id="0" name="SSID" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;" default="null">
+        <quality nullable="true"/>
+        <optionalConform>
+          <feature name="WI"/>
+        </optionalConform>
+        <constraint type="between" from="1" to="32"/>
+      </field>
+      <field id="1" name="Breadcrumb" type="uint64">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x01" name="ScanNetworksResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="WI"/>
+          <feature name="TH"/>
+        </orTerm>
+      </mandatoryConform>
+      <field id="0" name="NetworkingStatus" type="NetworkCommissioningStatusEnum">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="DebugText" type="&lt;&lt;ref_DataTypeString&gt;&gt;">
+        <optionalConform/>
+        <constraint type="max" value="512"/>
+      </field>
+      <field id="2" name="WiFiScanResults" type="&lt;&lt;ref_DataTypeList&gt;&gt;[WiFiInterfaceScanResultStruct Type]">
+        <mandatoryConform>
+          <feature name="WI"/>
+        </mandatoryConform>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="ThreadScanResults" type="&lt;&lt;ref_DataTypeList&gt;&gt;[ThreadInterfaceScanResultStruct Type]">
+        <mandatoryConform>
+          <feature name="TH"/>
+        </mandatoryConform>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x02" name="AddOrUpdateWiFiNetwork" response="NetworkConfigResponse">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <feature name="WI"/>
+      </mandatoryConform>
+      <field id="0" name="SSID" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <mandatoryConform/>
+        <constraint type="max" value="32"/>
+      </field>
+      <field id="1" name="Credentials" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <mandatoryConform/>
+        <constraint type="max" value="64"/>
+      </field>
+      <field id="2" name="Breadcrumb" type="uint64">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x03" name="AddOrUpdateThreadNetwork" response="NetworkConfigResponse">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <feature name="TH"/>
+      </mandatoryConform>
+      <field id="0" name="OperationalDataset" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <mandatoryConform/>
+        <constraint type="max" value="254"/>
+      </field>
+      <field id="1" name="Breadcrumb" type="uint64">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x04" name="RemoveNetwork" response="NetworkConfigResponse">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="WI"/>
+          <feature name="TH"/>
+        </orTerm>
+      </mandatoryConform>
+      <field id="0" name="NetworkID" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="32"/>
+      </field>
+      <field id="1" name="Breadcrumb" type="uint64">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x05" name="NetworkConfigResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="WI"/>
+          <feature name="TH"/>
+        </orTerm>
+      </mandatoryConform>
+      <field id="0" name="NetworkingStatus" type="NetworkCommissioningStatusEnum">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="DebugText" type="&lt;&lt;ref_DataTypeString&gt;&gt;">
+        <optionalConform/>
+        <constraint type="max" value="512"/>
+      </field>
+      <field id="2" name="NetworkIndex" type="uint8">
+        <optionalConform/>
+        <constraint type="between" from="0" to="(MaxNetworks"/>
+      </field>
+    </command>
+    <command id="0x06" name="ConnectNetwork" response="ConnectNetworkResponse">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="WI"/>
+          <feature name="TH"/>
+        </orTerm>
+      </mandatoryConform>
+      <field id="0" name="NetworkID" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="32"/>
+      </field>
+      <field id="1" name="Breadcrumb" type="uint64">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x07" name="ConnectNetworkResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="WI"/>
+          <feature name="TH"/>
+        </orTerm>
+      </mandatoryConform>
+      <field id="0" name="NetworkingStatus" type="NetworkCommissioningStatusEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="DebugText" type="&lt;&lt;ref_DataTypeString&gt;&gt;">
+        <optionalConform/>
+      </field>
+      <field id="2" name="ErrorValue" type="int32">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x08" name="ReorderNetwork" response="NetworkConfigResponse">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform>
+        <orTerm>
+          <feature name="WI"/>
+          <feature name="TH"/>
+        </orTerm>
+      </mandatoryConform>
+      <field id="0" name="NetworkID" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="32"/>
+      </field>
+      <field id="1" name="NetworkIndex" type="uint8">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="2" name="Breadcrumb" type="uint64">
+        <optionalConform/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/NetworkIdentityManagement.xml b/zcl-builtin/matter/new-data-model/NetworkIdentityManagement.xml
new file mode 100644
index 0000000000000000000000000000000000000000..9a0442909c4006a539d0a87dea584d865efd6f8c
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/NetworkIdentityManagement.xml
@@ -0,0 +1,148 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="" name="Network Identity Management" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="TODO" scope="Endpoint"/>
+  <dataTypes>
+    <number name="Client Table" type=""/>
+    <struct name="ClientStruct">
+      <field id="0" name="ClientNumber" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="2047"/>
+      </field>
+      <field id="1" name="ClientIdentifier" type="octets">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="20"/>
+      </field>
+      <field id="2" name="Endorsements" type="list[EndorsementStruct Type]">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="SupportedFabrics"/>
+      </field>
+    </struct>
+    <struct name="EndorsementStruct">
+      <field id="0" name="NodeID" type="node-id" default="null">
+        <access fabricSensitive="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="NetworkIdentifier" type="octets" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="maxLength" value="20"/>
+    </attribute>
+    <attribute id="0x0001" name="NetworkIdentity" type="octets" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="maxLength" value="140"/>
+    </attribute>
+    <attribute id="0x0002" name="Clients" type="list[ClientStruct Type]">
+      <access read="true" readPrivilege="admin"/>
+      <mandatoryConform/>
+      <constraint type="max" value="ClientTableSize"/>
+    </attribute>
+    <attribute id="0x0003" name="ClientTableSize" type="uint16" default="500">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="500" to="2047"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="SetNetworkIdentity" response="Y">
+      <access invokePrivilege="admin" timed="true"/>
+      <mandatoryConform/>
+      <field id="0" name="NetworkIdentity" type="octets">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="140"/>
+      </field>
+      <field id="1" name="PrivateKey" type="octets">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="32"/>
+      </field>
+    </command>
+    <command id="0x01" name="AddOrUpdateClient" response="Y">
+      <access invokePrivilege="admin" timed="true"/>
+      <mandatoryConform/>
+      <field id="0" name="ClientIdentity" type="octets">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="140"/>
+      </field>
+      <field id="1" name="NodeID" type="node-id">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x02" name="RemoveClient" response="Y">
+      <access invokePrivilege="admin" timed="true"/>
+      <mandatoryConform/>
+      <field id="0" name="ClientNumber" type="uint16">
+        <optionalConform choice="a"/>
+      </field>
+      <field id="1" name="ClientIdentifier" type="octets">
+        <optionalConform choice="a"/>
+        <constraint type="maxLength" value="20"/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/OTASoftwareUpdate.xml b/zcl-builtin/matter/new-data-model/OTASoftwareUpdate.xml
new file mode 100644
index 0000000000000000000000000000000000000000..ede56fffcfc20b040c045b8ea0d21ce836d22eef
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/OTASoftwareUpdate.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0"?>
+<!--
+link:../matter-defines.adoc[]
+
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="" name="Over-the-Air (OTA) Software Update" revision=""/>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/OccupancySensing.xml b/zcl-builtin/matter/new-data-model/OccupancySensing.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a13c5f492de0b412ad537cba6b4e24521181343f
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/OccupancySensing.xml
@@ -0,0 +1,181 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0406" name="Occupancy Sensing" revision="3">
+  <revisionHistory>
+    <revision revision="1" summary="Mandatory global ClusterRevision attribute added"/>
+    <revision revision="2" summary="Physical Contact Occupancy feature with mandatory OccupancySensorTypeBitmap"/>
+    <revision revision="3" summary="New data model format and notation"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="OCC" scope="Endpoint"/>
+  <dataTypes>
+    <enum name="OccupancySensorTypeEnum">
+      <item value="0" name="PIR" summary="Indicates a passive infrared sensor.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Ultrasonic" summary="Indicates a ultrasonic sensor.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="PIRAndUltrasonic" summary="Indicates a passive infrared and ultrasonic sensor.">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="PhysicalContact" summary="Indicates a physical contact sensor.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <bitmap name="OccupancyBitmap">
+      <bitfield name="Occupied" bit="0" summary="Indicates the sensed occupancy state">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="OccupancySensorTypeBitmap">
+      <bitfield name="PIR" bit="0" summary="Indicates a passive infrared sensor.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Ultrasonic" bit="1" summary="Indicates a ultrasonic sensor.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="PhysicalContact" bit="2" summary="Indicates a physical contact sensor.">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="Occupancy" type="OccupancyBitmap">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="1"/>
+    </attribute>
+    <attribute id="0x0001" name="OccupancySensorType" type="OccupancySensorTypeEnum" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0002" name="OccupancySensorTypeBitmap" type="OccupancySensorTypeBitmap">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="7"/>
+    </attribute>
+    <attribute id="0x0010" name="PIROccupiedToUnoccupiedDelay" type="uint16" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0011" name="PIRUnoccupiedToOccupiedDelay" type="uint16" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <otherwiseConform>
+        <mandatoryConform>
+          <attribute name="PIRUnoccupiedToOccupiedThreshold"/>
+        </mandatoryConform>
+        <optionalConform/>
+      </otherwiseConform>
+    </attribute>
+    <attribute id="0x0012" name="PIRUnoccupiedToOccupiedThreshold" type="uint8" default="1">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <otherwiseConform>
+        <mandatoryConform>
+          <attribute name="PIRUnoccupiedToOccupiedDelay"/>
+        </mandatoryConform>
+        <optionalConform/>
+      </otherwiseConform>
+      <constraint type="between" from="1" to="254"/>
+    </attribute>
+    <attribute id="0x0020" name="UltrasonicOccupiedToUnoccupiedDelay" type="uint16" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0021" name="UltrasonicUnoccupiedToOccupiedDelay" type="uint16" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <otherwiseConform>
+        <mandatoryConform>
+          <attribute name="UltrasonicUnoccupiedToOccupiedThreshold"/>
+        </mandatoryConform>
+        <optionalConform/>
+      </otherwiseConform>
+    </attribute>
+    <attribute id="0x0022" name="UltrasonicUnoccupiedToOccupiedThreshold" type="uint8" default="1">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <otherwiseConform>
+        <mandatoryConform>
+          <attribute name="UltrasonicUnoccupiedToOccupiedDelay"/>
+        </mandatoryConform>
+        <optionalConform/>
+      </otherwiseConform>
+      <constraint type="between" from="1" to="254"/>
+    </attribute>
+    <attribute id="0x0030" name="PhysicalContactOccupiedToUnoccupiedDelay" type="uint16" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0031" name="PhysicalContactUnoccupiedToOccupiedDelay" type="uint16" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0032" name="PhysicalContactUnoccupiedToOccupiedThreshold" type="uint8" default="1">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <otherwiseConform>
+        <mandatoryConform>
+          <attribute name="PhysicalContactUnoccupiedToOccupiedDelay"/>
+        </mandatoryConform>
+        <optionalConform/>
+      </otherwiseConform>
+      <constraint type="between" from="1" to="254"/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/OnOff.xml b/zcl-builtin/matter/new-data-model/OnOff.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e37daee9964f2402b9768ca796041110a0f1c3e9
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/OnOff.xml
@@ -0,0 +1,233 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021-2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0006" name="On/Off" revision="6">
+  <revisionHistory>
+    <revision revision="1" summary="Global mandatory ClusterRevision attribute added; CCB 1555"/>
+    <revision revision="2" summary="ZLO 1.0: StartUpOnOff"/>
+    <revision revision="3" summary="FeatureMap global attribute support with Level Control and Lighting feature"/>
+    <revision revision="4" summary="New data model format and notation"/>
+    <revision revision="5" summary="Addition of Dead Front behavior and associated FeatureMap entry"/>
+    <revision revision="6" summary="Addition of OffOnly feature and associated FeatureMap entry"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="OO" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="LT" name="Lighting" summary="Behavior that supports lighting applications.">
+      <optionalConform>
+        <notTerm>
+          <feature name="OFFONLY"/>
+        </notTerm>
+      </optionalConform>
+    </feature>
+    <feature bit="1" code="DF" name="DeadFrontBehavior" summary="Device has DeadFrontBehavior Feature">
+      <optionalConform>
+        <notTerm>
+          <feature name="OFFONLY"/>
+        </notTerm>
+      </optionalConform>
+    </feature>
+    <feature bit="2" code="OFFONLY" name="OffOnly" summary="Device supports the OffOnly Feature feature">
+      <optionalConform>
+        <notTerm>
+          <orTerm>
+            <feature name="LT"/>
+            <feature name="DF"/>
+          </orTerm>
+        </notTerm>
+      </optionalConform>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="DelayedAllOffEffectVariantEnum">
+      <item value="0" name="DelayedOffFastFade" summary="Fade to off in 0.8 seconds">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="NoFade" summary="No fade">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="DelayedOffSlowFade" summary="50% dim down in 0.8 seconds then fade to off in 12 seconds">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="DyingLightEffectVariantEnum">
+      <item value="0" name="DyingLightFadeOff" summary="20% dim up in 0.5s then fade to off in 1 second">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="EffectIdentifierEnum">
+      <item value="0" name="DelayedAllOff" summary="Delayed All Off">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="DyingLight" summary="Dying Light">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="StartUpOnOffEnum">
+      <item value="0" name="Off" summary="Set the OnOff attribute to FALSE">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="On" summary="Set the OnOff attribute to TRUE">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Toggle" summary="If the previous value of the OnOff attribute is
+                    equal to FALSE, set the OnOff attribute to TRUE.
+                    If the previous value of the OnOff attribute is
+                    equal to TRUE, set the OnOff attribute to FALSE
+                    (toggle).">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <bitmap name="OnOffControlBitmap">
+      <bitfield name="AcceptOnlyWhenOn" bit="0" summary="Indicates a command is only accepted when in On state.">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="OnOff" type="bool" default="FALSE">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="true" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x4000" name="GlobalSceneControl" type="bool" default="TRUE">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="LT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x4001" name="OnTime" type="uint16" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="LT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x4002" name="OffWaitTime" type="uint16" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="LT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x4003" name="StartUpOnOff" type="StartUpOnOffEnum" default="MS">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="LT"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="Off" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x01" name="On" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <notTerm>
+          <feature name="OFFONLY"/>
+        </notTerm>
+      </mandatoryConform>
+    </command>
+    <command id="0x02" name="Toggle" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <notTerm>
+          <feature name="OFFONLY"/>
+        </notTerm>
+      </mandatoryConform>
+    </command>
+    <command id="0x40" name="OffWithEffect" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="LT"/>
+      </mandatoryConform>
+      <field id="0" name="EffectIdentifier" type="EffectIdentifierEnum">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="EffectVariant" type="enum8" default="0">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x41" name="OnWithRecallGlobalScene" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="LT"/>
+      </mandatoryConform>
+    </command>
+    <command id="0x42" name="OnWithTimedOff" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="LT"/>
+      </mandatoryConform>
+      <field id="0" name="OnOffControl" type="OnOffControlBitmap">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="1"/>
+      </field>
+      <field id="1" name="OnTime" type="uint16">
+        <mandatoryConform/>
+        <constraint type="max" value="0xFFFE"/>
+      </field>
+      <field id="2" name="OffWaitTime" type="uint16">
+        <mandatoryConform/>
+        <constraint type="max" value="0xFFFE"/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/OperationalCredentialCluster.xml b/zcl-builtin/matter/new-data-model/OperationalCredentialCluster.xml
new file mode 100644
index 0000000000000000000000000000000000000000..fda594a380d1f1c3afccea3e922f4170b26d3ecf
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/OperationalCredentialCluster.xml
@@ -0,0 +1,320 @@
+<?xml version="1.0"?>
+<!--
+link:../matter-defines.adoc[]
+
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x003e" name="Operational Credentials" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="OPCREDS" scope="Node"/>
+  <dataTypes>
+    <number name="Attestation Elements" type=""/>
+    <number name="Attestation Information" type=""/>
+    <number name="NOCSR Elements" type=""/>
+    <number name="NOCSR Information" type=""/>
+    <number name="RESP_MAX Constant" type=""/>
+    <enum name="CertificateChainTypeEnum">
+      <item value="1" name="DACCertificate" summary="Request the DER-encoded DAC certificate">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="PAICertificate" summary="Request the DER-encoded PAI certificate">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="NodeOperationalCertStatusEnum">
+      <item value="0" name="OK" summary="OK, no error">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="InvalidPublicKey" summary="[[ref_InvalidPublicKey]] Public Key in the NOC does not match the public key in the NOCSR">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="InvalidNodeOpId" summary="[[ref_InvalidOperationalId]] The Node Operational ID in the NOC is not formatted correctly.">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="InvalidNOC" summary="[[ref_InvalidNoc]] Any other validation error in NOC chain">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="MissingCsr" summary="[[ref_MissingCsr]] No record of prior CSR for which this NOC could match">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="TableFull" summary="[[ref_TableFull]] NOCs table full, cannot add another one">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="InvalidAdminSubject" summary="[[ref_InvalidAdminSubject]] Invalid CaseAdminSubject field for an AddNOC command.">
+        <mandatoryConform/>
+      </item>
+      <item value="7" summary="Reserved for future use">
+        <mandatoryConform/>
+      </item>
+      <item value="8" summary="Reserved for future use">
+        <mandatoryConform/>
+      </item>
+      <item value="9" name="FabricConflict" summary="[[ref_FabricConflict]] Trying to AddNOC instead of UpdateNOC against an existing Fabric.">
+        <mandatoryConform/>
+      </item>
+      <item value="10" name="LabelConflict" summary="[[ref_LabelConflict]] Label already exists on another Fabric.">
+        <mandatoryConform/>
+      </item>
+      <item value="11" name="InvalidFabricIndex" summary="[[ref_InvalidFabricIndex]] FabricIndex argument is invalid.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <struct name="FabricDescriptorStruct">
+      <field id="1" name="RootPublicKey" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <mandatoryConform/>
+        <constraint type="allowed" value="65"/>
+      </field>
+      <field id="2" name="VendorID" type="&lt;&lt;ref_DataTypeVendorId&gt;&gt;">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="FabricID" type="fabric-id">
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="NodeID" type="node-id">
+        <mandatoryConform/>
+      </field>
+      <field id="5" name="Label" type="string" default="&quot;">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="32"/>
+      </field>
+    </struct>
+    <struct name="NOCStruct">
+      <field id="1" name="NOC" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <access fabricSensitive="true"/>
+        <mandatoryConform/>
+        <constraint type="max" value="400"/>
+      </field>
+      <field id="2" name="ICAC" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <access fabricSensitive="true"/>
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="max" value="400"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="NOCs" type="&lt;&lt;ref_DataTypeList&gt;&gt;[NOCStruct Type]">
+      <access read="true" readPrivilege="admin"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="max" value="SupportedFabrics"/>
+    </attribute>
+    <attribute id="0x0001" name="Fabrics" type="&lt;&lt;ref_DataTypeList&gt;&gt;[FabricDescriptorStruct Type]">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="max" value="SupportedFabrics"/>
+    </attribute>
+    <attribute id="0x0002" name="SupportedFabrics" type="uint8">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="5" to="254"/>
+    </attribute>
+    <attribute id="0x0003" name="CommissionedFabrics" type="uint8">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="max" value="SupportedFabrics"/>
+    </attribute>
+    <attribute id="0x0004" name="TrustedRootCertificates" type="&lt;&lt;ref_DataTypeList&gt;&gt;[&lt;&lt;ref_DataTypeOctstr&gt;&gt;]">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0005" name="CurrentFabricIndex" type="uint8" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="AttestationRequest" response="AttestationResponse">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform/>
+      <field id="0" name="AttestationNonce" type="octets">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="32"/>
+      </field>
+    </command>
+    <command id="0x01" name="AttestationResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="AttestationElements" type="octets">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="RESP_MAX"/>
+      </field>
+      <field id="1" name="AttestationSignature" type="octets">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="64"/>
+      </field>
+    </command>
+    <command id="0x02" name="CertificateChainRequest" response="CertificateChainResponse">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform/>
+      <field id="0" name="CertificateType" type="CertificateChainTypeEnum">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x03" name="CertificateChainResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Certificate" type="octets">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="600"/>
+      </field>
+    </command>
+    <command id="0x04" name="CSRRequest" response="CSRResponse">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform/>
+      <field id="0" name="CSRNonce" type="octets">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="32"/>
+      </field>
+      <field id="1" name="IsForUpdateNOC" type="bool" default="false">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x05" name="CSRResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="NOCSRElements" type="octets">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="RESP_MAX"/>
+      </field>
+      <field id="1" name="AttestationSignature" type="octets">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="64"/>
+      </field>
+    </command>
+    <command id="0x06" name="AddNOC" response="NOCResponse">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform/>
+      <field id="0" name="NOCValue" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <mandatoryConform/>
+        <constraint type="max" value="400"/>
+      </field>
+      <field id="1" name="ICACValue" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <optionalConform/>
+        <constraint type="max" value="400"/>
+      </field>
+      <field id="2" name="IPKValue" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <mandatoryConform/>
+        <constraint type="allowed" value="16"/>
+      </field>
+      <field id="3" name="CaseAdminSubject" type="&lt;&lt;SubjectID&gt;&gt;">
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="AdminVendorId" type="&lt;&lt;ref_DataTypeVendorId&gt;&gt;">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x07" name="UpdateNOC" response="NOCResponse">
+      <access invokePrivilege="admin" fabricScoped="true"/>
+      <mandatoryConform/>
+      <field id="0" name="NOCValue" type="octets">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="400"/>
+      </field>
+      <field id="1" name="ICACValue" type="octets">
+        <optionalConform/>
+        <constraint type="maxLength" value="400"/>
+      </field>
+    </command>
+    <command id="0x08" name="NOCResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="StatusCode" type="NodeOperationalCertStatusEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="FabricIndex" type="fabric-idx">
+        <optionalConform/>
+        <constraint type="between" from="1" to="254"/>
+      </field>
+      <field id="2" name="DebugText" type="string">
+        <optionalConform/>
+        <constraint type="maxLength" value="128"/>
+      </field>
+    </command>
+    <command id="0x09" name="UpdateFabricLabel" response="NOCResponse">
+      <access invokePrivilege="admin" fabricScoped="true"/>
+      <mandatoryConform/>
+      <field id="0" name="Label" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="32"/>
+      </field>
+    </command>
+    <command id="0x0a" name="RemoveFabric" response="NOCResponse">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform/>
+      <field id="0" name="FabricIndex" type="fabric-idx">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="254"/>
+      </field>
+    </command>
+    <command id="0x0b" name="AddTrustedRootCertificate" response="Y">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform/>
+      <field id="0" name="RootCACertificate" type="&lt;&lt;ref_DataTypeOctstr&gt;&gt;">
+        <mandatoryConform/>
+        <constraint type="max" value="400"/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/OperationalState.xml b/zcl-builtin/matter/new-data-model/OperationalState.xml
new file mode 100644
index 0000000000000000000000000000000000000000..8bd11b98629864d76802baa756506ce87f2c1148
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/OperationalState.xml
@@ -0,0 +1,223 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0060" name="Operational State" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="OPSTATE" scope="Endpoint"/>
+  <dataTypes>
+    <enum name="OperationalStateEnum">
+      <item from="0x00" to="0x3F" name="GeneralStates" summary="Generally applicable values for state, defined herein">
+        <mandatoryConform/>
+      </item>
+      <item from="0x40" to="0x7F" name="DerivedClusterStates" summary="Derived Cluster defined states">
+        <mandatoryConform/>
+      </item>
+      <item from="0x80" to="0xBF" name="ManufacturerStates" summary="Vendor specific states">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <struct name="ErrorStateStruct">
+      <field id="0" name="ErrorStateID" type="enum8" default="0">
+        <enum>
+          <item from="0x00" to="0x3F" name="GeneralErrors" summary="Generally applicable values for error, defined herein">
+            <mandatoryConform/>
+          </item>
+          <item from="0x40" to="0x7F" name="DerivedClusterErrors" summary="Derived Cluster defined errors">
+            <mandatoryConform/>
+          </item>
+          <item from="0x80" to="0xBF" name="ManufacturerError" summary="Vendor specific errors">
+            <mandatoryConform/>
+          </item>
+        </enum>
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="ErrorStateLabel" type="string" default="empty">
+        <access read="true" write="true"/>
+        <constraint type="maxLength" value="64"/>
+      </field>
+      <field id="2" name="ErrorStateDetails" type="string" default="empty">
+        <access read="true" write="true"/>
+        <optionalConform/>
+        <constraint type="maxLength" value="64"/>
+      </field>
+    </struct>
+    <struct name="OperationalStateStruct">
+      <field id="0" name="OperationalStateID" type="OperationalStateEnum" default="0">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="OperationalStateLabel" type="string">
+        <access read="true" write="true"/>
+        <constraint type="maxLength" value="64"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="PhaseList" type="list" default="MS">
+      <entry type="string">
+        <constraint type="maxLength" value="64"/>
+      </entry>
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="maxCount" value="32"/>
+    </attribute>
+    <attribute id="0x0001" name="CurrentPhase" type="uint8" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0002" name="CountdownTime" type="elapsed-s" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+      <constraint type="max" value="259200"/>
+    </attribute>
+    <attribute id="0x0003" name="OperationalStateList" type="list[OperationalStateStruct Type]" default="MS">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0004" name="OperationalState" type="OperationalStateEnum">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0005" name="OperationalError" type="ErrorStateStruct">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="Pause" response="OperationalCommandResponse">
+      <access invokePrivilege="operate"/>
+      <otherwiseConform>
+        <mandatoryConform>
+          <attribute name="Resume"/>
+        </mandatoryConform>
+        <optionalConform/>
+      </otherwiseConform>
+      <field id="0" name="CommandResponseState" type="ErrorStateStruct">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x01" name="Stop" response="OperationalCommandResponse">
+      <access invokePrivilege="operate"/>
+      <otherwiseConform>
+        <mandatoryConform>
+          <attribute name="Start"/>
+        </mandatoryConform>
+        <optionalConform/>
+      </otherwiseConform>
+    </command>
+    <command id="0x02" name="Start" response="OperationalCommandResponse">
+      <access invokePrivilege="operate"/>
+      <optionalConform/>
+    </command>
+    <command id="0x03" name="Resume" response="OperationalCommandResponse">
+      <access invokePrivilege="operate"/>
+      <otherwiseConform>
+        <mandatoryConform>
+          <attribute name="Pause"/>
+        </mandatoryConform>
+        <optionalConform/>
+      </otherwiseConform>
+    </command>
+    <command id="0x04" name="OperationalCommandResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <orTerm>
+          <attribute name="Pause"/>
+          <attribute name="Stop"/>
+          <attribute name="Start"/>
+          <attribute name="Resume"/>
+        </orTerm>
+      </mandatoryConform>
+      <field id="0" name="CommandResponseState" type="ErrorStateStruct">
+        <mandatoryConform/>
+      </field>
+    </command>
+  </commands>
+  <events>
+    <event id="0x00" name="OperationalError" priority="critical">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+      <field id="0" name="ErrorState" type="ErrorStateStruct">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x01" name="OperationCompletion" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+      <field id="0" name="CompletionErrorCode" type="enum8">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="TotalOperationalTime" type="elapsed-s">
+        <quality nullable="true"/>
+        <optionalConform/>
+      </field>
+      <field id="2" name="PausedTime" type="elapsed-s">
+        <quality nullable="true"/>
+        <optionalConform/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/OperationalState_Oven.xml b/zcl-builtin/matter/new-data-model/OperationalState_Oven.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e876757887a3196624f9885839d650ff5a15c3ee
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/OperationalState_Oven.xml
@@ -0,0 +1,82 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0048" name="Oven Cavity Operational State" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial release"/>
+  </revisionHistory>
+  <classification hierarchy="derived" baseCluster="Operational State" role="application" picsCode="OVENOPSTATE" scope="Endpoint"/>
+  <dataTypes>
+    <enum name="OperationalStateEnum">
+      <item value="1" name="Running" summary="The device is operating">
+        <disallowConform/>
+      </item>
+      <item value="64" name="Preheating" summary="The device is preheating the cavity">
+        <mandatoryConform/>
+      </item>
+      <item value="65" name="Preheated" summary="The device is finished preheating the cavity">
+        <mandatoryConform/>
+      </item>
+      <item value="66" name="CoolingDown" summary="The device is finished running and is cooling down">
+        <mandatoryConform/>
+      </item>
+      <item value="67" name="SelfCleaning" summary="The device is self-cleaning and the cavity cannot be opened">
+        <mandatoryConform/>
+      </item>
+    </enum>
+  </dataTypes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/OperationalState_RVC.xml b/zcl-builtin/matter/new-data-model/OperationalState_RVC.xml
new file mode 100644
index 0000000000000000000000000000000000000000..c689156831d6f2cad21451103180a73464c7da5c
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/OperationalState_RVC.xml
@@ -0,0 +1,102 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0061" name="RVC Operational State" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial release"/>
+  </revisionHistory>
+  <classification hierarchy="derived" baseCluster="Operational State" role="application" picsCode="RVCOPSTATE" scope="Endpoint"/>
+  <dataTypes>
+    <enum name="ErrorStateEnum">
+      <item value="64" name="FailedToFindChargingDock" summary="The device has failed to find or reach the charging dock">
+        <mandatoryConform/>
+      </item>
+      <item value="65" name="Stuck" summary="The device is stuck and requires manual intervention">
+        <mandatoryConform/>
+      </item>
+      <item value="66" name="DustBinMissing" summary="The device has detected that its dust bin is missing">
+        <mandatoryConform/>
+      </item>
+      <item value="67" name="DustBinFull" summary="The device has detected that its dust bin is full">
+        <mandatoryConform/>
+      </item>
+      <item value="68" name="WaterTankEmpty" summary="The device has detected that its water tank is empty">
+        <mandatoryConform/>
+      </item>
+      <item value="69" name="WaterTankMissing" summary="The device has detected that its water tank is missing">
+        <mandatoryConform/>
+      </item>
+      <item value="70" name="WaterTankLidOpen" summary="The device has detected that its water tank lid is open">
+        <mandatoryConform/>
+      </item>
+      <item value="71" name="MopCleaningPadMissing" summary="The device has detected that its cleaning pad is missing">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="OperationalStateEnum">
+      <item value="64" name="SeekingCharger" summary="The device is en route to the charging dock">
+        <mandatoryConform/>
+      </item>
+      <item value="65" name="Charging" summary="The device is charging">
+        <mandatoryConform/>
+      </item>
+      <item value="66" name="Docked" summary="The device is on the dock, not charging">
+        <mandatoryConform/>
+      </item>
+    </enum>
+  </dataTypes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/PowerSourceCluster.xml b/zcl-builtin/matter/new-data-model/PowerSourceCluster.xml
new file mode 100644
index 0000000000000000000000000000000000000000..9b5e0def9413edad9c25c22f19c61a1ec1d73a09
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/PowerSourceCluster.xml
@@ -0,0 +1,1064 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x002f" name="Power Source" revision="2">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+    <revision revision="2" summary="Added EndpointList attribute that maps a power source to a list of endpoints"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="PS" scope="Node"/>
+  <features>
+    <feature bit="0" code="WIRED" name="Wired" summary="A wired power source">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="BAT" name="Battery" summary="A battery power source">
+      <optionalConform/>
+    </feature>
+    <feature bit="2" code="RECHG" name="Rechargeable" summary="A rechargeable battery power source">
+      <mandatoryConform>
+        <feature name="BAT"/>
+      </mandatoryConform>
+    </feature>
+    <feature bit="3" code="REPLC" name="Replaceable" summary="A replaceable battery power source">
+      <mandatoryConform>
+        <feature name="BAT"/>
+      </mandatoryConform>
+    </feature>
+    <feature bit="4" code="CHGM" name="ChargeManagement" summary="A battery with charging management">
+      <mandatoryConform>
+        <feature name="BAT"/>
+      </mandatoryConform>
+    </feature>
+    <feature bit="5" code="DCHGM" name="DischargeManagement" summary="A battery with discharging management">
+      <mandatoryConform>
+        <feature name="BAT"/>
+      </mandatoryConform>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="BatApprovedChemistryEnum">
+      <item value="0" name="Unspecified" summary="Cell chemistry is unspecified or unknown">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Alkaline" summary="Cell chemistry is alkaline">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="LithiumCarbonFluoride" summary="Cell chemistry is lithium carbon fluoride">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="LithiumChromiumOxide" summary="Cell chemistry is lithium chromium oxide">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="LithiumCopperOxide" summary="Cell chemistry is lithium copper oxide">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="LithiumIronDisulfide" summary="Cell chemistry is lithium iron disulfide">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="LithiumManganeseDioxide" summary="Cell chemistry is lithium manganese dioxide">
+        <mandatoryConform/>
+      </item>
+      <item value="7" name="LithiumThionylChloride" summary="Cell chemistry is lithium thionyl chloride">
+        <mandatoryConform/>
+      </item>
+      <item value="8" name="Magnesium" summary="Cell chemistry is magnesium">
+        <mandatoryConform/>
+      </item>
+      <item value="9" name="MercuryOxide" summary="Cell chemistry is mercury oxide">
+        <mandatoryConform/>
+      </item>
+      <item value="10" name="NickelOxyhydride" summary="Cell chemistry is nickel oxyhydride">
+        <mandatoryConform/>
+      </item>
+      <item value="11" name="SilverOxide" summary="Cell chemistry is silver oxide">
+        <mandatoryConform/>
+      </item>
+      <item value="12" name="ZincAir" summary="Cell chemistry is zinc air">
+        <mandatoryConform/>
+      </item>
+      <item value="13" name="ZincCarbon" summary="Cell chemistry is zinc carbon">
+        <mandatoryConform/>
+      </item>
+      <item value="14" name="ZincChloride" summary="Cell chemistry is zinc chloride">
+        <mandatoryConform/>
+      </item>
+      <item value="15" name="ZincManganeseDioxide" summary="Cell chemistry is zinc manganese dioxide">
+        <mandatoryConform/>
+      </item>
+      <item value="16" name="LeadAcid" summary="Cell chemistry is lead acid">
+        <mandatoryConform/>
+      </item>
+      <item value="17" name="LithiumCobaltOxide" summary="Cell chemistry is lithium cobalt oxide">
+        <mandatoryConform/>
+      </item>
+      <item value="18" name="LithiumIon" summary="Cell chemistry is lithium ion">
+        <mandatoryConform/>
+      </item>
+      <item value="19" name="LithiumIonPolymer" summary="Cell chemistry is lithium ion polymer">
+        <mandatoryConform/>
+      </item>
+      <item value="20" name="LithiumIronPhosphate" summary="Cell chemistry is lithium iron phosphate">
+        <mandatoryConform/>
+      </item>
+      <item value="21" name="LithiumSulfur" summary="Cell chemistry is lithium sulfur">
+        <mandatoryConform/>
+      </item>
+      <item value="22" name="LithiumTitanate" summary="Cell chemistry is lithium titanate">
+        <mandatoryConform/>
+      </item>
+      <item value="23" name="NickelCadmium" summary="Cell chemistry is nickel cadmium">
+        <mandatoryConform/>
+      </item>
+      <item value="24" name="NickelHydrogen" summary="Cell chemistry is nickel hydrogen">
+        <mandatoryConform/>
+      </item>
+      <item value="25" name="NickelIron" summary="Cell chemistry is nickel iron">
+        <mandatoryConform/>
+      </item>
+      <item value="26" name="NickelMetalHydride" summary="Cell chemistry is nickel metal hydride">
+        <mandatoryConform/>
+      </item>
+      <item value="27" name="NickelZinc" summary="Cell chemistry is nickel zinc">
+        <mandatoryConform/>
+      </item>
+      <item value="28" name="SilverZinc" summary="Cell chemistry is silver zinc">
+        <mandatoryConform/>
+      </item>
+      <item value="29" name="SodiumIon" summary="Cell chemistry is sodium ion">
+        <mandatoryConform/>
+      </item>
+      <item value="30" name="SodiumSulfur" summary="Cell chemistry is sodium sulfur">
+        <mandatoryConform/>
+      </item>
+      <item value="31" name="ZincBromide" summary="Cell chemistry is zinc bromide">
+        <mandatoryConform/>
+      </item>
+      <item value="32" name="ZincCerium" summary="Cell chemistry is zinc cerium">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="BatChargeFaultEnum">
+      <item value="0" name="Unspecified" summary="The Node detects an unspecified fault on this battery source.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="AmbientTooHot" summary="The Node detects the ambient temperature is above the nominal range for this battery source.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="AmbientTooCold" summary="The Node detects the ambient temperature is below the nominal range for this battery source.">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="BatteryTooHot" summary="The Node detects the temperature of this battery source is above the nominal range.">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="BatteryTooCold" summary="The Node detects the temperature of this battery source is below the nominal range.">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="BatteryAbsent" summary="The Node detects this battery source is not present.">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="BatteryOverVoltage" summary="The Node detects this battery source is over voltage.">
+        <mandatoryConform/>
+      </item>
+      <item value="7" name="BatteryUnderVoltage" summary="The Node detects this battery source is under voltage.">
+        <mandatoryConform/>
+      </item>
+      <item value="8" name="ChargerOverVoltage" summary="The Node detects the charger for this battery source is over voltage.">
+        <mandatoryConform/>
+      </item>
+      <item value="9" name="ChargerUnderVoltage" summary="The Node detects the charger for this battery source is under voltage.">
+        <mandatoryConform/>
+      </item>
+      <item value="10" name="SafetyTimeout" summary="The Node detects a charging safety timeout for this battery source.">
+        <mandatoryConform/>
+      </item>
+      <item value="11" name="ChargerOverCurrent" summary="The Node detects the charger for this battery source is over current.">
+        <mandatoryConform/>
+      </item>
+      <item value="12" name="UnexpectedVoltage" summary="The Node detects a voltage when it expected none.">
+        <mandatoryConform/>
+      </item>
+      <item value="13" name="ExpectedVoltage" summary="The Node detects no voltage when it expected one.">
+        <mandatoryConform/>
+      </item>
+      <item value="14" name="GroundFault" summary="The Node detects an unbalanced current supply.">
+        <mandatoryConform/>
+      </item>
+      <item value="15" name="ChargeSignalFailure" summary="The Node detects a failure in the signal to control charging.">
+        <mandatoryConform/>
+      </item>
+      <item value="16" name="SafetyTimeout" summary="The Node detects a charging safety timeout for this battery source.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="BatChargeLevelEnum">
+      <item value="0" name="OK" summary="Charge level is nominal">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Warning" summary="Charge level is low, intervention may soon be required.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Critical" summary="Charge level is critical, immediate intervention is required">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="BatChargePermissionsEnum">
+      <item value="0" name="Disabled" summary="The battery is not currently allowed to charge or discharge">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="ChargingEnabled" summary="The battery is currently allowed to charge">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="DischargingEnabled" summary="The battery is currently allowed to discharge">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="DisabledError" summary="The battery is not currently allowed to charge or discharge due to an error.">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="DisabledDiagnostics" summary="The battery is not currently allowed to charge or discharge due to Diagnostics Mode.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="BatChargeStateEnum">
+      <item value="0" name="Unknown" summary="Unable to determine the charging state">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="IsCharging" summary="The battery is charging">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="IsAtFullCharge" summary="The battery is at full charge">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="IsNotCharging" summary="The battery is not charging">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="IsDischarging" summary="The battery is discharging">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="IsTransitioning" summary="The battery is transitioning from one charging state to another">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="BatCommonDesignationEnum">
+      <item value="0" name="Unspecified" summary="Common type is unknown or unspecified">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="AAA" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="AA" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="C" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="D" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="4v5" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="6v0" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="7" name="9v0" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="8" name="1_2AA" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="9" name="AAAA" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="10" name="A" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="11" name="B" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="12" name="F" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="13" name="N" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="14" name="No6" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="15" name="SubC" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="16" name="A23" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="17" name="A27" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="18" name="BA5800" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="19" name="Duplex" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="20" name="4SR44" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="21" name="523" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="22" name="531" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="23" name="15v0" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="24" name="22v5" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="25" name="30v0" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="26" name="45v0" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="27" name="67v5" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="28" name="J" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="29" name="CR123A" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="30" name="CR2" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="31" name="2CR5" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="32" name="CR_P2" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="33" name="CR_V3" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="34" name="SR41" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="35" name="SR43" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="36" name="SR44" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="37" name="SR45" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="38" name="SR48" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="39" name="SR54" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="40" name="SR55" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="41" name="SR57" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="42" name="SR58" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="43" name="SR59" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="44" name="SR60" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="45" name="SR63" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="46" name="SR64" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="47" name="SR65" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="48" name="SR66" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="49" name="SR67" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="50" name="SR68" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="51" name="SR69" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="52" name="SR516" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="53" name="SR731" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="54" name="SR712" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="55" name="LR932" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="56" name="A5" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="57" name="A10" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="58" name="A13" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="59" name="A312" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="60" name="A675" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="61" name="AC41E" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="62" name="10180" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="63" name="10280" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="64" name="10440" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="65" name="14250" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="66" name="14430" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="67" name="14500" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="68" name="14650" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="69" name="15270" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="70" name="16340" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="71" name="RCR123A" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="72" name="17500" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="73" name="17670" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="74" name="18350" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="75" name="18500" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="76" name="18650" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="77" name="19670" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="78" name="25500" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="79" name="26650" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+      <item value="80" name="32600" summary="Common type is as specified">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="BatEnergyTransferStopReasonEnum">
+      <item value="0" name="BatteryStopped" summary="The battery stopped the energy transfer">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="PowerSourceStopped" summary="The power source stopped the energy transfer">
+        <mandatoryConform/>
+      </item>
+      <item value="255" name="Other" summary="The energy transfer stopped for some unknown reason">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="BatFaultEnum">
+      <item value="0" name="Unspecified" summary="The Node detects an unspecified fault on this battery power source.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="OverTemp" summary="The Node detects the temperature of this battery power source is above ideal operating conditions.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="UnderTemp" summary="The Node detects the temperature of this battery power source is below ideal operating conditions.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="BatReplaceabilityEnum">
+      <item value="0" name="Unspecified" summary="The replaceability is unspecified or unknown.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="NotReplaceable" summary="The battery is not replaceable.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="UserReplaceable" summary="The battery is replaceable by the user or customer.">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="FactoryReplaceable" summary="The battery is replaceable by an authorized factory technician.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="PowerSourceStatusEnum">
+      <item value="0" name="Unspecified" summary="Indicate the source status is not specified">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Active" summary="Indicate the source is available and currently supplying power">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Standby" summary="Indicate the source is available, but is not currently supplying power">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Unavailable" summary="Indicate the source is not currently available to supply power">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="WiredCurrentTypeEnum">
+      <item value="0" name="AC" summary="Indicates AC current">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="DC" summary="Indicates DC current">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="WiredFaultEnum">
+      <item value="0" name="Unspecified" summary="The Node detects an unspecified fault on this wired power source.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="OverVoltage" summary="The Node detects the supplied voltage is above maximum supported value for this wired power source.">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="UnderVoltage" summary="The Node detects the supplied voltage is below maximum supported value for this wired power source.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="Status" type="PowerSourceStatusEnum">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0001" name="Order" type="uint8">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="Description" type="string">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="maxLength" value="60"/>
+    </attribute>
+    <attribute id="0x0003" name="WiredAssessedInputVoltage" type="uint32">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="WIRED"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0004" name="WiredAssessedInputFrequency" type="uint16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="WIRED"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0005" name="WiredCurrentType" type="WiredCurrentTypeEnum">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="WIRED"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0006" name="WiredAssessedCurrent" type="uint32">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="WIRED"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0007" name="WiredNominalVoltage" type="uint32">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform>
+        <feature name="WIRED"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0008" name="WiredMaximumCurrent" type="uint32">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform>
+        <feature name="WIRED"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0009" name="WiredPresent" type="bool">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform>
+        <feature name="WIRED"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x000a" name="ActiveWiredFaults" type="list[WiredFaultEnum Type]">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform>
+        <feature name="WIRED"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x000b" name="BatVoltage" type="uint32">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="BAT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x000c" name="BatPercentRemaining" type="uint8">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="BAT"/>
+      </optionalConform>
+      <constraint type="between" from="0" to="200"/>
+    </attribute>
+    <attribute id="0x000d" name="BatTimeRemaining" type="uint32">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="BAT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x000e" name="BatChargeLevel" type="BatChargeLevelEnum">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="BAT"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x000f" name="BatReplacementNeeded" type="bool">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="BAT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0010" name="BatReplaceability" type="BatReplaceabilityEnum">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="BAT"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0011" name="BatPresent" type="bool">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform>
+        <feature name="BAT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0012" name="ActiveBatFaults" type="list[BatFaultEnum Type]">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform>
+        <feature name="BAT"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0013" name="BatReplacementDescription" type="string">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="REPLC"/>
+      </mandatoryConform>
+      <constraint type="maxLength" value="60"/>
+    </attribute>
+    <attribute id="0x0014" name="BatCommonDesignation" type="BatCommonDesignationEnum">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform>
+        <feature name="REPLC"/>
+      </optionalConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0015" name="BatANSIDesignation" type="string">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform>
+        <feature name="REPLC"/>
+      </optionalConform>
+      <constraint type="maxLength" value="20"/>
+    </attribute>
+    <attribute id="0x0016" name="BatIECDesignation" type="string">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform>
+        <feature name="REPLC"/>
+      </optionalConform>
+      <constraint type="maxLength" value="20"/>
+    </attribute>
+    <attribute id="0x0017" name="BatApprovedChemistry" type="BatApprovedChemistryEnum">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform>
+        <feature name="REPLC"/>
+      </optionalConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0018" name="BatCapacity" type="uint32">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform>
+        <orTerm>
+          <feature name="REPLC"/>
+          <feature name="RECHG"/>
+        </orTerm>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0019" name="BatQuantity" type="uint8">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="REPLC"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x001a" name="BatChargeState" type="BatChargeStateEnum">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="RECHG"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x001b" name="BatTimeToFullCharge" type="uint32">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="RECHG"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x001c" name="BatFunctionalWhileCharging" type="bool">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="RECHG"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x001d" name="BatChargingCurrent" type="uint32">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="RECHG"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x001e" name="ActiveBatChargeFaults" type="list[BatChargeFaultEnum Type]">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform>
+        <feature name="RECHG"/>
+      </optionalConform>
+      <constraint type="max" value="16"/>
+    </attribute>
+    <attribute id="0x001f" name="EndpointList" type="list">
+      <entry type="endpoint-no"/>
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0020" name="BatAbsMaxChargeCurrent" type="uint32" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="CHGM"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0021" name="BatAbsMinChargeCurrent" type="uint32" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="CHGM"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0022" name="BatAbsMaxDischargeCurrent" type="uint32" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="DCHGM"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0023" name="BatMaxChargeCurrent" type="uint32" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="CHGM"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0024" name="BatMinChargeCurrent" type="uint32" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="CHGM"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0025" name="BatMaxDischargeCurrent" type="uint32" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="DCHGM"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0026" name="BatChargePermissions" type="BatChargePermissionsEnum">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0027" name="BatEnableChargeTime" type="uint16" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="CHGM"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0028" name="BatEnableDischargeTime" type="uint16" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="DCHGM"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0029" name="WiredMaxAmperage" type="uint32" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="WIRED"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x002a" name="WiredAbsMaxAmperage" type="uint32" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform>
+        <feature name="WIRED"/>
+      </optionalConform>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x01" name="DisableBattery" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="CHGM"/>
+      </mandatoryConform>
+    </command>
+    <command id="0x02" name="EnableBatteryCharging" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="CHGM"/>
+      </mandatoryConform>
+      <field id="0" name="EnableTime" type="uint16" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="MinimumChargeCurrent" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="MaximumChargeCurrent" type="uint16">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x03" name="EnableBatteryDischarging" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="DCHGM"/>
+      </mandatoryConform>
+      <field id="0" name="EnableTime" type="uint16" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="MaximumDischargeCurrent" type="uint16">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x04" name="StartBatteryDiagnostics" response="Y">
+      <access invokePrivilege="operate"/>
+      <optionalConform/>
+    </command>
+  </commands>
+  <events>
+    <event id="0x00" name="WiredFaultChange" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform>
+        <feature name="WIRED"/>
+      </optionalConform>
+      <field id="0" name="Current" type="&lt;&lt;ref_DataTypeList&gt;&gt;[WiredFaultEnum Type]" default="empty">
+        <mandatoryConform/>
+        <constraint type="max" value="8"/>
+      </field>
+      <field id="1" name="Previous" type="&lt;&lt;ref_DataTypeList&gt;&gt;[WiredFaultEnum Type]" default="empty">
+        <mandatoryConform/>
+        <constraint type="max" value="8"/>
+      </field>
+    </event>
+    <event id="0x01" name="BatFaultChange" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform>
+        <feature name="BAT"/>
+      </optionalConform>
+      <field id="0" name="Current" type="&lt;&lt;ref_DataTypeList&gt;&gt;[BatFaultEnum Type]" default="empty">
+        <mandatoryConform/>
+        <constraint type="max" value="8"/>
+      </field>
+      <field id="1" name="Previous" type="&lt;&lt;ref_DataTypeList&gt;&gt;[BatFaultEnum Type]" default="empty">
+        <mandatoryConform/>
+        <constraint type="max" value="8"/>
+      </field>
+    </event>
+    <event id="0x02" name="BatChargeFaultChange" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform>
+        <feature name="RECHG"/>
+      </optionalConform>
+      <field id="0" name="Current" type="&lt;&lt;ref_DataTypeList&gt;&gt;[BatChargeFaultEnum Type]" default="empty">
+        <mandatoryConform/>
+        <constraint type="max" value="16"/>
+      </field>
+      <field id="1" name="Previous" type="&lt;&lt;ref_DataTypeList&gt;&gt;[BatChargeFaultEnum Type]" default="empty">
+        <mandatoryConform/>
+        <constraint type="max" value="16"/>
+      </field>
+    </event>
+    <event id="0x03" name="BatConnected" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform>
+        <feature name="BAT"/>
+      </optionalConform>
+      <field id="0" name="SessionID" type="uint32" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="ChargeState" type="BatChargeStateEnum">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x04" name="BatDisconnected" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform>
+        <feature name="BAT"/>
+      </optionalConform>
+      <field id="0" name="SessionID" type="uint32" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="ChargeState" type="BatChargeStateEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="SessionDuration" type="elapsed-s" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="SessionEnergyCharged" type="int64" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="SessionEnergyDischarged" type="int64" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x05" name="BatEnergyTransferStarted" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform>
+        <feature name="RECHG"/>
+      </optionalConform>
+      <field id="0" name="SessionID" type="uint32" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="ChargeState" type="BatChargeStateEnum">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x06" name="BatEnergyTransferStopped" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform>
+        <feature name="RECHG"/>
+      </optionalConform>
+      <field id="0" name="SessionID" type="uint32" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="ChargeState" type="BatChargeStateEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="Reason" type="BatEnergyTransferStopReasonEnum" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="EnergyTransferred" type="int64" default="null">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/PowerSourceConfigurationCluster.xml b/zcl-builtin/matter/new-data-model/PowerSourceConfigurationCluster.xml
new file mode 100644
index 0000000000000000000000000000000000000000..3d1b5f986d516b7c84133d1b96b8285b8ec2e2cd
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/PowerSourceConfigurationCluster.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x002e" name="Power Source Configuration" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="PSCFG" scope="Endpoint"/>
+  <attributes>
+    <attribute id="0x0000" name="Sources" type="list[&lt;&lt;ref_DataTypeEndpointNumber&gt;&gt;]">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="max" value="6"/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/PressureMeasurement.xml b/zcl-builtin/matter/new-data-model/PressureMeasurement.xml
new file mode 100644
index 0000000000000000000000000000000000000000..807aaaf91bb6d4684eac95326329fda8d66bf653
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/PressureMeasurement.xml
@@ -0,0 +1,133 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0403" name="Pressure Measurement" revision="3">
+  <revisionHistory>
+    <revision revision="1" summary="Mandatory global ClusterRevision attribute added"/>
+    <revision revision="2" summary="CCB 2241 2370"/>
+    <revision revision="3" summary="New data model format and notation"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="PRS" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="EXT" name="Extended" summary="Extended range and resolution">
+      <optionalConform/>
+    </feature>
+  </features>
+  <attributes>
+    <attribute id="0x0000" name="MeasuredValue" type="int16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform/>
+      <constraint type="between" from="MinMeasuredValue" to="MaxMeasuredValue"/>
+    </attribute>
+    <attribute id="0x0001" name="MinMeasuredValue" type="int16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="-32767" to="MaxMeasuredValue-1"/>
+    </attribute>
+    <attribute id="0x0002" name="MaxMeasuredValue" type="int16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="MinMeasuredValue+1" to="32767"/>
+    </attribute>
+    <attribute id="0x0003" name="Tolerance" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="between" from="0" to="2048"/>
+    </attribute>
+    <attribute id="0x0010" name="ScaledValue" type="int16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="EXT"/>
+      </mandatoryConform>
+      <constraint type="between" from="MinScaledValue" to="MaxScaledValue"/>
+    </attribute>
+    <attribute id="0x0011" name="MinScaledValue" type="int16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="EXT"/>
+      </mandatoryConform>
+      <constraint type="between" from="-32767" to="MaxScaledValue-1"/>
+    </attribute>
+    <attribute id="0x0012" name="MaxScaledValue" type="int16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="EXT"/>
+      </mandatoryConform>
+      <constraint type="between" from="MinScaledValue+1" to="32767"/>
+    </attribute>
+    <attribute id="0x0013" name="ScaledTolerance" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform>
+        <feature name="EXT"/>
+      </optionalConform>
+      <constraint type="between" from="0" to="2048"/>
+    </attribute>
+    <attribute id="0x0014" name="Scale" type="int8" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="EXT"/>
+      </mandatoryConform>
+      <constraint type="between" from="-127" to="127"/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/PumpConfigurationControl.xml b/zcl-builtin/matter/new-data-model/PumpConfigurationControl.xml
new file mode 100644
index 0000000000000000000000000000000000000000..bb75e728c8f88b995e104c90629bd520db9947c1
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/PumpConfigurationControl.xml
@@ -0,0 +1,243 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0200" name="Pump Configuration and Control" revision="4">
+  <revisionHistory>
+    <revision revision="1" summary="Mandatory global ClusterRevision attribute added"/>
+    <revision revision="2" summary="All Hubs changes"/>
+    <revision revision="3" summary="New data model format and notation, added additional events"/>
+    <revision revision="4" summary="Added feature map"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="PCC" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="PRSCONST" name="ConstantPressure" summary="Supports operating in constant pressure mode">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="1" code="PRSCOMP" name="CompensatedPressure" summary="Supports operating in compensated pressure mode">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="2" code="FLW" name="ConstantFlow" summary="Supports operating in constant flow mode">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="3" code="SPD" name="ConstantSpeed" summary="Supports operating in constant speed mode">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="4" code="TEMP" name="ConstantTemperature" summary="Supports operating in constant temperature mode">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="5" code="AUTO" name="Automatic" summary="Supports operating in automatic mode">
+      <optionalConform/>
+    </feature>
+    <feature bit="6" code="LOCAL" name="LocalOperation" summary="Supports operating using local settings">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="ControlModeEnum">
+      <item value="0" name="ConstantSpeed" summary="The pump is running at a constant speed.">
+        <mandatoryConform>
+          <feature name="SPD"/>
+        </mandatoryConform>
+      </item>
+      <item value="1" name="ConstantPressure" summary="The pump will regulate its speed to maintain a constant differential pressure over its flanges.">
+        <mandatoryConform>
+          <feature name="PRSCONST"/>
+        </mandatoryConform>
+      </item>
+      <item value="2" name="ProportionalPressure" summary="The pump will regulate its speed to maintain a constant differential pressure over its flanges.">
+        <mandatoryConform>
+          <feature name="PRSCOMP"/>
+        </mandatoryConform>
+      </item>
+      <item value="3" name="ConstantFlow" summary="The pump will regulate its speed to maintain a constant flow through the pump.">
+        <mandatoryConform>
+          <feature name="FLW"/>
+        </mandatoryConform>
+      </item>
+      <item value="5" name="ConstantTemperature" summary="The pump will regulate its speed to maintain a constant temperature.">
+        <mandatoryConform>
+          <feature name="TEMP"/>
+        </mandatoryConform>
+      </item>
+      <item value="7" name="Automatic" summary="The operation of the pump is automatically optimized to provide the most suitable performance with respect to comfort and energy savings.">
+        <mandatoryConform>
+          <feature name="AUTO"/>
+        </mandatoryConform>
+      </item>
+    </enum>
+    <enum name="OperationModeEnum">
+      <item value="0" name="Normal" summary="The pump is controlled by a setpoint, as defined by a connected remote sensor or by the ControlMode attribute.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Minimum" summary="This value sets the pump to run at the minimum possible speed it can without being stopped.">
+        <mandatoryConform>
+          <feature name="SPD"/>
+        </mandatoryConform>
+      </item>
+      <item value="2" name="Maximum" summary="This value sets the pump to run at its maximum possible speed.">
+        <mandatoryConform>
+          <feature name="SPD"/>
+        </mandatoryConform>
+      </item>
+      <item value="3" name="Local" summary="This value sets the pump to run with the local settings of the pump, regardless of what these are.">
+        <mandatoryConform>
+          <feature name="LOCAL"/>
+        </mandatoryConform>
+      </item>
+    </enum>
+    <bitmap name="PumpStatusBitmap">
+      <bitfield name="DeviceFault" bit="0" summary="A fault related to the system or pump device is detected.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="SupplyFault" bit="1" summary="A fault related to the supply to the pump is detected.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="SpeedLow" bit="2" summary="Setpoint is too low to achieve.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="SpeedHigh" bit="3" summary="Setpoint is too high to achieve.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="LocalOverride" bit="4" summary="Device control is overridden by hardware, such as an external STOP button or via a local HMI.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Running" bit="5" summary="Pump is currently running">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="RemotePressure" bit="6" summary="A remote pressure sensor is used as the sensor for the regulation of the pump.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="RemoteFlow" bit="7" summary="A remote flow sensor is used as the sensor for the regulation of the pump.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="RemoteTemperature" bit="8" summary="A remote temperature sensor is used as the sensor for the regulation of the pump.">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+  </dataTypes>
+  <attributes/>
+  <events>
+    <event id="0x00" name="SupplyVoltageLow" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x01" name="SupplyVoltageHigh" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x02" name="PowerMissingPhase" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x03" name="SystemPressureLow" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x04" name="SystemPressureHigh" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x05" name="DryRunning" priority="critical">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x06" name="MotorTemperatureHigh" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x07" name="PumpMotorFatalFailure" priority="critical">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x08" name="ElectronicTemperatureHigh" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x09" name="PumpBlocked" priority="critical">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x0a" name="SensorFailure" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x0b" name="ElectronicNonFatalFailure" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x0c" name="ElectronicFatalFailure" priority="critical">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x0d" name="GeneralFault" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x0e" name="Leakage" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x0f" name="AirDetection" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x10" name="TurbineOperation" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/RefrigeratorAlarm.xml b/zcl-builtin/matter/new-data-model/RefrigeratorAlarm.xml
new file mode 100644
index 0000000000000000000000000000000000000000..5d8b92e359dd2398cea02e876f5ec8ca46660c78
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/RefrigeratorAlarm.xml
@@ -0,0 +1,82 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0057" name="Refrigerator Alarm" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial revision"/>
+  </revisionHistory>
+  <classification hierarchy="derived" baseCluster="Alarm Base" role="application" picsCode="REFALM" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="RESET" name="Reset" summary="Supports the ability to reset alarms">
+      <disallowConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <bitmap name="AlarmMap">
+      <bitfield name="DoorOpen" bit="0" summary="The cabinet's door has been open for a vendor defined amount of time.">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+  </dataTypes>
+  <attributes/>
+  <commands>
+    <command id="0x01" name="ModifyEnabledAlarms" direction="commandToClient">
+      <access invokePrivilege="operate"/>
+      <disallowConform/>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/ResourceMonitoring.xml b/zcl-builtin/matter/new-data-model/ResourceMonitoring.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e3fecfc6273badedeb4fa4351ca80830eb26f2f2
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/ResourceMonitoring.xml
@@ -0,0 +1,169 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="" name="Resource Monitoring Clusters" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial version of the Resource Monitoring cluster"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="REPM" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="CON" name="Condition" summary="Supports monitoring the condition of the resource in percentage">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="WRN" name="Warning" summary="Supports warning indication">
+      <optionalConform/>
+    </feature>
+    <feature bit="2" code="REP" name="Replacement Product List" summary="Supports specifying the list of replacement products">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="ChangeIndicationEnum">
+      <item value="0" name="OK" summary="Resource is in good condition, no intervention required">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Warning" summary="Resource will be exhausted soon, intervention will shortly be required">
+        <mandatoryConform>
+          <feature name="WRN"/>
+        </mandatoryConform>
+      </item>
+      <item value="2" name="Critical" summary="Resource is exhausted, immediate intervention is required">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="DegradationDirectionEnum">
+      <item value="0" name="Up" summary="The degradation of the resource is indicated by an upwards moving/increasing value">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Down" summary="The degradation of the resource is indicated by a downwards moving/decreasing value">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="ProductIdentifierTypeEnum">
+      <item value="0" name="UPC" summary="12-digit Universal Product Code">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="GTIN-8" summary="8-digit Global Trade Item Number">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="EAN" summary="13-digit European Article Number">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="GTIN-14" summary="14-digit Global Trade Item Number">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="OEM" summary="Original Equipment Manufacturer part number">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <struct name="ReplacementProductStruct">
+      <field id="0" name="ProductIdentifierType" type="ProductIdentifierTypeEnum">
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="ProductIdentifierValue" type="string">
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="maxLength" value="20"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="Condition" type="percent">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="CON"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0001" name="DegradationDirection" type="DegradationDirectionEnum">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="CON"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0002" name="ChangeIndication" type="ChangeIndicationEnum" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0003" name="InPlaceIndicator" type="bool">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0004" name="LastChangedTime" type="epoch-s" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0005" name="ReplacementProductList" type="list[ReplacementProductStruct Type]">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="REP"/>
+      </mandatoryConform>
+      <constraint type="max" value="5"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="ResetCondition" response="Y">
+      <access invokePrivilege="operate"/>
+      <optionalConform/>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Scenes.xml b/zcl-builtin/matter/new-data-model/Scenes.xml
new file mode 100644
index 0000000000000000000000000000000000000000..6a555ecc161585cfeddf1e3ab569526171cfc55a
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Scenes.xml
@@ -0,0 +1,521 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0005" name="Scenes" revision="5">
+  <revisionHistory>
+    <revision revision="1" summary="Global mandatory ClusterRevision attribute added; CCB 1745"/>
+    <revision revision="2" summary="TransitionTime field added to the RecallScene command"/>
+    <revision revision="3" summary="CCB 2427 3026"/>
+    <revision revision="4" summary="New data model format and notation"/>
+    <revision revision="5" summary="Explicit, TableSize and FabricScenes features; support multi-fabric environment; adding attributes SceneTableSize and RemainingCapacity; add fabric-scoped scene information list"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="S" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="SN" name="SceneNames" summary="The ability to store a name for a scene.">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="EX" name="Explicit" summary="Use explicit attribute IDs, not implicit based on order">
+      <mandatoryConform/>
+    </feature>
+    <feature bit="2" code="TS" name="TableSize" summary="Table size and remaining capacity supported">
+      <mandatoryConform/>
+    </feature>
+    <feature bit="3" code="FS" name="FabricScenes" summary="Supports current scene, count, group etc, as fabric-scoped.">
+      <mandatoryConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <bitmap name="CopyModeBitmap">
+      <bitfield name="CopyAllScenes" bit="0" summary="Copy all scenes in the scene table">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="NameSupportBitmap">
+      <bitfield name="SceneNames" bit="7" summary="The ability to store a name for a scene.">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <struct name="AttributeValuePairStruct">
+      <field id="0" name="AttributeID" type="attribute-id">
+        <access read="true" write="true"/>
+        <otherwiseConform>
+          <mandatoryConform>
+            <feature name="EX"/>
+          </mandatoryConform>
+          <optionalConform/>
+        </otherwiseConform>
+      </field>
+      <field id="1" name="ValueUnsigned8" type="uint8">
+        <access read="true" write="true"/>
+        <optionalConform choice="a"/>
+      </field>
+      <field id="2" name="ValueSigned8" type="int8">
+        <access read="true" write="true"/>
+        <optionalConform choice="a"/>
+      </field>
+      <field id="3" name="ValueUnsigned16" type="uint16">
+        <access read="true" write="true"/>
+        <optionalConform choice="a"/>
+      </field>
+      <field id="4" name="ValueSigned16" type="int16">
+        <access read="true" write="true"/>
+        <optionalConform choice="a"/>
+      </field>
+      <field id="5" name="ValueUnsigned32" type="uint32">
+        <access read="true" write="true"/>
+        <optionalConform choice="a"/>
+      </field>
+      <field id="6" name="ValueSigned32" type="int32">
+        <access read="true" write="true"/>
+        <optionalConform choice="a"/>
+      </field>
+      <field id="7" name="ValueUnsigned64" type="uint64">
+        <access read="true" write="true"/>
+        <optionalConform choice="a"/>
+      </field>
+      <field id="8" name="ValueSigned64" type="int64">
+        <access read="true" write="true"/>
+        <optionalConform choice="a"/>
+      </field>
+    </struct>
+    <struct name="ExtensionFieldSetStruct">
+      <field id="0" name="ClusterID" type="cluster-id">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="AttributeValueList" type="list[AttributeValuePairStruct Type]">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </struct>
+    <struct name="Logical Scene Table">
+      <field id="0" name="SceneGroupID" type="group-id">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="SceneID" type="uint8">
+        <mandatoryConform/>
+      </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="uint16" default="0">
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="ExtensionFields" type="list[ExtensionFieldSetStruct Type]" default="empty">
+        <mandatoryConform/>
+      </field>
+      <field id="5" name="TransitionTime100ms" type="uint8" default="0">
+        <mandatoryConform/>
+        <constraint type="max" value="9"/>
+      </field>
+    </struct>
+    <struct name="SceneInfoStruct">
+      <field id="0" name="SceneCount" type="uint8" default="0">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="CurrentScene" type="uint8" default="0">
+        <access read="true" fabricSensitive="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="CurrentGroup" type="group-id" default="0">
+        <access read="true" fabricSensitive="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="SceneValid" type="bool" default="False">
+        <access read="true" fabricSensitive="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="RemainingCapacity" type="uint8" default="MS">
+        <access read="true"/>
+        <mandatoryConform>
+          <feature name="TS"/>
+        </mandatoryConform>
+        <constraint type="max" value="253"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="SceneCount" type="uint8" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <notTerm>
+          <feature name="FS"/>
+        </notTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0001" name="CurrentScene" type="uint8" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <notTerm>
+          <feature name="FS"/>
+        </notTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0002" name="CurrentGroup" type="group-id" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <notTerm>
+          <feature name="FS"/>
+        </notTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0003" name="SceneValid" type="bool" default="False">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <notTerm>
+          <feature name="FS"/>
+        </notTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0004" name="NameSupport" type="NameSupportBitmap" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0005" name="LastConfiguredBy" type="node-id" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0006" name="SceneTableSize" type="uint16" default="16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="TS"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0007" name="FabricSceneInfo" type="list[SceneInfoStruct Type]">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="FS"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="AddScene" response="AddSceneResponse">
+      <access invokePrivilege="manage"/>
+      <mandatoryConform/>
+      <field id="0" name="GroupID" type="group-id">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="SceneID" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="TransitionTime" type="uint16">
+        <mandatoryConform/>
+        <constraint type="max" value="6000"/>
+      </field>
+      <field id="3" name="SceneName" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="16"/>
+      </field>
+      <field id="4" name="ExtensionFieldSetStructs" type="list[ExtensionFieldSetStruct Type]">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x00" name="AddSceneResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Status" type="status">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="GroupID" type="group-id">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="SceneID" type="uint8">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x01" name="ViewScene" response="ViewSceneResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="GroupID" type="group-id">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="SceneID" type="uint8">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x01" name="ViewSceneResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Status" type="status">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="GroupID" type="group-id">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="SceneID" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="TransitionTime" type="uint16">
+        <constraint type="max" value="6000"/>
+      </field>
+      <field id="4" name="SceneName" type="string">
+        <constraint type="maxLength" value="16"/>
+      </field>
+      <field id="5" name="ExtensionFieldSetStructs" type="list[ExtensionFieldSetStruct Type]"/>
+    </command>
+    <command id="0x02" name="RemoveScene" response="RemoveSceneResponse">
+      <access invokePrivilege="manage"/>
+      <mandatoryConform/>
+      <field id="0" name="GroupID" type="group-id">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="SceneID" type="uint8">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x02" name="RemoveSceneResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Status" type="status">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="GroupID" type="group-id">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="SceneID" type="uint8">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x03" name="RemoveAllScenes" response="RemoveAllScenesResponse">
+      <access invokePrivilege="manage"/>
+      <mandatoryConform/>
+      <field id="0" name="GroupID" type="group-id">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x03" name="RemoveAllScenesResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Status" type="status">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="GroupID" type="group-id">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x04" name="StoreScene" response="StoreSceneResponse">
+      <access invokePrivilege="manage"/>
+      <mandatoryConform/>
+      <field id="0" name="GroupID" type="group-id">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="SceneID" type="uint8">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x04" name="StoreSceneResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Status" type="status">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="GroupID" type="group-id">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="SceneID" type="uint8">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x05" name="RecallScene" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="GroupID" type="group-id">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="SceneID" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="TransitionTime" type="uint16">
+        <quality nullable="true"/>
+        <optionalConform/>
+        <constraint type="max" value="60000"/>
+      </field>
+    </command>
+    <command id="0x06" name="GetSceneMembership" response="GetSceneMembershipResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="GroupID" type="group-id">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x06" name="GetSceneMembershipResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Status" type="status">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="Capacity" type="uint8">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="GroupID" type="group-id">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="SceneList" type="list">
+        <entry type="uint8"/>
+      </field>
+    </command>
+    <command id="0x40" name="EnhancedAddScene" response="EnhancedAddSceneResponse">
+      <access invokePrivilege="manage"/>
+      <optionalConform/>
+      <field id="0" name="GroupID" type="group-id">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="SceneID" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="TransitionTime" type="uint16">
+        <mandatoryConform/>
+        <constraint type="max" value="60000"/>
+      </field>
+      <field id="3" name="SceneName" type="string">
+        <mandatoryConform/>
+        <constraint type="maxLength" value="16"/>
+      </field>
+      <field id="4" name="ExtensionFieldSetStructs" type="list[ExtensionFieldSetStruct Type]">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x40" name="EnhancedAddSceneResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <attribute name="EnhancedAddScene"/>
+      </mandatoryConform>
+    </command>
+    <command id="0x41" name="EnhancedViewScene" response="EnhancedViewSceneResponse">
+      <access invokePrivilege="operate"/>
+      <optionalConform/>
+    </command>
+    <command id="0x41" name="EnhancedViewSceneResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <attribute name="EnhancedViewScene"/>
+      </mandatoryConform>
+      <field id="0" name="Status" type="status">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="GroupID" type="group-id">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="SceneID" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="TransitionTime" type="uint16">
+        <constraint type="max" value="60000"/>
+      </field>
+      <field id="4" name="SceneName" type="string">
+        <constraint type="maxLength" value="16"/>
+      </field>
+      <field id="5" name="ExtensionFieldSetStructs" type="list[ExtensionFieldSetStruct Type]"/>
+    </command>
+    <command id="0x42" name="CopyScene" response="CopySceneResponse">
+      <access invokePrivilege="manage"/>
+      <optionalConform/>
+      <field id="0" name="Mode" type="CopyModeBitmap">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="GroupIdentifierFrom" type="group-id">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="SceneIdentifierFrom" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="GroupIdentifierTo" type="group-id">
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="SceneIdentifierTo" type="uint8">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x42" name="CopySceneResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <attribute name="CopyScene"/>
+      </mandatoryConform>
+      <field id="0" name="Status" type="status">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="GroupIdentifierFrom" type="group-id">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="SceneIdentifierFrom" type="uint8">
+        <mandatoryConform/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/SmokeCOAlarm.xml b/zcl-builtin/matter/new-data-model/SmokeCOAlarm.xml
new file mode 100644
index 0000000000000000000000000000000000000000..2585e376c509531d80a400a060847d3da37a5ef4
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/SmokeCOAlarm.xml
@@ -0,0 +1,303 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x005c" name="Smoke CO Alarm" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="SMOKECO" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="SMOKE" name="SmokeAlarm" summary="Supports Smoke alarm">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="1" code="CO" name="COAlarm" summary="Supports CO alarm">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="AlarmStateEnum">
+      <item value="0" name="Normal" summary="Nominal state, the device is not alarming">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Warning" summary="Warning state">
+        <optionalConform/>
+      </item>
+      <item value="2" name="Critical" summary="Critical state">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="ContaminationStateEnum">
+      <item value="0" name="Normal" summary="Nominal state, the sensor is not contaminated">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Low" summary="Low contamination">
+        <optionalConform/>
+      </item>
+      <item value="2" name="Warning" summary="Warning state">
+        <optionalConform/>
+      </item>
+      <item value="3" name="Critical" summary="Critical state, will cause nuisance alarms">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="EndOfServiceEnum">
+      <item value="0" name="Normal" summary="Device has not expired">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Expired" summary="Device has reached its end of service">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="ExpressedStateEnum">
+      <item value="0" name="Normal" summary="Nominal state, the device is not alarming">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="SmokeAlarm" summary="Smoke Alarm state">
+        <mandatoryConform>
+          <feature name="SMOKE"/>
+        </mandatoryConform>
+      </item>
+      <item value="2" name="COAlarm" summary="CO Alarm state">
+        <mandatoryConform>
+          <feature name="CO"/>
+        </mandatoryConform>
+      </item>
+      <item value="3" name="BatteryAlert" summary="Battery Alert State">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="Testing" summary="Test in Progress">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="HardwareFault" summary="Hardware Fault Alert State">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="EndOfService" summary="End of Service Alert State">
+        <mandatoryConform/>
+      </item>
+      <item value="7" name="InterconnectSmoke" summary="Interconnected Smoke Alarm State">
+        <optionalConform/>
+      </item>
+      <item value="8" name="InterconnectCO" summary="Interconnected CO Alarm State">
+        <optionalConform/>
+      </item>
+    </enum>
+    <enum name="MuteStateEnum">
+      <item value="0" name="NotMuted" summary="Not Muted">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Muted" summary="Muted">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="SensitivityEnum">
+      <item value="0" name="High" summary="High sensitivity">
+        <optionalConform/>
+      </item>
+      <item value="1" name="Standard" summary="Standard Sensitivity">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Low" summary="Low sensitivity">
+        <optionalConform/>
+      </item>
+    </enum>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="ExpressedState" type="ExpressedStateEnum">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="SmokeState" type="AlarmStateEnum">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="SMOKE"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0002" name="COState" type="AlarmStateEnum">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="CO"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0003" name="BatteryAlert" type="AlarmStateEnum">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0004" name="DeviceMuted" type="MuteStateEnum">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0005" name="TestInProgress" type="bool">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0006" name="HardwareFaultAlert" type="bool">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0007" name="EndOfServiceAlert" type="EndOfServiceEnum">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0008" name="InterconnectSmokeAlarm" type="AlarmStateEnum">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0009" name="InterconnectCOAlarm" type="AlarmStateEnum">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x000a" name="ContaminationState" type="ContaminationStateEnum">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform>
+        <feature name="SMOKE"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x000b" name="SmokeSensitivityLevel" type="SensitivityEnum">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform>
+        <feature name="SMOKE"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x000c" name="ExpiryDate" type="epoch-s">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="SelfTestRequest" response="Y">
+      <access invokePrivilege="operate"/>
+      <optionalConform/>
+    </command>
+  </commands>
+  <events>
+    <event id="0x00" name="SmokeAlarm" priority="critical">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="SMOKE"/>
+      </mandatoryConform>
+      <field id="0" name="AlarmSeverityLevel" type="AlarmStateEnum">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x01" name="COAlarm" priority="critical">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="CO"/>
+      </mandatoryConform>
+      <field id="0" name="AlarmSeverityLevel" type="AlarmStateEnum">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x02" name="LowBattery" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+      <field id="0" name="AlarmSeverityLevel" type="AlarmStateEnum">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x03" name="HardwareFault" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+    </event>
+    <event id="0x04" name="EndOfService" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+    </event>
+    <event id="0x05" name="SelfTestComplete" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+    </event>
+    <event id="0x06" name="AlarmMuted" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x07" name="MuteEnded" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x08" name="InterconnectSmokeAlarm" priority="critical">
+      <access readPrivilege="view"/>
+      <optionalConform>
+        <feature name="SMOKE"/>
+      </optionalConform>
+      <field id="0" name="AlarmSeverityLevel" type="AlarmStateEnum">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x09" name="InterconnectCOAlarm" priority="critical">
+      <access readPrivilege="view"/>
+      <optionalConform>
+        <feature name="CO"/>
+      </optionalConform>
+      <field id="0" name="AlarmSeverityLevel" type="AlarmStateEnum">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x0a" name="AllClear" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Switch.xml b/zcl-builtin/matter/new-data-model/Switch.xml
new file mode 100644
index 0000000000000000000000000000000000000000..d1991604c246fddaab2262b24e7b495c8be00b49
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Switch.xml
@@ -0,0 +1,194 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x003b" name="Switch" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="SWTCH" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="LS" name="LatchingSwitch" summary="Switch is latching">
+      <optionalConform choice="a"/>
+    </feature>
+    <feature bit="1" code="MS" name="MomentarySwitch" summary="Switch is momentary">
+      <optionalConform choice="a"/>
+    </feature>
+    <feature bit="2" code="MSR" name="MomentarySwitchRelease" summary="Switch supports release">
+      <optionalConform>
+        <feature name="MS"/>
+      </optionalConform>
+    </feature>
+    <feature bit="3" code="MSL" name="MomentarySwitchLongPress" summary="Switch supports long press">
+      <optionalConform>
+        <andTerm>
+          <feature name="MS"/>
+          <feature name="MSR"/>
+        </andTerm>
+      </optionalConform>
+    </feature>
+    <feature bit="4" code="MSM" name="MomentarySwitchMultiPress" summary="Switch supports multi-press">
+      <optionalConform>
+        <andTerm>
+          <feature name="MS"/>
+          <feature name="MSR"/>
+        </andTerm>
+      </optionalConform>
+    </feature>
+  </features>
+  <attributes>
+    <attribute id="0x0000" name="NumberOfPositions" type="uint8" default="2">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="min" value="2"/>
+    </attribute>
+    <attribute id="0x0001" name="CurrentPosition" type="uint8" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="max" value="NumberOfPositions-1"/>
+    </attribute>
+    <attribute id="0x0002" name="MultiPressMax" type="uint8" default="2">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="MSM"/>
+      </mandatoryConform>
+      <constraint type="min" value="2"/>
+    </attribute>
+  </attributes>
+  <events>
+    <event id="0x00" name="SwitchLatched" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="LS"/>
+      </mandatoryConform>
+      <field id="0" name="NewPosition" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="NumberOfPositions-1"/>
+      </field>
+    </event>
+    <event id="0x01" name="InitialPress" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="MS"/>
+      </mandatoryConform>
+      <field id="0" name="NewPosition" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="NumberOfPositions-1"/>
+      </field>
+    </event>
+    <event id="0x02" name="LongPress" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="MSL"/>
+      </mandatoryConform>
+      <field id="0" name="NewPosition" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="NumberOfPositions-1"/>
+      </field>
+    </event>
+    <event id="0x03" name="ShortRelease" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="MSR"/>
+      </mandatoryConform>
+      <field id="0" name="PreviousPosition" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="NumberOfPositions-1"/>
+      </field>
+    </event>
+    <event id="0x04" name="LongRelease" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="MSL"/>
+      </mandatoryConform>
+      <field id="0" name="PreviousPosition" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="NumberOfPositions-1"/>
+      </field>
+    </event>
+    <event id="0x05" name="MultiPressOngoing" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="MSM"/>
+      </mandatoryConform>
+      <field id="0" name="NewPosition" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="NumberOfPositions-1"/>
+      </field>
+      <field id="1" name="CurrentNumberOfPressesCounted" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="2" to="MultiPressMax"/>
+      </field>
+    </event>
+    <event id="0x06" name="MultiPressComplete" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="MSM"/>
+      </mandatoryConform>
+      <field id="0" name="PreviousPosition" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="NumberOfPositions-1"/>
+      </field>
+      <field id="1" name="TotalNumberOfPressesCounted" type="uint8">
+        <mandatoryConform/>
+        <constraint type="between" from="1" to="MultiPressMax"/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/TargetNavigator.xml b/zcl-builtin/matter/new-data-model/TargetNavigator.xml
new file mode 100644
index 0000000000000000000000000000000000000000..b861a3f281117b073678ff66df9ebc1f1aa0b81c
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/TargetNavigator.xml
@@ -0,0 +1,118 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0505" name="Target Navigator" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="TGTNAV" scope="Endpoint"/>
+  <dataTypes>
+    <enum name="StatusEnum">
+      <item value="0" name="Success" summary="Command succeeded">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="TargetNotFound" summary="Requested target was not found in the TargetList">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="NotAllowed" summary="Target request is not allowed in current state.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <struct name="TargetInfoStruct">
+      <field id="0" name="Identifier" type="uint8">
+        <mandatoryConform/>
+        <constraint type="max" value="254"/>
+      </field>
+      <field id="1" name="Name" type="string">
+        <mandatoryConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="TargetList" type="list[TargetInfoStruct Type]">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="CurrentTarget" type="uint8" default="0xFF">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="NavigateTarget" response="NavigateTargetResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Target" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Data" type="string" default="MS">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x01" name="NavigateTargetResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Status" type="StatusEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Data" type="string" default="MS">
+        <optionalConform/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/TemperatureControl.xml b/zcl-builtin/matter/new-data-model/TemperatureControl.xml
new file mode 100644
index 0000000000000000000000000000000000000000..111ebd68100c4f28fdcc94318cc412f7ea53338c
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/TemperatureControl.xml
@@ -0,0 +1,95 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0056" name="Temperature Control" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="TCTL" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="TN" name="TemperatureNumber" summary="Use actual temperature numbers">
+      <optionalConform choice="a"/>
+    </feature>
+    <feature bit="1" code="TL" name="TemperatureLevel" summary="Use temperature levels">
+      <optionalConform choice="a"/>
+    </feature>
+    <feature bit="2" code="STEP" name="TemperatureStep" summary="Use step control with temperature numbers">
+      <optionalConform>
+        <feature name="TN"/>
+      </optionalConform>
+    </feature>
+  </features>
+  <attributes/>
+  <commands>
+    <command id="0x00" name="SetTemperature" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="TargetTemperature" type="temperature">
+        <mandatoryConform>
+          <feature name="TN"/>
+        </mandatoryConform>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="TargetTemperatureLevel" type="uint8">
+        <mandatoryConform>
+          <feature name="TL"/>
+        </mandatoryConform>
+        <constraint type="desc"/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/TemperatureMeasurement.xml b/zcl-builtin/matter/new-data-model/TemperatureMeasurement.xml
new file mode 100644
index 0000000000000000000000000000000000000000..43df6b331d9b16321f5b938555f9760318d7a4e7
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/TemperatureMeasurement.xml
@@ -0,0 +1,91 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0402" name="Temperature Measurement" revision="4">
+  <revisionHistory>
+    <revision revision="1" summary="Mandatory global ClusterRevision attribute added"/>
+    <revision revision="2" summary="CCB 2241 2370"/>
+    <revision revision="3" summary="CCB 2823"/>
+    <revision revision="4" summary="New data model format and notation"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="TMP" scope="Endpoint"/>
+  <attributes>
+    <attribute id="0x0000" name="MeasuredValue" type="temperature">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform/>
+      <constraint type="between" from="MinMeasuredValue" to="MaxMeasuredValue"/>
+    </attribute>
+    <attribute id="0x0001" name="MinMeasuredValue" type="temperature">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="-27315" to="MaxMeasuredValue-1"/>
+    </attribute>
+    <attribute id="0x0002" name="MaxMeasuredValue" type="temperature">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="MinMeasuredValue+1" to="32767"/>
+    </attribute>
+    <attribute id="0x0003" name="Tolerance" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="between" from="0" to="2048"/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Thermostat.xml b/zcl-builtin/matter/new-data-model/Thermostat.xml
new file mode 100644
index 0000000000000000000000000000000000000000..40fecee3a2a1f937b0bf81e9535d2d773a92c6b0
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Thermostat.xml
@@ -0,0 +1,913 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0201" name="Thermostat" revision="6">
+  <revisionHistory>
+    <revision revision="1" summary="Mandatory global ClusterRevision attribute added; fixed some defaults; CCB 1823, 1480"/>
+    <revision revision="2" summary="CCB 1981 2186 2249 2250 2251; NFR Thermostat Setback"/>
+    <revision revision="3" summary="CCB 2477 2560 2773 2777 2815 2816 3029"/>
+    <revision revision="4" summary="All Hubs changes"/>
+    <revision revision="5" summary="New data model format and notation, added FeatureMap, collapsed attribute sets, clarified edge cases around limits, default value of xxxSetpointLimit now respects AbsxxxSetpointLimit"/>
+    <revision revision="6" summary="Introduced the LTNE feature and adapted text (spec issue #5778)"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="TSTAT" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="HEAT" name="Heating" summary="Thermostat is capable of managing a heating device">
+      <otherwiseConform>
+        <mandatoryConform>
+          <feature name="AUTO"/>
+        </mandatoryConform>
+        <optionalConform choice="a" more="true"/>
+      </otherwiseConform>
+    </feature>
+    <feature bit="1" code="COOL" name="Cooling" summary="Thermostat is capable of managing a cooling device">
+      <otherwiseConform>
+        <mandatoryConform>
+          <feature name="AUTO"/>
+        </mandatoryConform>
+        <optionalConform choice="a" more="true"/>
+      </otherwiseConform>
+    </feature>
+    <feature bit="2" code="OCC" name="Occupancy" summary="Supports Occupied and Unoccupied setpoints">
+      <optionalConform/>
+    </feature>
+    <feature bit="3" code="SCH" name="Zigbee Schedule Configuration" summary="Supports remote configuration of a weekly schedule of setpoint transitions">
+      <otherwiseConform>
+        <deprecateConform/>
+        <mandatoryConform>
+          <condition name="Zigbee"/>
+        </mandatoryConform>
+      </otherwiseConform>
+    </feature>
+    <feature bit="4" code="SB" name="Setback" summary="Supports configurable setback (or span)">
+      <optionalConform/>
+    </feature>
+    <feature bit="5" code="AUTO" name="Auto Mode" summary="Supports a System Mode of Auto">
+      <optionalConform/>
+    </feature>
+    <feature bit="6" code="LTNE" name="Local Temperature Not Exposed" summary="Thermostat does not expose the LocalTemperature Value in the LocalTemperature attribute">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <number name="SignedTemperature" type=""/>
+    <number name="TemperatureDifference" type=""/>
+    <number name="UnsignedTemperature" type=""/>
+    <enum name="ACCapacityFormatEnum">
+      <item value="0" name="BTUh" summary="British Thermal Unit per Hour">
+        <optionalConform/>
+      </item>
+    </enum>
+    <enum name="ACCompressorTypeEnum">
+      <item value="0" name="Unknown" summary="Unknown compressor type">
+        <optionalConform/>
+      </item>
+      <item value="1" name="T1" summary="Max working ambient 43 °C">
+        <optionalConform/>
+      </item>
+      <item value="2" name="T2" summary="Max working ambient 35 °C">
+        <optionalConform/>
+      </item>
+      <item value="3" name="T3" summary="Max working ambient 52 °C">
+        <optionalConform/>
+      </item>
+    </enum>
+    <enum name="ACLouverPositionEnum">
+      <item value="1" name="Closed" summary="Fully Closed">
+        <optionalConform/>
+      </item>
+      <item value="2" name="Open" summary="Fully Open">
+        <optionalConform/>
+      </item>
+      <item value="3" name="Quarter" summary="Quarter Open">
+        <optionalConform/>
+      </item>
+      <item value="4" name="Half" summary="Half Open">
+        <optionalConform/>
+      </item>
+      <item value="5" name="ThreeQuarters" summary="Three Quarters Open">
+        <optionalConform/>
+      </item>
+    </enum>
+    <enum name="ACRefrigerantTypeEnum">
+      <item value="0" name="Unknown" summary="Unknown Refrigerant Type">
+        <optionalConform/>
+      </item>
+      <item value="1" name="R22" summary="R22 Refrigerant">
+        <optionalConform/>
+      </item>
+      <item value="2" name="R410a" summary="R410a Refrigerant">
+        <optionalConform/>
+      </item>
+      <item value="3" name="R407c" summary="R407c Refrigerant">
+        <optionalConform/>
+      </item>
+    </enum>
+    <enum name="ACTypeEnum">
+      <item value="0" name="Unknown" summary="Unknown AC Type">
+        <optionalConform/>
+      </item>
+      <item value="1" name="CoolingFixed" summary="Cooling and Fixed Speed">
+        <optionalConform/>
+      </item>
+      <item value="2" name="HeatPumpFixed" summary="Heat Pump and Fixed Speed">
+        <optionalConform/>
+      </item>
+      <item value="3" name="CoolingInverter" summary="Cooling and Inverter">
+        <optionalConform/>
+      </item>
+      <item value="4" name="HeatPumpInverter" summary="Heat Pump and Inverter">
+        <optionalConform/>
+      </item>
+    </enum>
+    <enum name="SetpointChangeSourceEnum">
+      <item value="0" name="Manual" summary="Manual, user-initiated setpoint change via the thermostat">
+        <optionalConform/>
+      </item>
+      <item value="1" name="Schedule" summary="Schedule/internal programming-initiated setpoint change">
+        <optionalConform>
+          <feature name="SCH"/>
+        </optionalConform>
+      </item>
+      <item value="2" name="External" summary="Externally-initiated setpoint change (e.g., DRLC cluster command, attribute write)">
+        <optionalConform/>
+      </item>
+    </enum>
+    <enum name="StartOfWeek">
+      <item value="0" name="Sunday">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Monday">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Tuesday">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Wednesday">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="Thursday">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="Friday">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="Saturday">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="TemperatureSetpointHold">
+      <item value="0" name="SetpointHoldOff" summary="Follow scheduling program">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="SetpointHoldOn" summary="Maintain current setpoint, regardless of schedule transitions">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="ThermostatControlSequence">
+      <item value="0" name="CoolingOnly" summary="Heat and Emergency are not possible">
+        <optionalConform>
+          <feature name="COOL"/>
+        </optionalConform>
+      </item>
+      <item value="1" name="CoolingWithReheat" summary="Heat and Emergency are not possible">
+        <optionalConform>
+          <feature name="COOL"/>
+        </optionalConform>
+      </item>
+      <item value="2" name="HeatingOnly" summary="Cool and precooling (see &lt;&lt;ref_HvacTerms&gt;&gt;) are not possible">
+        <optionalConform>
+          <feature name="HEAT"/>
+        </optionalConform>
+      </item>
+      <item value="3" name="HeatingWithReheat" summary="Cool and precooling are not possible">
+        <optionalConform>
+          <feature name="HEAT"/>
+        </optionalConform>
+      </item>
+      <item value="4" name="CoolingAndHeating" summary="All modes are possible">
+        <optionalConform>
+          <andTerm>
+            <feature name="HEAT"/>
+            <feature name="COOL"/>
+          </andTerm>
+        </optionalConform>
+      </item>
+      <item value="5" name="CoolingAndHeatingWithReheat" summary="All modes are possible">
+        <optionalConform>
+          <andTerm>
+            <feature name="HEAT"/>
+            <feature name="COOL"/>
+          </andTerm>
+        </optionalConform>
+      </item>
+    </enum>
+    <enum name="ThermostatSystemMode">
+      <item value="0" name="Off" summary="The Thermostat does not generate demand for Cooling or Heating">
+        <optionalConform/>
+      </item>
+      <item value="1" name="Auto" summary="Demand is generated for either Cooling or Heating, as required">
+        <mandatoryConform>
+          <feature name="AUTO"/>
+        </mandatoryConform>
+      </item>
+      <item value="3" name="Cool" summary="Demand is only generated for Cooling">
+        <optionalConform>
+          <feature name="COOL"/>
+        </optionalConform>
+      </item>
+      <item value="4" name="Heat" summary="Demand is only generated for Heating">
+        <optionalConform>
+          <feature name="HEAT"/>
+        </optionalConform>
+      </item>
+      <item value="5" name="EmergencyHeat" summary="2 stage heating is in use to achieve desired temperature">
+        <optionalConform>
+          <feature name="HEAT"/>
+        </optionalConform>
+      </item>
+      <item value="6" name="Precooling" summary="(see &lt;&lt;ref_HvacTerms&gt;&gt;)">
+        <optionalConform>
+          <feature name="COOL"/>
+        </optionalConform>
+      </item>
+      <item value="7" name="Fan only">
+        <optionalConform/>
+      </item>
+      <item value="8" name="Dry">
+        <optionalConform/>
+      </item>
+      <item value="9" name="Sleep">
+        <optionalConform/>
+      </item>
+    </enum>
+    <bitmap name="ACErrorCodeBitmap">
+      <bitfield name="CompressorFail" bit="0" summary="Compressor Failure or Refrigerant Leakage">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="RoomSensorFail" bit="1" summary="Room Temperature Sensor Failure">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="OutdoorSensorFail" bit="2" summary="Outdoor Temperature Sensor Failure">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="CoilSensorFail" bit="3" summary="Indoor Coil Temperature Sensor Failure">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="FanFail" bit="4" summary="Fan Failure">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="AlarmCodeBitmap">
+      <bitfield name="Initialization" bit="0" summary="Initialization failure. The device failed to complete initialization at power-up.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Hardware" bit="1" summary="Hardware failure">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="SelfCalibration" bit="2" summary="Self-calibration failure">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="DayOfWeek">
+      <bitfield name="Sunday" bit="0" summary="Sunday">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Monday" bit="1" summary="Monday">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Tuesday" bit="2" summary="Tuesday">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Wednesday" bit="3" summary="Wednesday">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Thursday" bit="4" summary="Thursday">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Friday" bit="5" summary="Friday">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Saturday" bit="6" summary="Saturday">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Away" bit="7" summary="Away or Vacation">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="HVACSystemTypeBitmap">
+      <bitfield name="CoolingStage" summary="Stage of cooling the HVAC system is using.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="HeatingStage" summary="Stage of heating the HVAC system is using.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="HeatingType" bit="4" summary="Type of heating used by the HVAC system.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="HeatingFuel" bit="5" summary="Type of fuel used by the HVAC system.">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="ModeForSequence">
+      <bitfield name="HeatSetpointPresent" bit="0" summary="Adjust Heat Setpoint">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="CoolSetpointPresent" bit="1" summary="Adjust Cool Setpoint">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="ProgrammingOperationModeBitmap">
+      <bitfield name="ScheduleActive" bit="0" summary="Schedule programming mode. This enables any
+                               programmed weekly schedule configurations.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="AutoRecovery" bit="1" summary="Auto/recovery mode">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Economy" bit="2" summary="Economy/EnergyStar mode">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="RelayStateBitmap">
+      <bitfield name="Heat" bit="0" summary="Heat State On">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Cool" bit="1" summary="Cool State On">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Fan" bit="2" summary="Fan State On">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="HeatStage2" bit="3" summary="Heat 2 State On">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="CoolStage2" bit="4" summary="Cool 2 State On">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="FanStage2" bit="5" summary="Fan 2 State On">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="FanStage3" bit="6" summary="Fan 3 Stage On">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="RemoteSensingBitmap">
+      <bitfield name="LocalTemperature" bit="0" summary="Calculated Local Temperature is derived from a remote node">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="OutdoorTemperature" bit="1" summary="OutdoorTemperature is derived from a remote node"/>
+      <bitfield name="Occupancy" bit="2" summary="Occupancy is derived from a remote node">
+        <mandatoryConform>
+          <feature name="OCC"/>
+        </mandatoryConform>
+      </bitfield>
+    </bitmap>
+    <bitmap name="SetpointAdjustMode">
+      <bitfield name="Heat" bit="0" summary="Adjust Heat Setpoint">
+        <mandatoryConform>
+          <feature name="HEAT"/>
+        </mandatoryConform>
+      </bitfield>
+      <bitfield name="Cool" bit="1" summary="Adjust Cool Setpoint">
+        <mandatoryConform>
+          <feature name="COOL"/>
+        </mandatoryConform>
+      </bitfield>
+      <bitfield name="Both" bit="2" summary="Adjust Heat Setpoint and Cool Setpoint">
+        <mandatoryConform>
+          <orTerm>
+            <feature name="HEAT"/>
+            <feature name="COOL"/>
+          </orTerm>
+        </mandatoryConform>
+      </bitfield>
+    </bitmap>
+    <bitmap name="TemperatureSetpointHoldPolicy">
+      <bitfield name="HoldDurationElapsed" bit="0" summary="Hold will be cleared when the hold duration has elapsed">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="HoldDurationElapsedOrPresetChanged" bit="1" summary="Hold will be cleared when either the hold duration has elapsed or the preset changes">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <struct name="ThermostatScheduleTransition">
+      <field id="0" name="TransitionTime" type="uint16">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="1439"/>
+      </field>
+      <field id="1" name="HeatSetpoint" type="temperature">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="CoolSetpoint" type="temperature">
+        <access read="true" write="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="LocalTemperature" type="temperature" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="OutdoorTemperature" type="temperature" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0002" name="Occupancy" type="&lt;&lt;ref_OccupancyBitmap&gt;&gt;" default="1">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="OCC"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0003" name="AbsMinHeatSetpointLimit" type="temperature" default="7°C">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform>
+        <feature name="HEAT"/>
+      </optionalConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0004" name="AbsMaxHeatSetpointLimit" type="temperature" default="30°C">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform>
+        <feature name="HEAT"/>
+      </optionalConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0005" name="AbsMinCoolSetpointLimit" type="temperature" default="16°C">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform>
+        <feature name="COOL"/>
+      </optionalConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0006" name="AbsMaxCoolSetpointLimit" type="temperature" default="32°C">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform>
+        <feature name="COOL"/>
+      </optionalConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0007" name="PICoolingDemand" type="uint8" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform>
+        <feature name="COOL"/>
+      </optionalConform>
+      <constraint type="between" from="0%" to="100%"/>
+    </attribute>
+    <attribute id="0x0008" name="PIHeatingDemand" type="uint8" default="-">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform>
+        <feature name="HEAT"/>
+      </optionalConform>
+      <constraint type="between" from="0%" to="100%"/>
+    </attribute>
+    <attribute id="0x0009" name="HVACSystemTypeConfiguration" type="HVACSystemTypeBitmap" default="0">
+      <access read="true" write="optional" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <deprecateConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0010" name="LocalTemperatureCalibration" type="SignedTemperature" default="0°C">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform>
+        <notTerm>
+          <feature name="LTNE"/>
+        </notTerm>
+      </optionalConform>
+      <constraint type="between" from="-2.5°C" to="2.5°C"/>
+    </attribute>
+    <attribute id="0x0011" name="OccupiedCoolingSetpoint" type="temperature" default="26°C">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="false" scene="true" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="COOL"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0012" name="OccupiedHeatingSetpoint" type="temperature" default="20°C">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="false" scene="true" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="HEAT"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0013" name="UnoccupiedCoolingSetpoint" type="temperature" default="26°C">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="COOL"/>
+          <feature name="OCC"/>
+        </andTerm>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0014" name="UnoccupiedHeatingSetpoint" type="temperature" default="20°C">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="HEAT"/>
+          <feature name="OCC"/>
+        </andTerm>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0015" name="MinHeatSetpointLimit" type="temperature" default="AbsMinHeatSetpointLimit">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform>
+        <feature name="HEAT"/>
+      </optionalConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0016" name="MaxHeatSetpointLimit" type="temperature" default="AbsMaxHeatSetpointLimit">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform>
+        <feature name="HEAT"/>
+      </optionalConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0017" name="MinCoolSetpointLimit" type="temperature" default="AbsMinCoolSetpointLimit">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform>
+        <feature name="COOL"/>
+      </optionalConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0018" name="MaxCoolSetpointLimit" type="temperature" default="AbsMaxCoolSetpointLimit">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform>
+        <feature name="COOL"/>
+      </optionalConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0019" name="MinSetpointDeadBand" type="SignedTemperature" default="2.5°C">
+      <access read="true" write="optional" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="AUTO"/>
+      </mandatoryConform>
+      <constraint type="between" from="0°C" to="2.5°C"/>
+    </attribute>
+    <attribute id="0x001a" name="RemoteSensing" type="RemoteSensingBitmap" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform/>
+      <constraint type="allowed" value="00000xxx"/>
+    </attribute>
+    <attribute id="0x001b" name="ControlSequenceOfOperation" type="ThermostatControlSequence" default="4">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x001c" name="SystemMode" type="ThermostatSystemMode" default="1">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="true" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x001d" name="AlarmMask" type="AlarmCodeBitmap" default="0">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x001e" name="ThermostatRunningMode" type="ThermostatSystemMode" default="0">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform>
+        <feature name="AUTO"/>
+      </optionalConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0020" name="StartOfWeek" type="StartOfWeek" default="–">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="SCH"/>
+      </mandatoryConform>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0021" name="NumberOfWeeklyTransitions" type="uint8" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="SCH"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0022" name="NumberOfDailyTransitions" type="uint8" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="SCH"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0023" name="TemperatureSetpointHold" type="TemperatureSetpointHold" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0024" name="TemperatureSetpointHoldDuration" type="uint16" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform/>
+      <constraint type="between" from="0" to="1440"/>
+    </attribute>
+    <attribute id="0x0025" name="ThermostatProgrammingOperationMode" type="ProgrammingOperationModeBitmap" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0029" name="ThermostatRunningState" type="RelayStateBitmap" default="-">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0030" name="SetpointChangeSource" type="SetpointChangeSourceEnum" default="0">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0031" name="SetpointChangeAmount" type="TemperatureDifference" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0032" name="SetpointChangeSourceTimestamp" type="utc" default="0">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0034" name="OccupiedSetback" type="UnsignedTemperature" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="SB"/>
+      </mandatoryConform>
+      <constraint type="between" from="OccupiedSetbackMin" to="OccupiedSetbackMax"/>
+    </attribute>
+    <attribute id="0x0035" name="OccupiedSetbackMin" type="UnsignedTemperature" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="SB"/>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="OccupiedSetbackMax"/>
+    </attribute>
+    <attribute id="0x0036" name="OccupiedSetbackMax" type="UnsignedTemperature" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <feature name="SB"/>
+      </mandatoryConform>
+      <constraint type="between" from="OccupiedSetbackMin" to="25.4°C"/>
+    </attribute>
+    <attribute id="0x0037" name="UnoccupiedSetback" type="UnsignedTemperature" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="SB"/>
+          <feature name="OCC"/>
+        </andTerm>
+      </mandatoryConform>
+      <constraint type="between" from="UnoccupiedSetbackMin" to="UnoccupiedSetbackMax"/>
+    </attribute>
+    <attribute id="0x0038" name="UnoccupiedSetbackMin" type="UnsignedTemperature" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="SB"/>
+          <feature name="OCC"/>
+        </andTerm>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="UnoccupiedSetbackMax"/>
+    </attribute>
+    <attribute id="0x0039" name="UnoccupiedSetbackMax" type="UnsignedTemperature" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="SB"/>
+          <feature name="OCC"/>
+        </andTerm>
+      </mandatoryConform>
+      <constraint type="between" from="UnoccupiedSetbackMin" to="25.4°C"/>
+    </attribute>
+    <attribute id="0x003a" name="EmergencyHeatDelta" type="UnsignedTemperature" default="25.5°C">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0040" name="ACType" type="ACTypeEnum" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0041" name="ACCapacity" type="uint16" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0042" name="ACRefrigerantType" type="ACRefrigerantTypeEnum" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0043" name="ACCompressorType" type="ACCompressorTypeEnum" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0044" name="ACErrorCode" type="ACErrorCodeBitmap" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0045" name="ACLouverPosition" type="ACLouverPositionEnum" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0046" name="ACCoilTemperature" type="temperature" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0047" name="ACCapacityFormat" type="ACCapacityFormatEnum" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="SetpointRaiseLower" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="Mode" type="SetpointAdjustMode">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="Amount" type="int8">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x00" name="GetWeeklyScheduleResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="SCH"/>
+      </mandatoryConform>
+    </command>
+    <command id="0x01" name="SetWeeklySchedule" response="Y">
+      <access invokePrivilege="manage"/>
+      <mandatoryConform>
+        <feature name="SCH"/>
+      </mandatoryConform>
+      <field id="0" name="NumberOfTransitionsForSequence" type="uint8">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="DayOfWeekforSequence" type="DayOfWeek">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="2" name="ModeForSequence" type="ModeForSequence">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="3" name="Transitions" type="list[ThermostatScheduleTransition Type]">
+        <mandatoryConform/>
+        <constraint type="max" value="10"/>
+      </field>
+    </command>
+    <command id="0x01" name="GetRelayStatusLogResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <attribute name="GetRelayStatusLog"/>
+      </mandatoryConform>
+      <field id="0" name="TimeOfDay" type="uint16">
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="1439"/>
+      </field>
+      <field id="1" name="RelayStatus" type="RelayStateBitmap">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="2" name="LocalTemperature" type="temperature">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="HumidityInPercentage" type="uint8">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+        <constraint type="between" from="0%" to="100%"/>
+      </field>
+      <field id="4" name="SetPoint" type="temperature">
+        <mandatoryConform/>
+      </field>
+      <field id="5" name="UnreadEntries" type="uint16">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x02" name="GetWeeklySchedule" response="GetWeeklyScheduleResponse">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="SCH"/>
+      </mandatoryConform>
+      <field id="0" name="DaysToReturn" type="DayOfWeek">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="ModeToReturn" type="ModeForSequence">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x03" name="ClearWeeklySchedule">
+      <access invokePrivilege="manage"/>
+      <mandatoryConform>
+        <feature name="SCH"/>
+      </mandatoryConform>
+    </command>
+    <command id="0x04" name="GetRelayStatusLog" response="GetRelayStatusLogResponse">
+      <access invokePrivilege="operate"/>
+      <optionalConform/>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/ThermostatUserInterfaceConfiguration.xml b/zcl-builtin/matter/new-data-model/ThermostatUserInterfaceConfiguration.xml
new file mode 100644
index 0000000000000000000000000000000000000000..02129fa6daf3c4255f1c87b1a6a3c0e7f5793c73
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/ThermostatUserInterfaceConfiguration.xml
@@ -0,0 +1,119 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0204" name="Thermostat User Interface Configuration" revision="2">
+  <revisionHistory>
+    <revision revision="1" summary="Global mandatory ClusterRevision attribute added"/>
+    <revision revision="2" summary="New data model format and notation, added &quot;Conversion of Temperature Values for Display&quot; section"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="TSUIC" scope="Endpoint"/>
+  <dataTypes>
+    <enum name="KeypadLockoutEnum">
+      <item value="0" name="NoLockout" summary="All functionality available to the user">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Lockout1" summary="Level 1 reduced functionality">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Lockout2" summary="Level 2 reduced functionality">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Lockout3" summary="Level 3 reduced functionality">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="Lockout4" summary="Level 4 reduced functionality">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="Lockout5" summary="Least functionality available to the user">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="ScheduleProgrammingVisibilityEnum">
+      <item value="0" name="ScheduleProgrammingPermitted" summary="Local schedule programming functionality is enabled at the thermostat">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="ScheduleProgrammingDenied" summary="Local schedule programming functionality is disabled at the thermostat">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="TemperatureDisplayModeEnum">
+      <item value="0" name="Celsius" summary="Temperature displayed in °C">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Fahrenheit" summary="Temperature displayed in °F">
+        <mandatoryConform/>
+      </item>
+    </enum>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="TemperatureDisplayMode" type="TemperatureDisplayModeEnum" default="Celsius">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="operate"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0001" name="KeypadLockout" type="KeypadLockoutEnum" default="NoLockout">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0002" name="ScheduleProgrammingVisibility" type="ScheduleProgrammingVisibilityEnum" default="ScheduleProgrammingPermitted">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/ThreadBorderRouterDiagnostics.xml b/zcl-builtin/matter/new-data-model/ThreadBorderRouterDiagnostics.xml
new file mode 100644
index 0000000000000000000000000000000000000000..64594892a9b50a2c5f4e74d530421d195f0114d1
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/ThreadBorderRouterDiagnostics.xml
@@ -0,0 +1,93 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="" name="Thread Border Router Diagnostics" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="TODO" scope="Endpoint"/>
+  <commands>
+    <command id="0x00" name="OpDatasetRequest" response="OpDatasetResponse">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x01" name="OpDatasetResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="OperationalDataset" type="octets">
+        <mandatoryConform>
+          <feature name="TH"/>
+        </mandatoryConform>
+        <constraint type="maxLength" value="254"/>
+      </field>
+    </command>
+    <command id="0x02" name="TopologyRequest" response="TopologyResponse">
+      <access invokePrivilege="admin"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x03" name="TopologyResponse" direction="responseFromServer">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="ThreadTopology" type="TODO">
+        <mandatoryConform>
+          <feature name="TH"/>
+        </mandatoryConform>
+        <constraint type="allowed" value="TODO"/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/TimeSync.xml b/zcl-builtin/matter/new-data-model/TimeSync.xml
new file mode 100644
index 0000000000000000000000000000000000000000..3b5610260122e83a2081552dc0428305672a14b7
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/TimeSync.xml
@@ -0,0 +1,200 @@
+<?xml version="1.0"?>
+<!--
+link:../matter-defines.adoc[]
+
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0038" name="Time Sync" revision="2">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+    <revision revision="2" summary="Make TrustedTimeSource fabric-aware, add TSC feature, define list max sizes, change writable attributes to commands, remote port, add attribute for DNS support"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="utility" picsCode="TIMESYNC" scope="Node"/>
+  <features>
+    <feature bit="0" code="TZ" name="TimeZone" summary="Server supports time zone.">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="NTPC" name="NTPClient" summary="Server supports an NTP or SNTP client.">
+      <optionalConform/>
+    </feature>
+    <feature bit="2" code="NTPS" name="NTPServer" summary="Server supports an NTP server role.">
+      <optionalConform/>
+    </feature>
+    <feature bit="3" code="TSC" name="TimeSyncClient" summary="Time synchronization client cluster is present.">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="GranularityEnum">
+      <item value="0" name="NoTimeGranularity" summary="This indicates that the node is not currently synchronized with a UTC Time source and its clock is based on the Last Known Good UTC Time only.">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="MinutesGranularity" summary="This indicates the node was synchronized to an upstream source in the past, but sufficient clock drift has occurred such that the clock error is now &gt; 5 seconds.">
+        <mandatoryConform/>
+      </item>
+      <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.">
+        <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.">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="TimeZoneDatabaseEnum">
+      <item value="0" name="Full" summary="Node has a full list of the available time zones">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Partial" summary="Node has a partial list of the available time zones">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="None" summary="Node does not have a time zone database">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <struct name="DSTOffsetStruct">
+      <field id="0" name="Offset" type="int32">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="ValidStarting" type="&lt;&lt;ref_DataTypeEpochUs&gt;&gt;">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="ValidUntil" type="&lt;&lt;ref_DataTypeEpochUs&gt;&gt;">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+    <struct name="FabricScopedTrustedTimeSourceStruct">
+      <field id="0" name="NodeID" type="&lt;&lt;ref_DataTypeNodeId&gt;&gt;">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Endpoint" type="&lt;&lt;ref_DataTypeEndpointNumber&gt;&gt;">
+        <mandatoryConform/>
+      </field>
+    </struct>
+    <struct name="TimeZoneStruct">
+      <field id="0" name="Offset" type="int32">
+        <mandatoryConform/>
+        <constraint type="between" from="-43200" to="50400"/>
+      </field>
+      <field id="1" name="ValidAt" type="&lt;&lt;ref_DataTypeEpochUs&gt;&gt;">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="Name" type="&lt;&lt;ref_DataTypeString&gt;&gt;">
+        <optionalConform/>
+        <constraint type="between" from="0" to="64"/>
+      </field>
+    </struct>
+    <struct name="TrustedTimeSourceStruct">
+      <field id="0" name="FabricIndex" type="&lt;&lt;ref_FabricIdx&gt;&gt;">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="NodeID" type="&lt;&lt;ref_DataTypeNodeId&gt;&gt;">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="Endpoint" type="&lt;&lt;ref_DataTypeEndpointNumber&gt;&gt;">
+        <mandatoryConform/>
+      </field>
+    </struct>
+  </dataTypes>
+  <events>
+    <event id="0x00" name="DSTTableEmpty" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="TZ"/>
+      </mandatoryConform>
+    </event>
+    <event id="0x01" name="DSTStatus" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="TZ"/>
+      </mandatoryConform>
+      <field id="0" name="DSTOffsetActive" type="bool">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x02" name="TimeZoneStatus" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="TZ"/>
+      </mandatoryConform>
+      <field id="0" name="Offset" type="int32">
+        <mandatoryConform/>
+        <constraint type="between" from="-43200" to="50400"/>
+      </field>
+      <field id="1" name="Name" type="&lt;&lt;ref_DataTypeString&gt;&gt;">
+        <optionalConform/>
+        <constraint type="between" from="0" to="64"/>
+      </field>
+    </event>
+    <event id="0x03" name="TimeFailure" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+    </event>
+    <event id="0x04" name="MissingTrustedTimeSource" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="TSC"/>
+      </mandatoryConform>
+      <field id="0" name="TrustedTimeSource" type="FabricScopedTrustedTimeSourceStruct">
+        <quality nullable="true"/>
+        <mandatoryConform/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/Timer.xml b/zcl-builtin/matter/new-data-model/Timer.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a43313954d90046bb6ed5ae3180a949d678db419
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/Timer.xml
@@ -0,0 +1,131 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0047" name="Timer" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial revision"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="TIMER" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="RESET" name="Reset" summary="Supports the ability to reset timers">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="TimerStatusEnum">
+      <item value="0" name="Running" summary="The timer is currently in a running state">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Paused" summary="This timer is currently paused">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Expired" summary="This timer has expired">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Ready" summary="This timer is ready to start">
+        <mandatoryConform/>
+      </item>
+    </enum>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="SetTime" type="elapsed-s">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="max" value="259200"/>
+    </attribute>
+    <attribute id="0x0001" name="TimeRemaining" type="elapsed-s">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="true" nullable="false" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="SetTime"/>
+    </attribute>
+    <attribute id="0x0002" name="TimerState" type="TimerStatusEnum">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="SetTimer" response="Y">
+      <access invokePrivilege="operate"/>
+      <field id="0" name="NewTime" type="elapsed-s">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x01" name="ResetTimer" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="RESET"/>
+      </mandatoryConform>
+    </command>
+    <command id="0x02" name="AddTime" response="Y">
+      <access invokePrivilege="operate"/>
+      <field id="0" name="AdditionalTime" type="elapsed-s">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x03" name="ReduceTime" response="Y">
+      <access invokePrivilege="operate"/>
+      <optionalConform/>
+      <field id="0" name="TimeReduction" type="elapsed-s">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/ValveConfigurationControl.xml b/zcl-builtin/matter/new-data-model/ValveConfigurationControl.xml
new file mode 100644
index 0000000000000000000000000000000000000000..2661ca02880726ffdd1e6f0f7e96e591f0d9fa54
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/ValveConfigurationControl.xml
@@ -0,0 +1,196 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0081" name="Valve Configuration and Control" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="VALCC" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="TS" name="TimeSync" summary="UTC time is used for time indications">
+      <optionalConform/>
+    </feature>
+    <feature bit="1" code="LVL" name="Level" summary="Device supports setting the specific position of the valve">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="ValveStateEnum">
+      <item value="0" name="Open" summary="Valve is in open position">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Closed" summary="Valve is in closed position">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <bitmap name="ValveFaultBitmap">
+      <bitfield name="GeneralFault" bit="0" summary="Unspecified fault detected">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Blocked" bit="1" summary="Valve is blocked">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Leaking" bit="2" summary="Valve has detected a leak">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="OpenDuration" type="elapsed-s" default="null">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="min" value="1"/>
+    </attribute>
+    <attribute id="0x0001" name="AutoCloseTime" type="epoch-us" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform>
+        <feature name="TS"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0002" name="RemainingDuration" type="elapsed-s" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0003" name="CurrentState" type="ValveStateEnum" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0004" name="TargetState" type="ValveStateEnum" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0005" name="StartUpState" type="ValveStateEnum" default="MS">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0006" name="CurrentLevel" type="percent" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="LVL"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0007" name="TargetLevel" type="percent" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform>
+        <feature name="LVL"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0008" name="OpenLevel" type="percent" default="100">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform>
+        <feature name="LVL"/>
+      </optionalConform>
+      <constraint type="between" from="1" to="100"/>
+    </attribute>
+    <attribute id="0x0009" name="ValveFault" type="ValveFaultBitmap" default="0">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="Open" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+      <field id="0" name="OpenDuration" type="elapsed-s">
+        <optionalConform/>
+        <constraint type="min" value="1"/>
+      </field>
+    </command>
+    <command id="0x01" name="Close" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x02" name="SetLevel" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform>
+        <feature name="LVL"/>
+      </mandatoryConform>
+      <field id="0" name="Level" type="percent">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="OpenDuration" type="elapsed-s">
+        <optionalConform/>
+        <constraint type="min" value="1"/>
+      </field>
+    </command>
+  </commands>
+  <events>
+    <event id="0x00" name="ValveStateChanged" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+      <field id="0" name="ValveState" type="ValveStateEnum">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x01" name="ValveFault" priority="info">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+      <field id="0" name="ValveFault" type="ValveFaultBitmap">
+        <mandatoryConform/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/WakeOnLAN.xml b/zcl-builtin/matter/new-data-model/WakeOnLAN.xml
new file mode 100644
index 0000000000000000000000000000000000000000..38144fe92655b6be0ee35c780560433b16493223
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/WakeOnLAN.xml
@@ -0,0 +1,77 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0503" name="Wake on LAN" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="WAKEONLAN" scope="Endpoint"/>
+  <attributes>
+    <attribute id="0x0000" name="MACAddress" type="string">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform/>
+      <constraint type="maxLength" value="12"/>
+    </attribute>
+    <attribute id="0x0001" name="LinkLocalAddress" type="ipv6adr">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/WaterContentMeasurement.xml b/zcl-builtin/matter/new-data-model/WaterContentMeasurement.xml
new file mode 100644
index 0000000000000000000000000000000000000000..1654fd5ae3ff8c886605747eaac75b875922de4b
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/WaterContentMeasurement.xml
@@ -0,0 +1,90 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="" name="Water Content Measurement Clusters" revision="3">
+  <revisionHistory>
+    <revision revision="1" summary="Mandatory global ClusterRevision attribute added"/>
+    <revision revision="2" summary="CCB 2241"/>
+    <revision revision="3" summary="New data model format and notation"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="RH" scope="Endpoint"/>
+  <attributes>
+    <attribute id="0x0000" name="MeasuredValue" type="uint16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform/>
+      <constraint type="between" from="MinMeasuredValue" to="MaxMeasuredValue"/>
+    </attribute>
+    <attribute id="0x0001" name="MinMeasuredValue" type="uint16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="0" to="MaxMeasuredValue-1"/>
+    </attribute>
+    <attribute id="0x0002" name="MaxMeasuredValue" type="uint16">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="volatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="between" from="MinMeasuredValue+1" to="10000"/>
+    </attribute>
+    <attribute id="0x0003" name="Tolerance" type="uint16">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="between" from="0" to="2048"/>
+    </attribute>
+  </attributes>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/WaterHeaterManagement.xml b/zcl-builtin/matter/new-data-model/WaterHeaterManagement.xml
new file mode 100644
index 0000000000000000000000000000000000000000..fb00de437bd5a657ffb27f529092ad1ecc427be8
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/WaterHeaterManagement.xml
@@ -0,0 +1,159 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0094" name="Water Heater Management" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release in Matter"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="WHM" scope="Endpoint"/>
+  <features>
+    <feature bit="1" code="EM" name="EnergyManagement" summary="Allows energy management control of the tank">
+      <optionalConform/>
+    </feature>
+  </features>
+  <dataTypes>
+    <bitmap name="WaterHeaterDemandBitmap">
+      <bitfield name="ImmersionElement1" bit="0" summary="Immersion Heating Element1 State On">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="ImmersionElement2" bit="1" summary="Immersion Heating Element2 State On">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="HeatPump" bit="2" summary="Heat pump Heating State On">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Boiler" bit="3" summary="Boiler Heating State On">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Other" bit="4" summary="Other Heating State On">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="WaterHeaterTypeBitmap">
+      <bitfield name="ImmersionElement1" bit="0" summary="Supports Immersion Heating Element1">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="ImmersionElement2" bit="1" summary="Supports Immersion Heating Element2">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="HeatPump" bit="2" summary="Supports Heat pump Heating">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Boiler" bit="3" summary="Supports Boiler Heating (e.g. Gas or Oil)">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Other" bit="4" summary="Supports Other Heating">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="HeaterTypes" type="WaterHeaterTypeBitmap" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0001" name="HeatDemand" type="WaterHeaterDemandBitmap" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0002" name="TankVolume" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="EM"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0003" name="EstimatedHeatRequired" type="&lt;&lt;ref_Energy&gt;&gt;" default="0">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform>
+        <feature name="EM"/>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x0004" name="TankPercentage" type="percent" default="0">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x01" name="Boost" response="Y">
+      <access invokePrivilege="manage"/>
+      <mandatoryConform/>
+      <field id="0" name="Duration" type="elapsed-s">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="OneShot" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="EmergencyBoost" type="bool">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="TemporarySetpoint" type="temperature">
+        <optionalConform/>
+      </field>
+      <field id="4" name="TargetPercentage" type="percent">
+        <optionalConform/>
+      </field>
+      <field id="5" name="TargetReheat" type="percent">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x01" name="CancelBoost" response="Y">
+      <access invokePrivilege="manage"/>
+      <mandatoryConform/>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/WiFiPerDeviceCredentials.xml b/zcl-builtin/matter/new-data-model/WiFiPerDeviceCredentials.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e74e0b0595a099f00d38e8073945f6da9e8fcea6
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/WiFiPerDeviceCredentials.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="" name="Wi-Fi Authentication with Per-Device Credentials" revision=""/>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/WindowCovering.xml b/zcl-builtin/matter/new-data-model/WindowCovering.xml
new file mode 100644
index 0000000000000000000000000000000000000000..8ee9e0565c2ad164b13bb11ba9b38a7a2f42e347
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/WindowCovering.xml
@@ -0,0 +1,694 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0102" name="Window Covering" revision="5">
+  <revisionHistory>
+    <revision revision="1" summary="Mandatory global ClusterRevision attribute added; CCB 1994 1995 1996 1997 2086 2094 2095 2096 2097"/>
+    <revision revision="2" summary="CCB 2328"/>
+    <revision revision="3" summary="CCB 2477 2555 2845 3028"/>
+    <revision revision="4" summary="All Hubs changes with FeatureMap &amp; OperationalStatus attribute"/>
+    <revision revision="5" summary="New data model format and notation. Created plus clarified PositionAware and AbsolutePosition features. General cleanup of functionality."/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="WNCV" scope="Endpoint"/>
+  <features>
+    <feature bit="0" code="LF" name="Lift" summary="Lift control and behavior for lifting/sliding window coverings">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="1" code="TL" name="Tilt" summary="Tilt control and behavior for tilting window coverings">
+      <optionalConform choice="a" more="true"/>
+    </feature>
+    <feature bit="2" code="PA_LF" name="PositionAwareLift" summary="Position aware lift control is supported.">
+      <optionalConform>
+        <feature name="LF"/>
+      </optionalConform>
+    </feature>
+    <feature bit="3" code="ABS" name="AbsolutePosition" summary="Absolute positioning is supported.">
+      <optionalConform/>
+    </feature>
+    <feature bit="4" code="PA_TL" name="PositionAwareTilt" summary="Position aware tilt control is supported.">
+      <optionalConform>
+        <feature name="TL"/>
+      </optionalConform>
+    </feature>
+  </features>
+  <dataTypes>
+    <enum name="EndProductTypeEnum">
+      <item value="0" name="RollerShade" summary="Simple Roller Shade">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="1" name="RomanShade" summary="Roman Shade">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="2" name="BalloonShade" summary="Balloon Shade">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="3" name="WovenWood" summary="Woven Wood">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="4" name="PleatedShade" summary="Pleated Shade">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="5" name="CellularShade" summary="Cellular Shade">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="6" name="LayeredShade" summary="Layered Shade">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="7" name="LayeredShade2D" summary="Layered Shade 2D">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="8" name="SheerShade" summary="Sheer Shade">
+        <mandatoryConform>
+          <andTerm>
+            <feature name="LF"/>
+            <feature name="TL"/>
+          </andTerm>
+        </mandatoryConform>
+      </item>
+      <item value="9" name="TiltOnlyInteriorBlind" summary="Tilt Only Interior Blind">
+        <mandatoryConform>
+          <feature name="TL"/>
+        </mandatoryConform>
+      </item>
+      <item value="10" name="InteriorBlind" summary="Interior Blind">
+        <mandatoryConform>
+          <andTerm>
+            <feature name="LF"/>
+            <feature name="TL"/>
+          </andTerm>
+        </mandatoryConform>
+      </item>
+      <item value="11" name="VerticalBlindStripCurtain" summary="Vertical Blind, Strip Curtain">
+        <mandatoryConform>
+          <andTerm>
+            <feature name="LF"/>
+            <feature name="TL"/>
+          </andTerm>
+        </mandatoryConform>
+      </item>
+      <item value="12" name="InteriorVenetianBlind" summary="Interior Venetian Blind">
+        <mandatoryConform>
+          <andTerm>
+            <feature name="LF"/>
+            <feature name="TL"/>
+          </andTerm>
+        </mandatoryConform>
+      </item>
+      <item value="13" name="ExteriorVenetianBlind" summary="Exterior Venetian Blind">
+        <mandatoryConform>
+          <andTerm>
+            <feature name="LF"/>
+            <feature name="TL"/>
+          </andTerm>
+        </mandatoryConform>
+      </item>
+      <item value="14" name="LateralLeftCurtain" summary="Lateral Left Curtain">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="15" name="LateralRightCurtain" summary="Lateral Right Curtain">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="16" name="CentralCurtain" summary="Central Curtain">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="17" name="RollerShutter" summary="Roller Shutter">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="18" name="ExteriorVerticalScreen" summary="Exterior Vertical Screen">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="19" name="AwningTerracePatio" summary="Awning Terrace (Patio)">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="20" name="AwningVerticalScreen" summary="Awning Vertical Screen">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="21" name="TiltOnlyPergola" summary="Tilt Only Pergola">
+        <mandatoryConform>
+          <orTerm>
+            <feature name="LF"/>
+            <feature name="TL"/>
+          </orTerm>
+        </mandatoryConform>
+      </item>
+      <item value="22" name="SwingingShutter" summary="Swinging Shutter">
+        <mandatoryConform>
+          <orTerm>
+            <feature name="LF"/>
+            <feature name="TL"/>
+          </orTerm>
+        </mandatoryConform>
+      </item>
+      <item value="23" name="SlidingShutter" summary="Sliding Shutter">
+        <mandatoryConform>
+          <orTerm>
+            <feature name="LF"/>
+            <feature name="TL"/>
+          </orTerm>
+        </mandatoryConform>
+      </item>
+      <item value="255" name="Unknown" summary="Unknown">
+        <optionalConform/>
+      </item>
+    </enum>
+    <enum name="TypeEnum">
+      <item value="0" name="RollerShade" summary="RollerShade">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="1" name="RollerShade2Motor" summary="RollerShade - 2 Motor">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="2" name="RollerShadeExterior" summary="RollerShade - Exterior">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="3" name="RollerShadeExterior2Motor" summary="RollerShade - Exterior - 2 Motor">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="4" name="Drapery" summary="Drapery (curtain)">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="5" name="Awning" summary="Awning">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="6" name="Shutter" summary="Shutter">
+        <mandatoryConform>
+          <orTerm>
+            <feature name="LF"/>
+            <feature name="TL"/>
+          </orTerm>
+        </mandatoryConform>
+      </item>
+      <item value="7" name="TiltBlindTiltOnly" summary="Tilt Blind - Tilt Only">
+        <mandatoryConform>
+          <feature name="TL"/>
+        </mandatoryConform>
+      </item>
+      <item value="8" name="TiltBlindLiftAndTilt" summary="Tilt Blind - Lift &amp; Tilt">
+        <mandatoryConform>
+          <andTerm>
+            <feature name="LF"/>
+            <feature name="TL"/>
+          </andTerm>
+        </mandatoryConform>
+      </item>
+      <item value="9" name="ProjectorScreen" summary="Projector Screen">
+        <mandatoryConform>
+          <feature name="LF"/>
+        </mandatoryConform>
+      </item>
+      <item value="255" name="Unknown" summary="Unknown">
+        <optionalConform/>
+      </item>
+    </enum>
+    <bitmap name="ConfigStatusBitmap">
+      <bitfield name="Operational" bit="0" summary="Device is operational.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="OnlineReserved" bit="1" summary="Deprecated and reserved.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="LiftMovementReversed" bit="2" summary="The lift movement is reversed.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="LiftPositionAware" bit="3" summary="Supports the PositionAwareLift feature (PA_LF).">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="TiltPositionAware" bit="4" summary="Supports the PositionAwareTilt feature (PA_TL).">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="LiftEncoderControlled" bit="5" summary="Uses an encoder for lift.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="TiltEncoderControlled" bit="6" summary="Uses an encoder for tilt.">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="ModeBitmap">
+      <bitfield name="MotorDirectionReversed" bit="0" summary="Reverse the lift direction.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="CalibrationMode" bit="1" summary="Perform a calibration.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="MaintenanceMode" bit="2" summary="Freeze all motions for maintenance.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="LedFeedback" bit="3" summary="Control the LEDs feedback.">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="OperationalStatusBitmap">
+      <bitfield name="Global" summary="Global operational state.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Lift" summary="Lift operational state.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Tilt" summary="Tilt operational state.">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <bitmap name="SafetyStatusBitmap">
+      <bitfield name="RemoteLockout" bit="0" summary="Movement commands are ignored (locked out). e.g. not granted authorization, outside some time/date range.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="TamperDetection" bit="1" summary="Tampering detected on sensors or any other safety equipment. Ex: a device has been forcedly moved without its actuator(s).">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="FailedCommunication" bit="2" summary="Communication failure to sensors or other safety equipment.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="PositionFailure" bit="3" summary="Device has failed to reach the desired position. e.g. with position aware device, time expired before TargetPosition is reached.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="ThermalProtection" bit="4" summary="Motor(s) and/or electric circuit thermal protection activated.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="ObstacleDetected" bit="5" summary="An obstacle is preventing actuator movement.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Power" bit="6" summary="Device has power related issue or limitation e.g. device is running w/ the help of a backup battery or power might not be fully available at the moment.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="StopInput" bit="7" summary="Local safety sensor (not a direct obstacle) is preventing movements (e.g. Safety EU Standard EN60335).">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="MotorJammed" bit="8" summary="Mechanical problem related to the motor(s) detected.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="HardwareFailure" bit="9" summary="PCB, fuse and other electrics problems.">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="ManualOperation" bit="10" summary="Actuator is manually operated and is preventing actuator movement (e.g. actuator is disengaged/decoupled).">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="Protection" bit="11" summary="Protection is activated.">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="Type" type="TypeEnum" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0001" name="PhysicalClosedLimitLift" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform>
+        <andTerm>
+          <feature name="LF"/>
+          <feature name="PA_LF"/>
+          <feature name="ABS"/>
+        </andTerm>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0002" name="PhysicalClosedLimitTilt" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <optionalConform>
+        <andTerm>
+          <feature name="TL"/>
+          <feature name="PA_TL"/>
+          <feature name="ABS"/>
+        </andTerm>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0003" name="CurrentPositionLift" type="uint16" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform>
+        <andTerm>
+          <feature name="LF"/>
+          <feature name="PA_LF"/>
+          <feature name="ABS"/>
+        </andTerm>
+      </optionalConform>
+      <constraint type="between" from="InstalledOpenLimitLift" to="InstalledClosedLimitLift"/>
+    </attribute>
+    <attribute id="0x0004" name="CurrentPositionTilt" type="uint16" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform>
+        <andTerm>
+          <feature name="TL"/>
+          <feature name="PA_TL"/>
+          <feature name="ABS"/>
+        </andTerm>
+      </optionalConform>
+      <constraint type="between" from="InstalledOpenLimitTilt" to="InstalledClosedLimitTilt"/>
+    </attribute>
+    <attribute id="0x0005" name="NumberOfActuationsLift" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform>
+        <feature name="LF"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0006" name="NumberOfActuationsTilt" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <optionalConform>
+        <feature name="TL"/>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0007" name="ConfigStatus" type="ConfigStatusBitmap" default="desc">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x0008" name="CurrentPositionLiftPercentage" type="percent" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="true" persistence="nonVolatile" reportable="true"/>
+      <optionalConform>
+        <andTerm>
+          <feature name="LF"/>
+          <feature name="PA_LF"/>
+        </andTerm>
+      </optionalConform>
+    </attribute>
+    <attribute id="0x0009" name="CurrentPositionTiltPercentage" type="percent" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="true" persistence="nonVolatile" reportable="true"/>
+      <optionalConform>
+        <andTerm>
+          <feature name="TL"/>
+          <feature name="PA_TL"/>
+        </andTerm>
+      </optionalConform>
+      <constraint type="between" from="0" to="100"/>
+    </attribute>
+    <attribute id="0x000a" name="OperationalStatus" type="OperationalStatusBitmap" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <mandatoryConform/>
+      <constraint type="allowed" value="0b00xx xxxx"/>
+    </attribute>
+    <attribute id="0x000b" name="TargetPositionLiftPercent100ths" type="percent100ths" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="true" persistence="volatile" reportable="true"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="LF"/>
+          <feature name="PA_LF"/>
+        </andTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x000c" name="TargetPositionTiltPercent100ths" type="percent100ths" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="true" persistence="volatile" reportable="true"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="TL"/>
+          <feature name="PA_TL"/>
+        </andTerm>
+      </mandatoryConform>
+    </attribute>
+    <attribute id="0x000d" name="EndProductType" type="EndProductTypeEnum" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="desc"/>
+    </attribute>
+    <attribute id="0x000e" name="CurrentPositionLiftPercent100ths" type="percent100ths" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="true"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="LF"/>
+          <feature name="PA_LF"/>
+        </andTerm>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="10000"/>
+    </attribute>
+    <attribute id="0x000f" name="CurrentPositionTiltPercent100ths" type="percent100ths" default="null">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="true" scene="false" persistence="nonVolatile" reportable="true"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="TL"/>
+          <feature name="PA_TL"/>
+        </andTerm>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="10000"/>
+    </attribute>
+    <attribute id="0x0010" name="InstalledOpenLimitLift" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="LF"/>
+          <feature name="PA_LF"/>
+          <feature name="ABS"/>
+        </andTerm>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="65534"/>
+    </attribute>
+    <attribute id="0x0011" name="InstalledClosedLimitLift" type="uint16" default="65534">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="LF"/>
+          <feature name="PA_LF"/>
+          <feature name="ABS"/>
+        </andTerm>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="65534"/>
+    </attribute>
+    <attribute id="0x0012" name="InstalledOpenLimitTilt" type="uint16" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="TL"/>
+          <feature name="PA_TL"/>
+          <feature name="ABS"/>
+        </andTerm>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="65534"/>
+    </attribute>
+    <attribute id="0x0013" name="InstalledClosedLimitTilt" type="uint16" default="65534">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform>
+        <andTerm>
+          <feature name="TL"/>
+          <feature name="PA_TL"/>
+          <feature name="ABS"/>
+        </andTerm>
+      </mandatoryConform>
+      <constraint type="between" from="0" to="65534"/>
+    </attribute>
+    <attribute id="0x0014" name="VelocityLift">
+      <deprecateConform/>
+    </attribute>
+    <attribute id="0x0015" name="AccelerationTimeLift">
+      <deprecateConform/>
+    </attribute>
+    <attribute id="0x0016" name="DecelerationTimeLift">
+      <deprecateConform/>
+    </attribute>
+    <attribute id="0x0017" name="Mode" type="ModeBitmap" default="0">
+      <access read="true" write="true" readPrivilege="view" writePrivilege="manage"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="nonVolatile" reportable="false"/>
+      <mandatoryConform/>
+      <constraint type="allowed" value="0b0000 xxxx"/>
+    </attribute>
+    <attribute id="0x0018" name="IntermediateSetpointsLift">
+      <deprecateConform/>
+    </attribute>
+    <attribute id="0x0019" name="IntermediateSetpointsTilt">
+      <deprecateConform/>
+    </attribute>
+    <attribute id="0x001a" name="SafetyStatus" type="SafetyStatusBitmap" default="0">
+      <access read="true" readPrivilege="view"/>
+      <quality changeOmitted="false" nullable="false" scene="false" persistence="volatile" reportable="true"/>
+      <optionalConform/>
+      <constraint type="desc"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="UpOrOpen" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x01" name="DownOrClose" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x02" name="StopMotion" response="Y">
+      <access invokePrivilege="operate"/>
+      <mandatoryConform/>
+    </command>
+    <command id="0x04" name="GoToLiftValue" response="Y">
+      <access invokePrivilege="operate"/>
+      <optionalConform>
+        <andTerm>
+          <feature name="LF"/>
+          <feature name="ABS"/>
+        </andTerm>
+      </optionalConform>
+      <field id="0" name="LiftValue" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x05" name="GoToLiftPercentage" response="Y">
+      <access invokePrivilege="operate"/>
+      <otherwiseConform>
+        <mandatoryConform>
+          <andTerm>
+            <feature name="LF"/>
+            <feature name="PA_LF"/>
+          </andTerm>
+        </mandatoryConform>
+        <optionalConform>
+          <feature name="LF"/>
+        </optionalConform>
+      </otherwiseConform>
+      <field id="0" name="LiftPercentageValue" type="percent">
+        <optionalConform choice="a"/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="LiftPercent100thsValue" type="percent100ths">
+        <optionalConform choice="a"/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x07" name="GoToTiltValue" response="Y">
+      <access invokePrivilege="operate"/>
+      <optionalConform>
+        <andTerm>
+          <feature name="TL"/>
+          <feature name="ABS"/>
+        </andTerm>
+      </optionalConform>
+      <field id="0" name="TiltValue" type="uint16">
+        <mandatoryConform/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+    <command id="0x08" name="GoToTiltPercentage" response="Y">
+      <access invokePrivilege="operate"/>
+      <otherwiseConform>
+        <mandatoryConform>
+          <andTerm>
+            <feature name="TL"/>
+            <feature name="PA_TL"/>
+          </andTerm>
+        </mandatoryConform>
+        <optionalConform>
+          <feature name="TL"/>
+        </optionalConform>
+      </otherwiseConform>
+      <field id="0" name="TiltPercentageValue" type="percent">
+        <optionalConform choice="a"/>
+        <constraint type="desc"/>
+      </field>
+      <field id="1" name="TiltPercent100thsValue" type="percent100ths">
+        <optionalConform choice="a"/>
+        <constraint type="desc"/>
+      </field>
+    </command>
+  </commands>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/bridge-clusters-Actions.xml b/zcl-builtin/matter/new-data-model/bridge-clusters-Actions.xml
new file mode 100644
index 0000000000000000000000000000000000000000..3ffd669fb9a706d610d6dd1ff546a010428f5efc
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/bridge-clusters-Actions.xml
@@ -0,0 +1,378 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0025" name="Actions" revision="1">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+  </revisionHistory>
+  <classification hierarchy="base" role="application" picsCode="ACT" scope="Node"/>
+  <dataTypes>
+    <enum name="ActionErrorEnum">
+      <item value="0" name="Unknown" summary="Other reason not listed in the row(s) below">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Interrupted" summary="The action was interrupted by another command or interaction">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="ActionStateEnum">
+      <item value="0" name="Inactive" summary="The action is not active">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Active" summary="The action is active">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Paused" summary="The action has been paused">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Disabled" summary="The action has been disabled">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="ActionTypeEnum">
+      <item value="0" name="Other" summary="Use this only when none of the other values applies">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Scene" summary="Bring the endpoints into a certain state">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Sequence" summary="A sequence of states with a certain time pattern">
+        <mandatoryConform/>
+      </item>
+      <item value="3" name="Automation" summary="Control an automation (e.g. motion sensor controlling lights)">
+        <mandatoryConform/>
+      </item>
+      <item value="4" name="Exception" summary="Sequence that will run when something doesn't happen">
+        <mandatoryConform/>
+      </item>
+      <item value="5" name="Notification" summary="Use the endpoints to send a message to user">
+        <mandatoryConform/>
+      </item>
+      <item value="6" name="Alarm" summary="Higher priority notification">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <enum name="EndpointListTypeEnum">
+      <item value="0" name="Other" summary="Another group of endpoints">
+        <mandatoryConform/>
+      </item>
+      <item value="1" name="Room" summary="User-configured group of endpoints where an endpoint can be in only one room">
+        <mandatoryConform/>
+      </item>
+      <item value="2" name="Zone" summary="User-configured group of endpoints where an endpoint can be in any number of zones">
+        <mandatoryConform/>
+      </item>
+    </enum>
+    <bitmap name="CommandBits">
+      <bitfield name="InstantAction" bit="0" summary="Indicate support for InstantAction command">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="InstantActionWithTransition" bit="1" summary="Indicate support for InstantActionWithTransition command">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="StartAction" bit="2" summary="Indicate support for StartAction command">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="StartActionWithDuration" bit="3" summary="Indicate support for StartActionWithDuration command">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="StopAction" bit="4" summary="Indicate support for StopAction command">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="PauseAction" bit="5" summary="Indicate support for PauseAction command">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="PauseActionWithDuration" bit="6" summary="Indicate support for PauseActionWithDuration command">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="ResumeAction" bit="7" summary="Indicate support for ResumeAction command">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="EnableAction" bit="8" summary="Indicate support for EnableAction command">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="EnableActionWithDuration" bit="9" summary="Indicate support for EnableActionWithDuration command">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="DisableAction" bit="10" summary="Indicate support for DisableAction command">
+        <mandatoryConform/>
+      </bitfield>
+      <bitfield name="DisableActionWithDuration" bit="11" summary="Indicate support for DisableActionWithDuration command">
+        <mandatoryConform/>
+      </bitfield>
+    </bitmap>
+    <struct name="ActionStruct">
+      <field id="0" name="ActionID" type="uint16">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Name" type="&lt;&lt;ref_DataTypeString&gt;&gt;">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="Type" type="ActionTypeEnum">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="EndpointListID" type="uint16">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="4" name="SupportedCommands" type="CommandBits">
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="between" from="0" to="0x0FFF"/>
+      </field>
+      <field id="5" name="State" type="ActionStateEnum">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+    </struct>
+    <struct name="EndpointListStruct">
+      <field id="0" name="EndpointListID" type="uint16">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="Name" type="&lt;&lt;ref_DataTypeString&gt;&gt;">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="Type" type="EndpointListTypeEnum">
+        <access read="true"/>
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="Endpoints" type="&lt;&lt;ref_DataTypeList&gt;&gt;[&lt;&lt;ref_DataTypeEndpointNumber&gt;&gt;]">
+        <access read="true"/>
+        <mandatoryConform/>
+        <constraint type="max" value="256"/>
+      </field>
+    </struct>
+  </dataTypes>
+  <attributes>
+    <attribute id="0x0000" name="ActionList" type="&lt;&lt;ref_DataTypeList&gt;&gt;[ActionStruct Type]" default="empty">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="max" value="256"/>
+    </attribute>
+    <attribute id="0x0001" name="EndpointLists" type="&lt;&lt;ref_DataTypeList&gt;&gt;[EndpointListStruct Type]" default="empty">
+      <access read="true" readPrivilege="view"/>
+      <mandatoryConform/>
+      <constraint type="max" value="256"/>
+    </attribute>
+    <attribute id="0x0002" name="SetupURL" type="&lt;&lt;ref_DataTypeString&gt;&gt;" default="empty">
+      <access read="true" readPrivilege="view"/>
+      <optionalConform/>
+      <constraint type="max" value="512"/>
+    </attribute>
+  </attributes>
+  <commands>
+    <command id="0x00" name="InstantAction" response="Y">
+      <access invokePrivilege="operate"/>
+      <field id="0" name="ActionID" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="InvokeID" type="uint32">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x01" name="InstantActionWithTransition" response="Y">
+      <access invokePrivilege="operate"/>
+      <field id="0" name="ActionID" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="InvokeID" type="uint32">
+        <optionalConform/>
+      </field>
+      <field id="2" name="TransitionTime" type="uint16" default="MS">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x02" name="StartAction" response="Y">
+      <access invokePrivilege="operate"/>
+      <field id="0" name="ActionID" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="InvokeID" type="uint32">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x03" name="StartActionWithDuration" response="Y">
+      <access invokePrivilege="operate"/>
+      <field id="0" name="ActionID" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="InvokeID" type="uint32">
+        <optionalConform/>
+      </field>
+      <field id="2" name="Duration" type="uint32" default="MS">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x04" name="StopAction" response="Y">
+      <access invokePrivilege="operate"/>
+      <field id="0" name="ActionID" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="InvokeID" type="uint32">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x05" name="PauseAction" response="Y">
+      <access invokePrivilege="operate"/>
+      <field id="0" name="ActionID" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="InvokeID" type="uint32">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x06" name="PauseActionWithDuration" response="Y">
+      <access invokePrivilege="operate"/>
+      <field id="0" name="ActionID" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="InvokeID" type="uint32">
+        <optionalConform/>
+      </field>
+      <field id="2" name="Duration" type="uint32" default="MS">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x07" name="ResumeAction" response="Y">
+      <access invokePrivilege="operate"/>
+      <field id="0" name="ActionID" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="InvokeID" type="uint32">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x08" name="EnableAction" response="Y">
+      <access invokePrivilege="operate"/>
+      <field id="0" name="ActionID" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="InvokeID" type="uint32">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x09" name="EnableActionWithDuration" response="Y">
+      <access invokePrivilege="operate"/>
+      <field id="0" name="ActionID" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="InvokeID" type="uint32">
+        <optionalConform/>
+      </field>
+      <field id="2" name="Duration" type="uint32" default="MS">
+        <mandatoryConform/>
+      </field>
+    </command>
+    <command id="0x0a" name="DisableAction" response="Y">
+      <access invokePrivilege="operate"/>
+      <field id="0" name="ActionID" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="InvokeID" type="uint32">
+        <optionalConform/>
+      </field>
+    </command>
+    <command id="0x0b" name="DisableActionWithDuration" response="Y">
+      <access invokePrivilege="operate"/>
+      <field id="0" name="ActionID" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="InvokeID" type="uint32">
+        <optionalConform/>
+      </field>
+      <field id="2" name="Duration" type="uint32" default="MS">
+        <mandatoryConform/>
+      </field>
+    </command>
+  </commands>
+  <events>
+    <event id="0x00" name="StateChanged" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+      <field id="0" name="ActionID" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="InvokeID" type="uint32">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="NewState" type="ActionStateEnum">
+        <mandatoryConform/>
+      </field>
+    </event>
+    <event id="0x01" name="ActionFailed" priority="info">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+      <field id="0" name="ActionID" type="uint16">
+        <mandatoryConform/>
+      </field>
+      <field id="1" name="InvokeID" type="uint32">
+        <mandatoryConform/>
+      </field>
+      <field id="2" name="NewState" type="ActionStateEnum">
+        <mandatoryConform/>
+      </field>
+      <field id="3" name="Error" type="ActionErrorEnum">
+        <mandatoryConform/>
+      </field>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/bridge-clusters-BridgedDeviceBasicInformation.xml b/zcl-builtin/matter/new-data-model/bridge-clusters-BridgedDeviceBasicInformation.xml
new file mode 100644
index 0000000000000000000000000000000000000000..8d839c03def7f132702b99cfba66f530ab0b4eb8
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/bridge-clusters-BridgedDeviceBasicInformation.xml
@@ -0,0 +1,154 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2021). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="0x0039" name="Bridged Device Basic Information" revision="3">
+  <revisionHistory>
+    <revision revision="1" summary="Initial Release"/>
+    <revision revision="2" summary="Added ProductAppearance attribute"/>
+    <revision revision="3" summary="Added SpecificationVersion and MaxPathsPerInvoke attributes"/>
+  </revisionHistory>
+  <classification hierarchy="derived" baseCluster="Basic Information" role="utility" picsCode="BRBINFO" scope="Endpoint"/>
+  <attributes>
+    <attribute id="0x0000" name="DataModelRevision">
+      <disallowConform/>
+    </attribute>
+    <attribute id="0x0001" name="VendorName">
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0002" name="VendorID">
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0003" name="ProductName">
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0004" name="ProductID">
+      <disallowConform/>
+    </attribute>
+    <attribute id="0x0005" name="NodeLabel">
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0006" name="Location">
+      <disallowConform/>
+    </attribute>
+    <attribute id="0x0007" name="HardwareVersion">
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0008" name="HardwareVersionString">
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0009" name="SoftwareVersion">
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x000a" name="SoftwareVersionString">
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x000b" name="ManufacturingDate">
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x000c" name="PartNumber">
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x000d" name="ProductURL">
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x000e" name="ProductLabel">
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x000f" name="SerialNumber">
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0010" name="LocalConfigDisabled">
+      <disallowConform/>
+    </attribute>
+    <attribute id="0x0011" name="Reachable">
+      <mandatoryConform/>
+    </attribute>
+    <attribute id="0x0012" name="UniqueID">
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0013" name="CapabilityMinima">
+      <disallowConform/>
+    </attribute>
+    <attribute id="0x0014" name="ProductAppearance">
+      <optionalConform/>
+    </attribute>
+    <attribute id="0x0015" name="SpecificationVersion">
+      <disallowConform/>
+    </attribute>
+    <attribute id="0x0016" name="MaxPathsPerInvoke">
+      <disallowConform/>
+    </attribute>
+  </attributes>
+  <events>
+    <event id="0x00" name="StartUp">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x01" name="ShutDown">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x02" name="Leave">
+      <access readPrivilege="view"/>
+      <optionalConform/>
+    </event>
+    <event id="0x03" name="ReachableChanged">
+      <access readPrivilege="view"/>
+      <mandatoryConform/>
+    </event>
+  </events>
+</cluster>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/energy_management.xml b/zcl-builtin/matter/new-data-model/energy_management.xml
new file mode 100644
index 0000000000000000000000000000000000000000..6a5b85d938cf712d2adbaa97be65063dcc116982
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/energy_management.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<!--
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="" name="Energy Management" revision=""/>
\ No newline at end of file
diff --git a/zcl-builtin/matter/new-data-model/network_infrastructure.xml b/zcl-builtin/matter/new-data-model/network_infrastructure.xml
new file mode 100644
index 0000000000000000000000000000000000000000..c4af2bf04f979afa3f68151a6ec4587af7ee3a88
--- /dev/null
+++ b/zcl-builtin/matter/new-data-model/network_infrastructure.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<!--
+Chapter Document 14-0127
+
+Cluster Library 07-5123
+
+Copyright (C) Connectivity Standards Alliance (2023). All rights reserved.
+The information within this document is the property of the Connectivity
+Standards Alliance and its use and disclosure are restricted, except as
+expressly set forth herein.
+
+Connectivity Standards Alliance hereby grants you a fully-paid, non-exclusive,
+nontransferable, worldwide, limited and revocable license (without the right to
+sublicense), under Connectivity Standards Alliance's applicable copyright
+rights, to view, download, save, reproduce and use the document solely for your
+own internal purposes and in accordance with the terms of the license set forth
+herein. This license does not authorize you to, and you expressly warrant that
+you shall not: (a) permit others (outside your organization) to use this
+document; (b) post or publish this document; (c) modify, adapt, translate, or
+otherwise change this document in any manner or create any derivative work
+based on this document; (d) remove or modify any notice or label on this
+document, including this Copyright Notice, License and Disclaimer. The
+Connectivity Standards Alliance does not grant you any license hereunder other
+than as expressly stated herein.
+
+Elements of this document may be subject to third party intellectual property
+rights, including without limitation, patent, copyright or trademark rights,
+and any such third party may or may not be a member of the Connectivity
+Standards Alliance. Connectivity Standards Alliance members grant other
+Connectivity Standards Alliance members certain intellectual property rights as
+set forth in the Connectivity Standards Alliance IPR Policy. Connectivity
+Standards Alliance members do not grant you any rights under this license. The
+Connectivity Standards Alliance is not responsible for, and shall not be held
+responsible in any manner for, identifying or failing to identify any or all
+such third party intellectual property rights. Please visit www.csa-iot.org for
+more information on how to become a member of the Connectivity Standards
+Alliance.
+
+This document and the information contained herein are provided on an “AS IS”
+basis and the Connectivity Standards Alliance DISCLAIMS ALL WARRANTIES EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE
+INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING
+WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT
+OR TRADEMARK RIGHTS); OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL THE
+CONNECTIVITY STANDARDS ALLIANCE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF
+BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER
+DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL
+DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT
+OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+LOSS OR DAMAGE.
+
+All company, brand and product names in this document may be trademarks that
+are the sole property of their respective owners.
+
+This notice and disclaimer must be included on all copies of this document.
+
+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="" name="Network Infrastructure" revision=""/>
\ No newline at end of file
diff --git a/zcl-builtin/matter/zcl.json b/zcl-builtin/matter/zcl.json
index a66aaceaa74a3f51dcd2af74f555ce4bfe359ce8..60797dd0b5c1240c42ffa0b611a2a538ba6321c7 100644
--- a/zcl-builtin/matter/zcl.json
+++ b/zcl-builtin/matter/zcl.json
@@ -9,6 +9,7 @@
     "./data-model/silabs/"
   ],
   "_comment": "Ensure access-control-definitions.xml is first in xmlFile array",
+  "newXmlFile": [],
   "xmlFile": [
     "access-control-definitions.xml",
     "chip-types.xml",