Skip to content

Commit ec01ce2

Browse files
Updated xml to spec with Alchemy
1 parent 80a647c commit ec01ce2

File tree

1 file changed

+89
-111
lines changed
  • src/app/zap-templates/zcl/data-model/chip

1 file changed

+89
-111
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0"?>
22
<!--
3-
Copyright (c) 2022 Project CHIP Authors
3+
Copyright (c) 2022-2025 Project CHIP Authors
44
55
Licensed under the Apache License, Version 2.0 (the "License");
66
you may not use this file except in compliance with the License.
@@ -14,54 +14,60 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1414
See the License for the specific language governing permissions and
1515
limitations under the License.
1616
-->
17-
<configurator>
17+
<!--
18+
XML generated by Alchemy; DO NOT EDIT.
19+
Source: src/app_clusters/Scenes.adoc
20+
Parameters: in-progress
21+
Git: 1.4-1773-g2b8c413df
22+
-->
23+
<configurator xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../zcl.xsd">
1824
<bitmap name="CopyModeBitmap" type="bitmap8">
1925
<cluster code="0x0062"/>
2026
<field name="CopyAllScenes" mask="0x01"/>
2127
</bitmap>
2228

2329
<struct name="SceneInfoStruct" isFabricScoped="true">
2430
<cluster code="0x0062"/>
25-
<item name="SceneCount" type="int8u" optional="false"/>
26-
<item name="CurrentScene" type="int8u" optional="false" isFabricSensitive="true"/>
27-
<item name="CurrentGroup" type="group_id" optional="false" isFabricSensitive="true"/>
28-
<item name="SceneValid" type="boolean" optional="false" isFabricSensitive="true"/>
29-
<item name="RemainingCapacity" type="int8u" optional="false"/>
31+
<item fieldId="0" name="SceneCount" type="int8u" default="0"/>
32+
<item fieldId="1" name="CurrentScene" type="int8u" isFabricSensitive="true" default="0xFF"/>
33+
<item fieldId="2" name="CurrentGroup" type="group_id" isFabricSensitive="true" default="0"/>
34+
<item fieldId="3" name="SceneValid" type="boolean" isFabricSensitive="true" default="0"/>
35+
<item fieldId="4" name="RemainingCapacity" type="int8u" max="253"/>
3036
</struct>
3137

3238
<struct name="AttributeValuePairStruct">
3339
<cluster code="0x0062"/>
34-
<item name="AttributeID" type="attrib_id" optional="false"/>
35-
<item name="ValueUnsigned8" type="int8u" optional="true">
40+
<item fieldId="0" name="AttributeID" type="attrib_id"/>
41+
<item fieldId="1" name="ValueUnsigned8" type="int8u" optional="true">
3642
<optionalConform choice="a"/>
3743
</item>
38-
<item name="ValueSigned8" type="int8s" optional="true">
44+
<item fieldId="2" name="ValueSigned8" type="int8s" optional="true">
3945
<optionalConform choice="a"/>
4046
</item>
41-
<item name="ValueUnsigned16" type="int16u" optional="true">
47+
<item fieldId="3" name="ValueUnsigned16" type="int16u" optional="true">
4248
<optionalConform choice="a"/>
4349
</item>
44-
<item name="ValueSigned16" type="int16s" optional="true">
50+
<item fieldId="4" name="ValueSigned16" type="int16s" optional="true">
4551
<optionalConform choice="a"/>
4652
</item>
47-
<item name="ValueUnsigned32" type="int32u" optional="true">
53+
<item fieldId="5" name="ValueUnsigned32" type="int32u" optional="true">
4854
<optionalConform choice="a"/>
4955
</item>
50-
<item name="ValueSigned32" type="int32s" optional="true">
56+
<item fieldId="6" name="ValueSigned32" type="int32s" optional="true">
5157
<optionalConform choice="a"/>
5258
</item>
53-
<item name="ValueUnsigned64" type="int64u" optional="true">
59+
<item fieldId="7" name="ValueUnsigned64" type="int64u" optional="true">
5460
<optionalConform choice="a"/>
5561
</item>
56-
<item name="ValueSigned64" type="int64s" optional="true">
62+
<item fieldId="8" name="ValueSigned64" type="int64s" optional="true">
5763
<optionalConform choice="a"/>
5864
</item>
5965
</struct>
6066

