1<?xml version="1.0" encoding="UTF-8"?>
2<!---->
3<!--################################################################################       -->
4<!--# Redfish Schema:  PCIeSlots v1.6.1                                                    -->
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:Include Namespace="Validation.v1_0_0" Alias="Validation"/>
23  </edmx:Reference>
24  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
25    <edmx:Include Namespace="Resource"/>
26    <edmx:Include Namespace="Resource.v1_0_0"/>
27  </edmx:Reference>
28  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/PCIeDevice_v1.xml">
29    <edmx:Include Namespace="PCIeDevice"/>
30  </edmx:Reference>
31  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Processor_v1.xml">
32    <edmx:Include Namespace="Processor"/>
33  </edmx:Reference>
34
35  <edmx:DataServices>
36
37    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots">
38      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
39      <Annotation Term="Redfish.Language" String="en"/>
40
41      <EntityType Name="PCIeSlots" BaseType="Resource.v1_0_0.Resource" Abstract="true">
42        <Annotation Term="OData.Description" String="The `PCIeSlots` schema describes PCIe slot properties."/>
43        <Annotation Term="OData.LongDescription" String="This resource shall represent a set of PCIe slot information for a Redfish implementation."/>
44        <Annotation Term="Capabilities.InsertRestrictions">
45          <Record>
46            <PropertyValue Property="Insertable" Bool="false"/>
47          </Record>
48        </Annotation>
49        <Annotation Term="Capabilities.UpdateRestrictions">
50          <Record>
51            <PropertyValue Property="Updatable" Bool="true"/>
52          </Record>
53        </Annotation>
54        <Annotation Term="Capabilities.DeleteRestrictions">
55          <Record>
56            <PropertyValue Property="Deletable" Bool="false"/>
57          </Record>
58        </Annotation>
59        <Annotation Term="Redfish.Uris">
60          <Collection>
61            <String>/redfish/v1/Chassis/{ChassisId}/PCIeSlots</String>
62          </Collection>
63        </Annotation>
64        <Annotation Term="Redfish.Revisions">
65          <Collection>
66            <Record>
67              <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Deprecated"/>
68              <PropertyValue Property="Version" String="v1_6_0"/>
69              <PropertyValue Property="Description" String="This schema has been deprecated in favor of the `PCIeDevice` schema.  Empty PCIe slots should be represented by `PCIeDevice` resources using the `Absent` value of the `State` property within `Status`."/>
70            </Record>
71          </Collection>
72        </Annotation>
73      </EntityType>
74
75    </Schema>
76
77    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_0_0">
78      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
79      <Annotation Term="Redfish.Release" String="2018.2"/>
80
81      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.PCIeSlots">
82        <Property Name="Slots" Type="Collection(PCIeSlots.v1_0_0.PCIeSlot)" Nullable="false">
83          <Annotation Term="OData.Description" String="An array of PCI Slot information."/>
84          <Annotation Term="OData.LongDescription" String="This array shall contain an entry for each PCIe slot, including empty slots (with no device or card installed)."/>
85        </Property>
86        <Property Name="Actions" Type="PCIeSlots.v1_0_0.Actions" Nullable="false">
87          <Annotation Term="OData.Description" String="The available actions for this resource."/>
88          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
89        </Property>
90      </EntityType>
91
92      <ComplexType Name="PCIeSlot">
93        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
94        <Annotation Term="OData.Description" String="This type defines information for a PCIe slot."/>
95        <Annotation Term="OData.LongDescription" String="These properties shall contain the definition for a PCIe slot for a Redfish implementation."/>
96        <Property Name="Oem" Type="Resource.Oem" Nullable="false">
97          <Annotation Term="OData.Description" String="The OEM extension property."/>
98          <Annotation Term="OData.LongDescription" String="This property shall contain the OEM extensions.  All values for properties contained in this object shall conform to the Redfish Specification-described requirements."/>
99        </Property>
100        <Property Name="PCIeType" Type="PCIeDevice.PCIeTypes">
101          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
102          <Annotation Term="OData.Description" String="The PCIe specification supported by this slot."/>
103          <Annotation Term="OData.LongDescription" String="This property shall contain the maximum PCIe specification that this slot supports."/>
104        </Property>
105        <Property Name="SlotType" Type="PCIeSlots.v1_0_0.SlotTypes">
106          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
107          <Annotation Term="OData.Description" String="The PCIe slot type for this slot."/>
108          <Annotation Term="OData.LongDescription" String="This property shall contain the slot type as specified by the PCIe specification."/>
109        </Property>
110        <Property Name="Lanes" Type="Edm.Int64">
111          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
112          <Annotation Term="OData.Description" String="The number of PCIe lanes supported by this slot."/>
113          <Annotation Term="OData.LongDescription" String="This property shall contain the maximum number of PCIe lanes supported by the slot."/>
114          <Annotation Term="Validation.Maximum" Int="32"/>
115        </Property>
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="Location" Type="Resource.Location" Nullable="false">
121          <Annotation Term="OData.Description" String="The location of the PCIe slot."/>
122          <Annotation Term="OData.LongDescription" String="This property shall contain part location information, including a `ServiceLabel` of the associated PCIe slot."/>
123        </Property>
124        <Property Name="Links" Type="PCIeSlots.v1_0_0.PCIeLinks" Nullable="false">
125          <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
126          <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."/>
127        </Property>
128      </ComplexType>
129
130      <ComplexType Name="PCIeLinks" BaseType="Resource.Links">
131        <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
132        <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."/>
133        <NavigationProperty Name="PCIeDevice" Type="Collection(PCIeDevice.PCIeDevice)">
134          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
135          <Annotation Term="OData.Description" String="An array of links to the PCIe devices contained in this slot."/>
136          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type `PCIeDevice` with which this physical slot is associated.  If the `State` property in `Status` of this slot is `Absent`, this property shall not appear in the resource."/>
137          <Annotation Term="OData.AutoExpandReferences"/>
138        </NavigationProperty>
139      </ComplexType>
140
141      <EnumType Name="SlotTypes">
142        <Member Name="FullLength">
143          <Annotation Term="OData.Description" String="Full-Length PCIe slot."/>
144        </Member>
145        <Member Name="HalfLength">
146          <Annotation Term="OData.Description" String="Half-Length PCIe slot."/>
147        </Member>
148        <Member Name="LowProfile">
149          <Annotation Term="OData.Description" String="Low-Profile or Slim PCIe slot."/>
150        </Member>
151        <Member Name="Mini">
152          <Annotation Term="OData.Description" String="Mini PCIe slot."/>
153        </Member>
154        <Member Name="M2">
155          <Annotation Term="OData.Description" String="PCIe M.2 slot."/>
156        </Member>
157        <Member Name="OEM">
158          <Annotation Term="OData.Description" String="An OEM-specific slot."/>
159        </Member>
160        <Member Name="OCP3Small">
161          <Annotation Term="OData.Description" String="Open Compute Project 3.0 small form factor slot."/>
162          <Annotation Term="Redfish.Revisions">
163            <Collection>
164              <Record>
165                <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
166                <PropertyValue Property="Version" String="v1_2_0"/>
167              </Record>
168            </Collection>
169          </Annotation>
170        </Member>
171        <Member Name="OCP3Large">
172          <Annotation Term="OData.Description" String="Open Compute Project 3.0 large form factor slot."/>
173          <Annotation Term="Redfish.Revisions">
174            <Collection>
175              <Record>
176                <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
177                <PropertyValue Property="Version" String="v1_2_0"/>
178              </Record>
179            </Collection>
180          </Annotation>
181        </Member>
182        <Member Name="U2">
183          <Annotation Term="OData.Description" String="U.2 / SFF-8639 slot or bay."/>
184          <Annotation Term="Redfish.Revisions">
185            <Collection>
186              <Record>
187                <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
188                <PropertyValue Property="Version" String="v1_3_0"/>
189              </Record>
190            </Collection>
191          </Annotation>
192        </Member>
193      </EnumType>
194
195      <ComplexType Name="Actions">
196        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
197        <Annotation Term="OData.Description" String="The available actions for this resource."/>
198        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
199        <Property Name="Oem" Type="PCIeSlots.v1_0_0.OemActions" Nullable="false">
200          <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
201          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
202        </Property>
203      </ComplexType>
204
205      <ComplexType Name="OemActions">
206        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
207        <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
208        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
209      </ComplexType>
210    </Schema>
211
212    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_0_1">
213      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
214      <Annotation Term="OData.Description" String="This version was created to force the regeneration of JSON Schema so that URI properties use the uri-reference format, and to add a missing term to `Links` and `Slots` to disallow them from being `null`."/>
215      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_0_0.PCIeSlots"/>
216    </Schema>
217
218    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_0_2">
219      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
220      <Annotation Term="OData.Description" String="This version was created to update descriptions that this schema defines."/>
221      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_0_1.PCIeSlots"/>
222    </Schema>
223
224    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_0_3">
225      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
226      <Annotation Term="OData.Description" String="This version was created to correct typographic errors in the `Location` description."/>
227      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_0_2.PCIeSlots"/>
228    </Schema>
229
230    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_0_4">
231      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
232      <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."/>
233      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_0_3.PCIeSlots"/>
234    </Schema>
235
236    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_1_0">
237      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
238      <Annotation Term="Redfish.Release" String="2019.1"/>
239
240      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_0_1.PCIeSlots"/>
241      <ComplexType Name="PCIeSlot" BaseType="PCIeSlots.v1_0_0.PCIeSlot">
242        <Property Name="HotPluggable" Type="Edm.Boolean">
243          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
244          <Annotation Term="OData.Description" String="An indication of whether this PCIe slot supports hotplug."/>
245          <Annotation Term="OData.LongDescription" String="This property shall contain indicating whether this PCIe slot supports hotplug."/>
246        </Property>
247      </ComplexType>
248    </Schema>
249
250    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_1_1">
251      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
252      <Annotation Term="OData.Description" String="This version was created to correct the parent namespace of HotPluggable property from `PCIeSlots` to `PCIeSlot`.  It was also created to update descriptions that this schema defines."/>
253      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_1_0.PCIeSlots"/>
254    </Schema>
255
256    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_1_2">
257      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
258      <Annotation Term="OData.Description" String="This version was created to correct typographic errors in the `Location` description."/>
259      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_1_1.PCIeSlots"/>
260    </Schema>
261
262    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_1_3">
263      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
264      <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."/>
265      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_1_2.PCIeSlots"/>
266    </Schema>
267
268    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_2_0">
269      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
270      <Annotation Term="Redfish.Release" String="2019.4"/>
271      <Annotation Term="OData.Description" String="This version was created to add the Open Compute Project 3.0 form factors to PCIe `SlotType`."/>
272
273      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_1_2.PCIeSlots"/>
274    </Schema>
275
276    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_2_1">
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="PCIeSlots" BaseType="PCIeSlots.v1_2_0.PCIeSlots"/>
280    </Schema>
281
282    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_3_0">
283      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
284      <Annotation Term="Redfish.Release" String="2020.1"/>
285      <Annotation Term="OData.Description" String="This version was created to add the U.2 form factor to PCIe `SlotType`."/>
286
287      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_2_0.PCIeSlots"/>
288    </Schema>
289
290    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_3_1">
291      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
292      <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."/>
293      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_3_0.PCIeSlots"/>
294    </Schema>
295
296    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_4_0">
297      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
298      <Annotation Term="Redfish.Release" String="2020.3"/>
299      <Annotation Term="OData.Description" String="This version was created to add the `LocationIndicatorActive` property, but the property was incorrectly defined at the root of the resource rather than part of the `PCIeSlot` array.  The definition for `LocationIndicatorActive` was corrected in v1_4_1."/>
300
301      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_3_0.PCIeSlots"/>
302
303      <ComplexType Name="PCIeSlot" BaseType="PCIeSlots.v1_1_0.PCIeSlot">
304        <Property Name="LocationIndicatorActive" Type="Edm.Boolean">
305          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
306          <Annotation Term="OData.Description" String="An indicator allowing an operator to physically locate this resource."/>
307          <Annotation Term="OData.LongDescription" String="This property shall contain the state of the indicator used to physically identify or locate this resource.  A write to this property shall update the value of `IndicatorLED` in this resource, if supported, to reflect the implementation of the locating function."/>
308        </Property>
309      </ComplexType>
310    </Schema>
311
312    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_4_1">
313      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
314      <Annotation Term="OData.Description" String="This version was created to correct the definition of the `LocationIndicatorActive` property."/>
315      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_4_0.PCIeSlots"/>
316    </Schema>
317
318    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_4_2">
319      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
320      <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."/>
321      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_4_1.PCIeSlots"/>
322    </Schema>
323
324    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_5_0">
325      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
326      <Annotation Term="Redfish.Release" String="2021.3"/>
327
328      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_4_1.PCIeSlots"/>
329
330      <ComplexType Name="PCIeLinks" BaseType="PCIeSlots.v1_0_0.PCIeLinks">
331        <NavigationProperty Name="Processors" Type="Collection(Processor.Processor)">
332          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
333          <Annotation Term="OData.Description" String="An array of links to the processors that are directly connected or directly bridged to this PCIe slot."/>
334          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type `Processor` that represent processors that are directly connected or directly bridged to this PCIe slot."/>
335          <Annotation Term="OData.AutoExpandReferences"/>
336        </NavigationProperty>
337      </ComplexType>
338    </Schema>
339
340    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_5_1">
341      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
342      <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."/>
343      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_5_0.PCIeSlots"/>
344    </Schema>
345
346    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_6_0">
347      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
348      <Annotation Term="OData.Description" String="This version was created to deprecate the schema."/>
349      <Annotation Term="Redfish.Release" String="2023.2"/>
350
351      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_5_0.PCIeSlots"/>
352    </Schema>
353
354    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeSlots.v1_6_1">
355      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
356      <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."/>
357      <EntityType Name="PCIeSlots" BaseType="PCIeSlots.v1_6_0.PCIeSlots"/>
358    </Schema>
359
360  </edmx:DataServices>
361</edmx:Edmx>
362