1<?xml version="1.0" encoding="UTF-8"?>
2<!---->
3<!--################################################################################       -->
4<!--# Redfish Schema:  OutletGroup v1.2.0                                                  -->
5<!--#                                                                                      -->
6<!--# For a detailed change log, see the README file contained in the DSP8010 bundle,      -->
7<!--# available at http://www.dmtf.org/standards/redfish                                   -->
8<!--# Copyright 2014-2024 DMTF.                                                            -->
9<!--# For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright -->
10<!--################################################################################       -->
11<!---->
12<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
13
14  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Core.V1.xml">
15    <edmx:Include Namespace="Org.OData.Core.V1" Alias="OData"/>
16  </edmx:Reference>
17  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Capabilities.V1.xml">
18    <edmx:Include Namespace="Org.OData.Capabilities.V1" Alias="Capabilities"/>
19  </edmx:Reference>
20  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
21    <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
22  </edmx:Reference>
23  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
24    <edmx:Include Namespace="Resource"/>
25    <edmx:Include Namespace="Resource.v1_0_0"/>
26  </edmx:Reference>
27  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Sensor_v1.xml">
28    <edmx:Include Namespace="Sensor"/>
29  </edmx:Reference>
30  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Circuit_v1.xml">
31    <edmx:Include Namespace="Circuit"/>
32  </edmx:Reference>
33  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Outlet_v1.xml">
34    <edmx:Include Namespace="Outlet"/>
35  </edmx:Reference>
36
37  <edmx:DataServices>
38
39    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="OutletGroup">
40      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
41      <Annotation Term="Redfish.Language" String="en"/>
42
43      <EntityType Name="OutletGroup" BaseType="Resource.v1_0_0.Resource" Abstract="true">
44        <Annotation Term="OData.Description" String="The `OutletGroup` schema contains definitions for an electrical outlet group."/>
45        <Annotation Term="OData.LongDescription" String="This resource shall be used to represent an electrical outlet group for a Redfish implementation."/>
46        <Annotation Term="Capabilities.InsertRestrictions">
47          <Record>
48            <PropertyValue Property="Insertable" Bool="false"/>
49          </Record>
50        </Annotation>
51        <Annotation Term="Capabilities.UpdateRestrictions">
52          <Record>
53            <PropertyValue Property="Updatable" Bool="true"/>
54            <Annotation Term="OData.Description" String="Outlet group properties can be updated to change limits, exceptions and other writable properties."/>
55          </Record>
56        </Annotation>
57        <Annotation Term="Capabilities.DeleteRestrictions">
58          <Record>
59            <PropertyValue Property="Deletable" Bool="true"/>
60            <Annotation Term="OData.Description" String="Some implementations can allow outlet groups to be deleted."/>
61          </Record>
62        </Annotation>
63        <Annotation Term="Redfish.Uris">
64          <Collection>
65            <String>/redfish/v1/PowerEquipment/RackPDUs/{PowerDistributionId}/OutletGroups/{OutletGroupId}</String>
66            <String>/redfish/v1/PowerEquipment/TransferSwitches/{PowerDistributionId}/OutletGroups/{OutletGroupId}</String>
67            <String>/redfish/v1/PowerEquipment/PowerShelves/{PowerDistributionId}/OutletGroups/{OutletGroupId}</String>
68            <String>/redfish/v1/PowerEquipment/ElectricalBuses/{PowerDistributionId}/OutletGroups/{OutletGroupId}</String>
69          </Collection>
70        </Annotation>
71      </EntityType>
72
73      <Action Name="PowerControl" IsBound="true">
74        <Annotation Term="OData.Description" String="This action turns the outlet group on or off."/>
75        <Annotation Term="OData.LongDescription" String="This action shall control the power state of the outlet group."/>
76        <Parameter Name="OutletGroup" Type="OutletGroup.v1_0_0.Actions"/>
77        <Parameter Name="PowerState" Type="Circuit.PowerState">
78          <Annotation Term="OData.Description" String="The desired power state of the outlet group."/>
79          <Annotation Term="OData.LongDescription" String="This parameter shall contain the desired power state of the outlet group."/>
80        </Parameter>
81      </Action>
82
83      <Action Name="ResetMetrics" IsBound="true">
84        <Parameter Name="OutletGroup" Type="OutletGroup.v1_0_0.Actions"/>
85        <Annotation Term="OData.Description" String="This action resets metrics related to this outlet group."/>
86        <Annotation Term="OData.LongDescription" String="This action shall reset any time intervals or counted values for this outlet group."/>
87      </Action>
88
89      <EnumType Name="PowerState">
90        <Member Name="On">
91          <Annotation Term="OData.Description" String="Power on."/>
92        </Member>
93        <Member Name="Off">
94          <Annotation Term="OData.Description" String="Power off."/>
95        </Member>
96        <Member Name="PowerCycle">
97          <Annotation Term="OData.Description" String="Power cycle."/>
98          <Annotation Term="OData.LongDescription" String="This value shall indicate the resource will transition to a power off state, then transition to a power on state.  Upon successful completion, the `PowerState` property, if supported, shall contain the value `On`."/>
99          <Annotation Term="Redfish.Revisions">
100            <Collection>
101              <Record>
102                <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
103                <PropertyValue Property="Version" String="v1_1_0"/>
104              </Record>
105            </Collection>
106          </Annotation>
107        </Member>
108      </EnumType>
109    </Schema>
110
111    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="OutletGroup.v1_0_0">
112      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
113      <Annotation Term="Redfish.Release" String="2019.4"/>
114
115      <EntityType Name="OutletGroup" BaseType="OutletGroup.OutletGroup">
116        <Property Name="Status" Type="Resource.Status" Nullable="false">
117          <Annotation Term="OData.Description" String="The status and health of the resource and its subordinate or dependent resources."/>
118          <Annotation Term="OData.LongDescription" String="This property shall contain any status or health properties of the resource."/>
119        </Property>
120        <Property Name="CreatedBy" Type="Edm.String">
121          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
122          <Annotation Term="OData.Description" String="The creator of this outlet group."/>
123          <Annotation Term="OData.LongDescription" String="This property shall contain the name of the person or application that created this outlet group."/>
124        </Property>
125        <Property Name="PowerOnDelaySeconds" Type="Edm.Decimal">
126          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
127          <Annotation Term="OData.Description" String="The number of seconds to delay power up after a power cycle or a `PowerControl` action.  Zero seconds indicates no delay to power up."/>
128          <Annotation Term="OData.LongDescription" String="This property shall contain the number of seconds to delay power up after a power cycle or a `PowerControl` action.  The value `0` shall indicate no delay to power up."/>
129        </Property>
130        <Property Name="PowerOffDelaySeconds" Type="Edm.Decimal">
131          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
132          <Annotation Term="OData.Description" String="The number of seconds to delay power off after a `PowerControl` action.  Zero seconds indicates no delay to power off."/>
133          <Annotation Term="OData.LongDescription" String="This property shall contain the number of seconds to delay power off after a `PowerControl` action.  The value `0` shall indicate no delay to power off."/>
134        </Property>
135        <Property Name="PowerCycleDelaySeconds" Type="Edm.Decimal">
136          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
137          <Annotation Term="OData.Description" String="The number of seconds to delay power on after a `PowerControl` action to cycle power.  Zero seconds indicates no delay."/>
138          <Annotation Term="OData.LongDescription" String="This property shall contain the number of seconds to delay power on after a `PowerControl` action to cycle power.  The value `0` shall indicate no delay to power on."/>
139        </Property>
140        <Property Name="PowerRestoreDelaySeconds" Type="Edm.Decimal">
141          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
142          <Annotation Term="OData.Description" String="The number of seconds to delay power on after power has been restored.  Zero seconds indicates no delay."/>
143          <Annotation Term="OData.LongDescription" String="This property shall contain the number of seconds to delay power on after a power fault.  The value `0` shall indicate no delay to power on."/>
144        </Property>
145        <Property Name="PowerRestorePolicy" Type="Circuit.PowerRestorePolicyTypes" Nullable="false">
146          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
147          <Annotation Term="OData.Description" String="The desired power state of the outlet group when power is restored after a power loss."/>
148          <Annotation Term="OData.LongDescription" String="This property shall contain the desired `PowerState` of the outlet group when power is applied.  The value `LastState` shall return the outlet group to the `PowerState` it was in when power was lost."/>
149        </Property>
150        <Property Name="PowerState" Type="Resource.PowerState">
151          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
152          <Annotation Term="OData.Description" String="The power state of the outlet group."/>
153          <Annotation Term="OData.LongDescription" String="This property shall contain the power state of the outlet group."/>
154        </Property>
155        <Property Name="PowerEnabled" Type="Edm.Boolean">
156          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
157          <Annotation Term="OData.Description" String="Indicates if the outlet group can be powered."/>
158          <Annotation Term="OData.LongDescription" String="This property shall contain the power enable state of the outlet group.  The value `true` shall indicate that the group can be powered on, and the value `false` shall indicate that the group cannot be powered."/>
159        </Property>
160
161        <NavigationProperty Name="PowerWatts" Type="Sensor.Sensor">
162          <Annotation Term="Redfish.ExcerptCopy" String="Power"/>
163          <Annotation Term="OData.Description" String="The power (W) for this outlet group."/>
164          <Annotation Term="OData.LongDescription" String="This property shall contain the total power, in watt units, for this outlet group that represents the `Total` `ElectricalContext` sensor when multiple power sensors exist for this outlet group.  The value of the `DataSourceUri` property, if present, shall reference a resource of type `Sensor` with the `ReadingType` property containing the value `Power`."/>
165        </NavigationProperty>
166        <NavigationProperty Name="EnergykWh" Type="Sensor.Sensor">
167          <Annotation Term="Redfish.ExcerptCopy" String="EnergykWh"/>
168          <Annotation Term="OData.Description" String="The energy (kWh) for this outlet group."/>
169          <Annotation Term="OData.LongDescription" String="This property shall contain the total energy, in kilowatt-hour units, for this outlet group that represents the `Total` `ElectricalContext` sensor when multiple energy sensors exist for this outlet group.  The value of the `DataSourceUri` property, if present, shall reference a resource of type `Sensor` with the `ReadingType` property containing the value `EnergykWh`."/>
170        </NavigationProperty>
171
172        <Property Name="Links" Type="OutletGroup.v1_0_0.Links" Nullable="false">
173          <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
174          <Annotation Term="OData.LongDescription" String="This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource."/>
175        </Property>
176        <Property Name="Actions" Type="OutletGroup.v1_0_0.Actions" Nullable="false">
177          <Annotation Term="OData.Description" String="The available actions for this resource."/>
178          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
179        </Property>
180      </EntityType>
181
182      <ComplexType Name="Links" BaseType="Resource.Links">
183        <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
184        <Annotation Term="OData.LongDescription" String="This Redfish Specification-described type shall contain links to resources that are related to but are not contained by, or subordinate to, this resource."/>
185        <NavigationProperty Name="Outlets" Type="Collection(Outlet.Outlet)" ContainsTarget="true">
186          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
187          <Annotation Term="OData.Description" String="The set of outlets in this outlet group."/>
188          <Annotation Term="OData.LongDescription" String="This property shall be an array of links to resources of type `Outlet` that represent the outlets in this outlet group."/>
189          <Annotation Term="OData.AutoExpandReferences"/>
190        </NavigationProperty>
191      </ComplexType>
192
193      <ComplexType Name="Actions">
194        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
195        <Annotation Term="OData.Description" String="The available actions for this resource."/>
196        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
197        <Property Name="Oem" Type="OutletGroup.v1_0_0.OemActions" Nullable="false">
198          <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
199          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
200        </Property>
201      </ComplexType>
202
203      <ComplexType Name="OemActions">
204        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
205        <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
206        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
207      </ComplexType>
208    </Schema>
209
210    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="OutletGroup.v1_0_1">
211      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
212      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
213      <EntityType Name="OutletGroup" BaseType="OutletGroup.v1_0_0.OutletGroup"/>
214    </Schema>
215
216    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="OutletGroup.v1_0_2">
217      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
218      <Annotation Term="OData.Description" String="This version was created to update descriptions to tie excerpt property definitions to a specific type of `Sensor` or `Control` resource.  It was also created to correct various typographical errors."/>
219      <EntityType Name="OutletGroup" BaseType="OutletGroup.v1_0_1.OutletGroup"/>
220    </Schema>
221
222    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="OutletGroup.v1_0_3">
223      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
224      <Annotation Term="OData.Description" String="This version was created to update the `PowerState` parameter in the `PowerControl` action to reference the common enumeration in the `Circuit` schema."/>
225      <EntityType Name="OutletGroup" BaseType="OutletGroup.v1_0_2.OutletGroup"/>
226    </Schema>
227
228    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="OutletGroup.v1_0_4">
229      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
230      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
231      <EntityType Name="OutletGroup" BaseType="OutletGroup.v1_0_3.OutletGroup"/>
232    </Schema>
233
234    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="OutletGroup.v1_0_5">
235      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
236      <Annotation Term="OData.Description" String="This version was created to force the regeneration of OpenAPI schemas to properly express nullable properties with external references.  It was also created to correct various typographical errors."/>
237      <EntityType Name="OutletGroup" BaseType="OutletGroup.v1_0_4.OutletGroup"/>
238    </Schema>
239
240    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="OutletGroup.v1_1_0">
241      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
242      <Annotation Term="Redfish.Release" String="2021.4"/>
243      <Annotation Term="OData.Description" String="This version was created to add `PowerCycle` to the `PowerState` parameter of the `PowerControl` action."/>
244
245      <EntityType Name="OutletGroup" BaseType="OutletGroup.v1_0_2.OutletGroup">
246        <Property Name="PowerControlLocked" Type="Edm.Boolean" Nullable="false">
247          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
248          <Annotation Term="OData.Description" String="Indicates whether power control requests are locked."/>
249          <Annotation Term="OData.LongDescription" String="This property shall indicate whether requests to the `PowerControl` action are locked.  If `true`, services shall reject requests to the `PowerControl` action."/>
250        </Property>
251        <Property Name="ConfigurationLocked" Type="Edm.Boolean" Nullable="false">
252          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
253          <Annotation Term="OData.Description" String="Indicates whether the configuration is locked."/>
254          <Annotation Term="OData.LongDescription" String="This property shall indicate whether modification requests to this resource are not permitted.  If `true`, services shall reject modification requests to other properties in this resource."/>
255        </Property>
256        <Property Name="PowerStateInTransition" Type="Edm.Boolean" Nullable="false">
257          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
258          <Annotation Term="OData.Description" String="Indicates whether the power state is undergoing a delayed transition."/>
259          <Annotation Term="OData.LongDescription" String="This property shall indicate whether the `PowerState` property will undergo a transition between on and off states due to a configured delay.  The transition may be due to the configuration of the power on, off, or restore delay properties.  If `true`, the `PowerState` property will transition at the conclusion of a configured delay."/>
260        </Property>
261      </EntityType>
262    </Schema>
263
264    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="OutletGroup.v1_1_1">
265      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
266      <Annotation Term="OData.Description" String="This version was created to update the `PowerState` parameter in the `PowerControl` action to reference the common enumeration in the `Circuit` schema."/>
267      <EntityType Name="OutletGroup" BaseType="OutletGroup.v1_1_0.OutletGroup"/>
268    </Schema>
269
270    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="OutletGroup.v1_1_2">
271      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
272      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
273      <EntityType Name="OutletGroup" BaseType="OutletGroup.v1_1_1.OutletGroup"/>
274    </Schema>
275
276    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="OutletGroup.v1_1_3">
277      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
278      <Annotation Term="OData.Description" String="This version was created to force the regeneration of OpenAPI schemas to properly express nullable properties with external references.  It was also created to correct various typographical errors."/>
279      <EntityType Name="OutletGroup" BaseType="OutletGroup.v1_1_2.OutletGroup"/>
280    </Schema>
281
282    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="OutletGroup.v1_2_0">
283      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
284      <Annotation Term="Redfish.Release" String="2024.1"/>
285
286      <EntityType Name="OutletGroup" BaseType="OutletGroup.v1_1_3.OutletGroup">
287        <Property Name="OutletGroupType" Type="OutletGroup.v1_2_0.OutletGroupType" Nullable="false">
288          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
289          <Annotation Term="OData.Description" String="The type of outlet group that this resource represents."/>
290          <Annotation Term="OData.LongDescription" String="This property shall describe the type of this outlet group."/>
291        </Property>
292      </EntityType>
293
294      <ComplexType Name="Links" BaseType="OutletGroup.v1_0_0.Links">
295        <NavigationProperty Name="OutletGroups" Type="Collection(OutletGroup.OutletGroup)" ContainsTarget="true">
296          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
297          <Annotation Term="OData.Description" String="The set of outlet groups in this outlet group."/>
298          <Annotation Term="OData.LongDescription" String="This property shall be an array of links to resources of type `OutletGroup` that represent the outlet groups in this outlet group.  This allows representation of a group of outlet groups.  The outlet groups referenced by this property shall not contain other outlet groups.  Services shall only populate either the link for `Outlets` or `OutletGroups`, but not both."/>
299          <Annotation Term="OData.AutoExpandReferences"/>
300        </NavigationProperty>
301      </ComplexType>
302
303      <EnumType Name="OutletGroupType">
304        <Member Name="HardwareDefined">
305          <Annotation Term="OData.Description" String="A group that is hardware-defined."/>
306          <Annotation Term="OData.LongDescription" String="This value shall represent an outlet group that is hardware-defined."/>
307        </Member>
308        <Member Name="UserDefined">
309          <Annotation Term="OData.Description" String="A group that is user-defined."/>
310          <Annotation Term="OData.LongDescription" String="This value shall represent an outlet group that is user-defined."/>
311        </Member>
312      </EnumType>
313    </Schema>
314
315  </edmx:DataServices>
316</edmx:Edmx>
317