61-
<struct name="ExtensionFieldSet">
67+
<struct name="ExtensionFieldSetStruct">
6268
<cluster code="0x0062"/>
63-
<item name="ClusterID" type="cluster_id"/>
64-
<item name="AttributeValueList" type="AttributeValuePairStruct" array="true"/>
69+
<item fieldId="0" name="ClusterID" type="cluster_id"/>
70+
<item fieldId="1" name="AttributeValueList" type="AttributeValuePairStruct" array="true"/>
6571
</struct>
6672

6773
<domain name="CHIP"/>
@@ -74,178 +80,150 @@ limitations under the License.
7480
<client tick="false" init="false">true</client>
7581
<server tick="false" init="false">true</server>
7682
<globalAttribute side="either" code="0xFFFD" value="1"/>
77-
7883
<features>
7984
<feature bit="0" code="SN" name="SceneNames" summary="The ability to store a name for a scene.">
8085
<optionalConform/>
8186
</feature>
8287
</features>
83-
<attribute side="server" code="0x0000" name="LastConfiguredBy" define="LAST_CONFIGURED_BY" type="node_id" isNullable="true" optional="true">
84-
<optionalConform/>
85-
</attribute>
86-
<attribute side="server" code="0x0001" name="SceneTableSize" define="SCENE_TABLE_SIZE" type="int16u" min="16" default="16">
87-
<mandatoryConform/>
88-
</attribute>
89-
<attribute side="server" code="0x0002" name="FabricSceneInfo" define="FABRIC_SCENE_INFO" type="array" entryType="SceneInfoStruct">
90-
<mandatoryConform/>
91-
</attribute>
92-
88+
<attribute side="server" code="0x0000" name="SceneTableSize" define="SCENE_TABLE_SIZE" type="int16u" default="16">SceneTableSize</attribute>
89+
<attribute side="server" code="0x0001" name="FabricSceneInfo" define="FABRIC_SCENE_INFO" type="array" entryType="SceneInfoStruct">FabricSceneInfo</attribute>
9390
<command source="client" code="0x00" name="AddScene" response="AddSceneResponse" isFabricScoped="true" optional="false" cli="chip scenes add">
94-
<description>
95-
Add a scene to the scene table. Extension field sets are supported, and are inputed as '{"ClusterID": VALUE, "AttributeValueList":[{"AttributeID": VALUE, "Value*": VALUE}]}'
96-
</description>
97-
<arg name="GroupID" type="group_id"/>
98-
<arg name="SceneID" type="int8u"/>
99-
<arg name="TransitionTime" type="int32u"/>
100-
<arg name="SceneName" type="char_string"/>
101-
<arg name="ExtensionFieldSets" type="ExtensionFieldSet" array="true"/>
91+
<description>It is not mandatory for an extension field set to be included in the command for every cluster on that endpoint that has a defined extension field set.</description>
92+
<arg id="0" name="GroupID" type="group_id"/>
93+
<arg id="1" name="SceneID" type="int8u" max="254"/>
94+
<arg id="2" name="TransitionTime" type="int32u" max="60000000"/>
95+
<arg id="3" name="SceneName" type="char_string" length="16"/>
96+
<arg id="4" name="ExtensionFieldSetStructs" type="ExtensionFieldSetStruct" array="true"/>
10297
<access op="invoke" role="manage"/>
103-
<mandatoryConform/>
10498
</command>
105-
99+
106100
<command source="client" code="0x01" name="ViewScene" response="ViewSceneResponse" isFabricScoped="true" optional="false" cli="chip scenes view">
107101
<description>
108102
Retrieves the requested scene entry from its Scene table.
109103
</description>
110-
<arg name="GroupID" type="group_id"/>
111-
<arg name="SceneID" type="int8u"/>
112-
<mandatoryConform/>
104+
<arg id="0" name="GroupID" type="group_id"/>
105+
<arg id="1" name="SceneID" type="int8u" max="254"/>
113106
</command>
114-
107+
115108
<command source="client" code="0x02" name="RemoveScene" response="RemoveSceneResponse" isFabricScoped="true" optional="false" cli="chip scenes remove">
116109
<description>
117110
Removes the requested scene entry, corresponding to the value of the GroupID field, from its Scene Table
118111
</description>
119-
<arg name="GroupID" type="group_id"/>
120-
<arg name="SceneID" type="int8u"/>
112+
<arg id="0" name="GroupID" type="group_id"/>
113+
<arg id="1" name="SceneID" type="int8u" max="254"/>
121114
<access op="invoke" role="manage"/>
122-
<mandatoryConform/>
123115
</command>
124-
116+
125117
<command source="client" code="0x03" name="RemoveAllScenes" response="RemoveAllScenesResponse" isFabricScoped="true" optional="false" cli="chip scenes rmall">
126118
<description>
127119
Remove all scenes, corresponding to the value of the GroupID field, from its Scene Table
128120
</description>
129-
<arg name="GroupID" type="group_id"/>
121+
<arg id="0" name="GroupID" type="group_id"/>
130122
<access op="invoke" role="manage"/>
131-
<mandatoryConform/>
132123
</command>
133-
124+
134125
<command source="client" code="0x04" name="StoreScene" response="StoreSceneResponse" isFabricScoped="true" optional="false" cli="chip scenes store">
135126
<description>
136127
Adds the scene entry into its Scene Table along with all extension field sets corresponding to the current state of other clusters on the same endpoint
137128
</description>
138-
<arg name="GroupID" type="group_id"/>
139-
<arg name="SceneID" type="int8u"/>
129+
<arg id="0" name="GroupID" type="group_id"/>
130+
<arg id="1" name="SceneID" type="int8u" max="254"/>
140131
<access op="invoke" role="manage"/>
141-
<mandatoryConform/>
142132
</command>
143-
133+
144134
<command source="client" code="0x05" name="RecallScene" isFabricScoped="true" optional="false" cli="chip scenes recall">
145135
<description>
146136
Set the attributes and corresponding state for each other cluster implemented on the endpoint accordingly to the resquested scene entry in the Scene Table
147137
</description>
148-
<arg name="GroupID" type="group_id"/>
149-
<arg name="SceneID" type="int8u"/>
150-
<arg name="TransitionTime" type="int32u" optional="true" isNullable="true"/>
151-
<mandatoryConform/>
138+
<arg id="0" name="GroupID" type="group_id"/>
139+
<arg id="1" name="SceneID" type="int8u" max="254"/>
140+
<arg id="2" name="TransitionTime" type="int32u" optional="true" isNullable="true" max="60000000"/>
152141
</command>
153-
142+
154143
<command source="client" code="0x06" name="GetSceneMembership" response="GetSceneMembershipResponse" isFabricScoped="true" optional="false" cli="chip scenes get">
155-
<description>
156-
Get an unused scene identifier when no commissioning tool is in the network, or for a commissioning tool to get the used scene identifiers within a certain group
157-
</description>
158-
<arg name="GroupID" type="group_id"/>
159-
<mandatoryConform/>
144+
<description>This command can be used to get the used scene identifiers within a certain group, for the endpoint that implements this cluster.</description>
145+
<arg id="0" name="GroupID" type="group_id"/>
160146
</command>
161147

162148
<command source="client" code="0x40" name="CopyScene" response="CopySceneResponse" isFabricScoped="true" optional="true" cli="chip scenes copy">
163-
<description>
164-
Allows a client to efficiently copy scenes from one group/scene identifier pair to another group/scene identifier pair.
165-
</description>
166-
<arg name="Mode" type="CopyModeBitmap"/>
167-
<arg name="GroupIdentifierFrom" type="group_id"/>
168-
<arg name="SceneIdentifierFrom" type="int8u"/>
169-
<arg name="GroupIdentifierTo" type="group_id"/>
170-
<arg name="SceneIdentifierTo" type="int8u"/>
171-
<optionalConform/>
149+
<description>This command allows a client to efficiently copy scenes from one group/scene identifier pair to another group/scene identifier pair.</description>
150+
<arg id="0" name="Mode" type="CopyModeBitmap" min="0x00" max="0x01"/>
151+
<arg id="1" name="GroupIdentifierFrom" type="group_id"/>
152+
<arg id="2" name="SceneIdentifierFrom" type="int8u" max="254"/>
153+
<arg id="3" name="GroupIdentifierTo" type="group_id"/>
154+
<arg id="4" name="SceneIdentifierTo" type="int8u" max="254"/>
172155
<access op="invoke" role="manage"/>
156+
<optionalConform/>
173157
</command>
174-
158+
175159
<command source="server" code="0x00" name="AddSceneResponse" optional="false" disableDefaultResponse="true">
176160
<description>
177161
The command is generated in response to a received unicast AddScene command,
178162
</description>
179-
<arg name="Status" type="status"/>
180-
<arg name="GroupID" type="group_id"/>
181-
<arg name="SceneID" type="int8u"/>
182-
<mandatoryConform/>
163+
<arg id="0" name="Status" type="status"/>
164+
<arg id="1" name="GroupID" type="group_id"/>
165+
<arg id="2" name="SceneID" type="int8u" max="254"/>
183166
</command>
184-
167+
185168
<command source="server" code="0x01" name="ViewSceneResponse" optional="false" disableDefaultResponse="true">
186169
<description>
187170
The command is generated in response to a received unicast ViewScene command
188171
</description>
189-
<arg name="Status" type="status"/>
190-
<arg name="GroupID" type="group_id"/>
191-
<arg name="SceneID" type="int8u"/>
192-
<arg name="TransitionTime" type="int32u" optional="true"/>
193-
<arg name="SceneName" type="char_string" optional="true"/>
194-
<arg name="ExtensionFieldSets" type="ExtensionFieldSet" array="true" optional="true"/>
195-
<mandatoryConform/>
172+
<arg id="0" name="Status" type="status"/>
173+
<arg id="1" name="GroupID" type="group_id"/>
174+
<arg id="2" name="SceneID" type="int8u" max="254"/>
175+
<arg id="3" name="TransitionTime" type="int32u" optional="true" max="60000000"/>
176+
<arg id="4" name="SceneName" type="char_string" optional="true" length="16"/>
177+
<arg id="5" name="ExtensionFieldSetStructs" type="ExtensionFieldSetStruct" array="true" optional="true"/>
196178
</command>
197-
179+
198180
<command source="server" code="0x02" name="RemoveSceneResponse" optional="false" disableDefaultResponse="true">
199181
<description>
200182
The command is generated in response to a received unicast RemoveScene command
201183
</description>
202-
<arg name="Status" type="status"/>
203-
<arg name="GroupID" type="group_id"/>
204-
<arg name="SceneID" type="int8u"/>
205-
<mandatoryConform/>
184+
<arg id="0" name="Status" type="status"/>
185+
<arg id="1" name="GroupID" type="group_id"/>
186+
<arg id="2" name="SceneID" type="int8u" max="254"/>
206187
</command>
207-
188+
208189
<command source="server" code="0x03" name="RemoveAllScenesResponse" optional="false" disableDefaultResponse="true">
209190
<description>
210191
The command is generated in response to a received unicast RemoveAllScenes command
211192
</description>
212-
<arg name="Status" type="status"/>
213-
<arg name="GroupID" type="group_id"/>
214-
<mandatoryConform/>
193+
<arg id="0" name="Status" type="status"/>
194+
<arg id="1" name="GroupID" type="group_id"/>
215195
</command>
216-
196+
217197
<command source="server" code="0x04" name="StoreSceneResponse" optional="false" disableDefaultResponse="true">
218198
<description>
219199
The command is generated in response to a received unicast StoreScene command
220200
</description>
221-
<arg name="Status" type="status"/>
222-
<arg name="GroupID" type="group_id"/>
223-
<arg name="SceneID" type="int8u"/>
224-
<mandatoryConform/>
201+
<arg id="0" name="Status" type="status"/>
202+
<arg id="1" name="GroupID" type="group_id"/>
203+
<arg id="2" name="SceneID" type="int8u" max="254"/>
225204
</command>
226-
205+
227206
<command source="server" code="0x06" name="GetSceneMembershipResponse" optional="false" disableDefaultResponse="true">
228207
<description>
229208
The command is generated in response to a received unicast GetSceneMembership command
230209
</description>
231-
<arg name="Status" type="status"/>
232-
<arg name="Capacity" type="int8u" isNullable="true"/>
233-
<arg name="GroupID" type="group_id"/>
234-
<arg name="SceneList" type="int8u" array="true" optional="true"/>
235-
<mandatoryConform/>
210+
<arg id="0" name="Status" type="status"/>
211+
<arg id="1" name="Capacity" type="int8u" isNullable="true"/>
212+
<arg id="2" name="GroupID" type="group_id"/>
213+
<arg id="3" name="SceneList" type="int8u" array="true" optional="true"/>
236214
</command>
237215

238216
<command source="server" code="0x40" name="CopySceneResponse" optional="true" disableDefaultResponse="true">
239217
<description>
240218
The command is generated in response to a received unicast CopyScene command
241219
</description>
242-
<arg name="Status" type="status"/>
243-
<arg name="GroupIdentifierFrom" type="group_id"/>
244-
<arg name="SceneIdentifierFrom" type="int8u"/>
220+
<arg id="0" name="Status" type="status"/>
221+
<arg id="1" name="GroupIdentifierFrom" type="group_id"/>
222+
<arg id="2" name="SceneIdentifierFrom" type="int8u" max="254"/>
245223
<mandatoryConform>
246224
<command name="CopyScene"/>
247225
</mandatoryConform>
248226
</command>
249-
</cluster>
250227

228+
</cluster>
251229
</configurator>

0 commit comments

Comments
 (0)