1<?xml version="1.0" encoding="UTF-8"?>
2<!---->
3<!--################################################################################       -->
4<!--# Redfish Schema:  PCIeFunction v1.6.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: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/EthernetInterface_v1.xml">
29    <edmx:Include Namespace="EthernetInterface"/>
30  </edmx:Reference>
31  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/PCIeDevice_v1.xml">
32    <edmx:Include Namespace="PCIeDevice"/>
33  </edmx:Reference>
34  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Drive_v1.xml">
35    <edmx:Include Namespace="Drive"/>
36  </edmx:Reference>
37  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Storage_v1.xml">
38    <edmx:Include Namespace="Storage"/>
39  </edmx:Reference>
40  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/NetworkDeviceFunction_v1.xml">
41    <edmx:Include Namespace="NetworkDeviceFunction"/>
42  </edmx:Reference>
43  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Processor_v1.xml">
44    <edmx:Include Namespace="Processor"/>
45  </edmx:Reference>
46  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/MemoryDomain_v1.xml">
47    <edmx:Include Namespace="MemoryDomain"/>
48  </edmx:Reference>
49  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/CXLLogicalDevice_v1.xml">
50    <edmx:Include Namespace="CXLLogicalDevice"/>
51  </edmx:Reference>
52
53  <edmx:DataServices>
54
55    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction">
56      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
57      <Annotation Term="Redfish.Language" String="en"/>
58
59      <EntityType Name="PCIeFunction" BaseType="Resource.v1_0_0.Resource" Abstract="true">
60        <Annotation Term="OData.Description" String="The `PCIeFunction` schema describes the properties of a PCIe function that is attached to a system."/>
61        <Annotation Term="OData.LongDescription" String="This resource shall represent a PCIe function in a Redfish implementation."/>
62        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
63        <Annotation Term="Capabilities.InsertRestrictions">
64          <Record>
65            <PropertyValue Property="Insertable" Bool="false"/>
66          </Record>
67        </Annotation>
68        <Annotation Term="Capabilities.UpdateRestrictions">
69          <Record>
70            <PropertyValue Property="Updatable" Bool="true"/>
71          </Record>
72        </Annotation>
73        <Annotation Term="Capabilities.DeleteRestrictions">
74          <Record>
75            <PropertyValue Property="Deletable" Bool="false"/>
76          </Record>
77        </Annotation>
78        <Annotation Term="Redfish.Uris">
79          <Collection>
80            <String>/redfish/v1/Chassis/{ChassisId}/PCIeDevices/{PCIeDeviceId}/PCIeFunctions/{PCIeFunctionId}</String>
81            <String>/redfish/v1/Systems/{ComputerSystemId}/PCIeDevices/{PCIeDeviceId}/PCIeFunctions/{PCIeFunctionId}</String>
82            <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/PCIeDevices/{PCIeDeviceId}/PCIeFunctions/{PCIeFunctionId}</String>
83            <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/PCIeDevices/{PCIeDeviceId}/PCIeFunctions/{PCIeFunctionId}</String>
84          </Collection>
85        </Annotation>
86      </EntityType>
87    </Schema>
88
89    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_0_0">
90      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
91      <Annotation Term="Redfish.Release" String="2016.2"/>
92
93      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.PCIeFunction">
94        <Property Name="FunctionId" Type="Edm.Int64">
95          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
96          <Annotation Term="OData.Description" String="The PCIe function number."/>
97          <Annotation Term="OData.LongDescription" String="This property shall contain the PCIe function number within a given PCIe device."/>
98        </Property>
99        <Property Name="FunctionType" Type="PCIeFunction.v1_0_0.FunctionType" Nullable="false">
100          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
101          <Annotation Term="OData.Description" String="The type of the PCIe function."/>
102          <Annotation Term="OData.LongDescription" String="This property shall contain the function type of the PCIe device function such as physical or virtual."/>
103        </Property>
104        <Property Name="DeviceClass" Type="PCIeFunction.v1_0_0.DeviceClass" Nullable="false">
105          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
106          <Annotation Term="OData.Description" String="The class for this PCIe function."/>
107          <Annotation Term="OData.LongDescription" String="This property shall contain the device class of the PCIe device function, such as storage, network, or memory."/>
108        </Property>
109        <Property Name="DeviceId" Type="Edm.String">
110          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
111          <Annotation Term="OData.Description" String="The Device ID of this PCIe function."/>
112          <Annotation Term="OData.LongDescription" String="This property shall contain the PCI Device ID of the PCIe device function with the most significant byte shown first."/>
113          <Annotation Term="Validation.Pattern" String="^0[xX]([0-9A-Fa-f]{2}){2}$"/>
114        </Property>
115        <Property Name="VendorId" Type="Edm.String">
116          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
117          <Annotation Term="OData.Description" String="The Vendor ID of this PCIe function."/>
118          <Annotation Term="OData.LongDescription" String="This property shall contain the PCI Vendor ID of the PCIe device function with the most significant byte shown first."/>
119          <Annotation Term="Validation.Pattern" String="^0[xX]([0-9A-Fa-f]{2}){2}$"/>
120        </Property>
121        <Property Name="ClassCode" Type="Edm.String">
122          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
123          <Annotation Term="OData.Description" String="The Class Code of this PCIe function."/>
124          <Annotation Term="OData.LongDescription" String="This property shall contain the PCI Class Code, Subclass, and Programming Interface of the PCIe device function in the order listed."/>
125          <Annotation Term="Validation.Pattern" String="^0[xX]([0-9A-Fa-f]{2}){3}$"/>
126        </Property>
127        <Property Name="RevisionId" Type="Edm.String">
128          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
129          <Annotation Term="OData.Description" String="The Revision ID of this PCIe function."/>
130          <Annotation Term="OData.LongDescription" String="This property shall contain the PCI Revision ID of the PCIe device function."/>
131          <Annotation Term="Validation.Pattern" String="^0[xX]([0-9A-Fa-f]{2}){1}$"/>
132        </Property>
133        <Property Name="SubsystemId" Type="Edm.String">
134          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
135          <Annotation Term="OData.Description" String="The Subsystem ID of this PCIe function."/>
136          <Annotation Term="OData.LongDescription" String="This property shall contain the PCI Subsystem ID of the PCIe device function with the most significant byte shown first."/>
137          <Annotation Term="Validation.Pattern" String="^0[xX]([0-9A-Fa-f]{2}){2}$"/>
138        </Property>
139        <Property Name="SubsystemVendorId" Type="Edm.String">
140          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
141          <Annotation Term="OData.Description" String="The Subsystem Vendor ID of this PCIe function."/>
142          <Annotation Term="OData.LongDescription" String="This property shall contain the PCI Subsystem Vendor ID of the PCIe device function with the most significant byte shown first."/>
143          <Annotation Term="Validation.Pattern" String="^0[xX]([0-9A-Fa-f]{2}){2}$"/>
144        </Property>
145        <Property Name="Status" Type="Resource.Status" Nullable="false">
146          <Annotation Term="OData.Description" String="The status and health of the resource and its subordinate or dependent resources."/>
147          <Annotation Term="OData.LongDescription" String="This property shall contain any status or health properties of the resource."/>
148        </Property>
149        <Property Name="Links" Type="PCIeFunction.v1_0_0.Links" Nullable="false">
150          <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
151          <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."/>
152        </Property>
153      </EntityType>
154
155      <ComplexType Name="Links" BaseType="Resource.Links">
156        <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
157        <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."/>
158        <NavigationProperty Name="EthernetInterfaces" Type="Collection(EthernetInterface.EthernetInterface)">
159          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
160          <Annotation Term="OData.Description" String="An array of links to the Ethernet interfaces that this PCIe function produces."/>
161          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type `EthernetInterface` that represent the network interfaces associated with this PCIe function."/>
162          <Annotation Term="OData.AutoExpandReferences"/>
163        </NavigationProperty>
164        <NavigationProperty Name="Drives" Type="Collection(Drive.Drive)">
165          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
166          <Annotation Term="OData.Description" String="An array of links to the drives that this PCIe function produces."/>
167          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type `Drive` that represent the drives associated with this PCIe function."/>
168          <Annotation Term="OData.AutoExpandReferences"/>
169        </NavigationProperty>
170        <NavigationProperty Name="StorageControllers" Type="Collection(Storage.StorageController)">
171          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
172          <Annotation Term="OData.Description" String="An array of links to the storage controllers that this PCIe function produces."/>
173          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to referenceable members of type `StorageController` that represent the storage controllers associated with this PCIe function."/>
174          <Annotation Term="OData.AutoExpandReferences"/>
175        </NavigationProperty>
176        <NavigationProperty Name="PCIeDevice" Type="PCIeDevice.PCIeDevice" Nullable="false">
177          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
178          <Annotation Term="OData.Description" String="The link to the PCIe device on which this function resides."/>
179          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource of type `PCIeDevice` that represents the PCIe devices on which this function resides."/>
180          <Annotation Term="OData.AutoExpandReferences"/>
181        </NavigationProperty>
182      </ComplexType>
183
184      <EnumType Name="DeviceClass">
185        <Member Name="UnclassifiedDevice">
186          <Annotation Term="OData.Description" String="An unclassified device."/>
187        </Member>
188        <Member Name="MassStorageController">
189          <Annotation Term="OData.Description" String="A mass storage controller."/>
190        </Member>
191        <Member Name="NetworkController">
192          <Annotation Term="OData.Description" String="A network controller."/>
193        </Member>
194        <Member Name="DisplayController">
195          <Annotation Term="OData.Description" String="A display controller."/>
196        </Member>
197        <Member Name="MultimediaController">
198          <Annotation Term="OData.Description" String="A multimedia controller."/>
199        </Member>
200        <Member Name="MemoryController">
201          <Annotation Term="OData.Description" String="A memory controller."/>
202        </Member>
203        <Member Name="Bridge">
204          <Annotation Term="OData.Description" String="A bridge."/>
205        </Member>
206        <Member Name="CommunicationController">
207          <Annotation Term="OData.Description" String="A communication controller."/>
208        </Member>
209        <Member Name="GenericSystemPeripheral">
210          <Annotation Term="OData.Description" String="A generic system peripheral."/>
211        </Member>
212        <Member Name="InputDeviceController">
213          <Annotation Term="OData.Description" String="An input device controller."/>
214        </Member>
215        <Member Name="DockingStation">
216          <Annotation Term="OData.Description" String="A docking station."/>
217        </Member>
218        <Member Name="Processor">
219          <Annotation Term="OData.Description" String="A processor."/>
220        </Member>
221        <Member Name="SerialBusController">
222          <Annotation Term="OData.Description" String="A serial bus controller."/>
223        </Member>
224        <Member Name="WirelessController">
225          <Annotation Term="OData.Description" String="A wireless controller."/>
226        </Member>
227        <Member Name="IntelligentController">
228          <Annotation Term="OData.Description" String="An intelligent controller."/>
229        </Member>
230        <Member Name="SatelliteCommunicationsController">
231          <Annotation Term="OData.Description" String="A satellite communications controller."/>
232        </Member>
233        <Member Name="EncryptionController">
234          <Annotation Term="OData.Description" String="An encryption controller."/>
235        </Member>
236        <Member Name="SignalProcessingController">
237          <Annotation Term="OData.Description" String="A signal processing controller."/>
238        </Member>
239        <Member Name="ProcessingAccelerators">
240          <Annotation Term="OData.Description" String="A processing accelerators."/>
241        </Member>
242        <Member Name="NonEssentialInstrumentation">
243          <Annotation Term="OData.Description" String="A non-essential instrumentation."/>
244        </Member>
245        <Member Name="Coprocessor">
246          <Annotation Term="OData.Description" String="A coprocessor."/>
247        </Member>
248        <Member Name="UnassignedClass">
249          <Annotation Term="OData.Description" String="An unassigned class."/>
250        </Member>
251        <Member Name="Other">
252          <Annotation Term="OData.Description" String="Other class.  The function Class Code needs to be verified."/>
253        </Member>
254      </EnumType>
255
256      <EnumType Name="FunctionType">
257        <Member Name="Physical">
258          <Annotation Term="OData.Description" String="A physical PCIe function."/>
259        </Member>
260        <Member Name="Virtual">
261          <Annotation Term="OData.Description" String="A virtual PCIe function."/>
262        </Member>
263      </EnumType>
264    </Schema>
265
266    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_0_1">
267      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
268      <Annotation Term="OData.Description" String="This version was created to show annotations in previous namespaces were updated."/>
269      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_0_0.PCIeFunction"/>
270    </Schema>
271
272    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_0_2">
273      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
274      <Annotation Term="OData.Description" String="This version was created to show annotations in previous namespaces were updated."/>
275      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_0_1.PCIeFunction"/>
276    </Schema>
277
278    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_0_3">
279      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
280      <Annotation Term="OData.Description" String="This version was created to change StorageController to its abstract base type."/>
281      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_0_2.PCIeFunction"/>
282    </Schema>
283
284    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_0_4">
285      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
286      <Annotation Term="OData.Description" String="This version was created to force the regeneration of JSON Schema so that OData properties are marked as required, and integer properties are marked as integer rather than number."/>
287      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_0_3.PCIeFunction"/>
288    </Schema>
289
290    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_0_5">
291      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
292      <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.  It was also created to add a missing term on `PCIeDevice` to not allow it to be `null`."/>
293      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_0_4.PCIeFunction"/>
294    </Schema>
295
296    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_0_6">
297      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
298      <Annotation Term="OData.Description" String="This version was created to update descriptions that this schema defines."/>
299      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_0_5.PCIeFunction"/>
300    </Schema>
301
302    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_0_7">
303      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
304      <Annotation Term="OData.Description" String="This version was created to clarify the byte order for properties encoded as hex strings."/>
305      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_0_6.PCIeFunction"/>
306    </Schema>
307
308    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_0_8">
309      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
310      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
311      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_0_7.PCIeFunction"/>
312    </Schema>
313
314    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_0_9">
315      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
316      <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."/>
317      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_0_8.PCIeFunction"/>
318    </Schema>
319
320    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_1_0">
321      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
322      <Annotation Term="Redfish.Release" String="2017.1"/>
323
324      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_0_2.PCIeFunction">
325        <Property Name="Actions" Type="PCIeFunction.v1_1_0.Actions" Nullable="false">
326          <Annotation Term="OData.Description" String="The available actions for this resource."/>
327          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
328        </Property>
329      </EntityType>
330
331      <ComplexType Name="Actions">
332        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
333        <Annotation Term="OData.Description" String="The available actions for this resource."/>
334        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
335        <Property Name="Oem" Type="PCIeFunction.v1_1_0.OemActions" Nullable="false">
336          <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
337          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
338        </Property>
339      </ComplexType>
340
341      <ComplexType Name="OemActions">
342        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
343        <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
344        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
345      </ComplexType>
346    </Schema>
347
348    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_1_1">
349      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
350      <Annotation Term="OData.Description" String="This version was created to change StorageController to its abstract base type."/>
351      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_1_0.PCIeFunction"/>
352    </Schema>
353
354    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_1_2">
355      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
356      <Annotation Term="OData.Description" String="This version was created to force the regeneration of JSON Schema so that OData properties are marked as required, and integer properties are marked as integer rather than number."/>
357      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_1_1.PCIeFunction"/>
358    </Schema>
359
360    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_1_3">
361      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
362      <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.  It was also created to add a missing term on `PCIeDevice` to not allow it to be `null`."/>
363      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_1_2.PCIeFunction"/>
364    </Schema>
365
366    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_1_4">
367      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
368      <Annotation Term="OData.Description" String="This version was created to update descriptions that this schema defines."/>
369      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_1_3.PCIeFunction"/>
370    </Schema>
371
372    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_1_5">
373      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
374      <Annotation Term="OData.Description" String="This version was created to clarify the byte order for properties encoded as hex strings."/>
375      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_1_4.PCIeFunction"/>
376    </Schema>
377
378    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_1_6">
379      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
380      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
381      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_1_5.PCIeFunction"/>
382    </Schema>
383
384    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_1_7">
385      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
386      <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."/>
387      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_1_6.PCIeFunction"/>
388    </Schema>
389
390    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_2_0">
391      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
392      <Annotation Term="Redfish.Release" String="2018.1"/>
393
394      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_1_1.PCIeFunction"/>
395
396      <ComplexType Name="Links" BaseType="PCIeFunction.v1_0_0.Links">
397        <NavigationProperty Name="NetworkDeviceFunctions" Type="Collection(NetworkDeviceFunction.NetworkDeviceFunction)">
398          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
399          <Annotation Term="OData.Description" String="An array of links to the network device functions that the PCIe function produces."/>
400          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type `NetworkDeviceFunction` that represent the network device functions associated with this PCIe function."/>
401          <Annotation Term="OData.AutoExpandReferences"/>
402        </NavigationProperty>
403      </ComplexType>
404    </Schema>
405
406    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_2_1">
407      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
408      <Annotation Term="OData.Description" String="This version was created to force the regeneration of JSON Schema so that OData properties are marked as required, and integer properties are marked as integer rather than number."/>
409      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_2_0.PCIeFunction"/>
410    </Schema>
411
412    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_2_2">
413      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
414      <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.  It was also created to add a missing term on `PCIeDevice` to not allow it to be `null`."/>
415      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_2_1.PCIeFunction"/>
416    </Schema>
417
418    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_2_3">
419      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
420      <Annotation Term="OData.Description" String="This version was created to update descriptions that this schema defines."/>
421      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_2_2.PCIeFunction"/>
422    </Schema>
423
424    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_2_4">
425      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
426      <Annotation Term="OData.Description" String="This version was created to clarify the byte order for properties encoded as hex strings."/>
427      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_2_3.PCIeFunction"/>
428    </Schema>
429
430    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_2_5">
431      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
432      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
433      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_2_4.PCIeFunction"/>
434    </Schema>
435
436    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_2_6">
437      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
438      <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."/>
439      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_2_5.PCIeFunction"/>
440    </Schema>
441
442    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_3_0">
443      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
444      <Annotation Term="Redfish.Release" String="2021.1"/>
445
446      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_2_3.PCIeFunction">
447        <Property Name="Enabled" Type="Edm.Boolean" Nullable="false">
448          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
449          <Annotation Term="OData.Description" String="An indication of whether this PCIe device function is enabled."/>
450          <Annotation Term="OData.LongDescription" String="The value of this property shall indicate if this PCIe device function is enabled."/>
451        </Property>
452      </EntityType>
453    </Schema>
454
455    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_3_1">
456      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
457      <Annotation Term="OData.Description" String="This version was created to clarify the byte order for properties encoded as hex strings."/>
458      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_3_0.PCIeFunction"/>
459    </Schema>
460
461    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_3_2">
462      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
463      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
464      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_3_1.PCIeFunction"/>
465    </Schema>
466
467    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_3_3">
468      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
469      <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."/>
470      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_3_2.PCIeFunction"/>
471    </Schema>
472
473    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_4_0">
474      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
475      <Annotation Term="Redfish.Release" String="2022.2"/>
476
477      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_3_0.PCIeFunction"/>
478
479      <ComplexType Name="Links" BaseType="PCIeFunction.v1_2_0.Links">
480        <NavigationProperty Name="Processor" Type="Processor.Processor">
481          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
482          <Annotation Term="OData.Description" String="The link to a processor that is hosted on this PCIe function."/>
483          <Annotation Term="OData.LongDescription" String="This property shall link to a resource of type `Processor` that represents the processor that is hosted on this PCIe function."/>
484          <Annotation Term="OData.AutoExpandReferences"/>
485        </NavigationProperty>
486      </ComplexType>
487    </Schema>
488
489    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_4_1">
490      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
491      <Annotation Term="OData.Description" String="This version was created to clarify the byte order for properties encoded as hex strings."/>
492      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_4_0.PCIeFunction"/>
493    </Schema>
494
495    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_4_2">
496      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
497      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
498      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_4_1.PCIeFunction"/>
499    </Schema>
500
501    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_4_3">
502      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
503      <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."/>
504      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_4_2.PCIeFunction"/>
505    </Schema>
506
507    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_5_0">
508      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
509      <Annotation Term="Redfish.Release" String="2022.3"/>
510
511      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_4_1.PCIeFunction">
512        <Property Name="FunctionProtocol" Type="PCIeFunction.v1_5_0.FunctionProtocol">
513          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
514          <Annotation Term="OData.Description" String="The PCIe function protocol."/>
515          <Annotation Term="OData.LongDescription" String="This property shall contain the protocol supported by this PCIe function."/>
516        </Property>
517      </EntityType>
518
519      <ComplexType Name="Links" BaseType="PCIeFunction.v1_4_0.Links">
520        <NavigationProperty Name="MemoryDomains" Type="Collection(MemoryDomain.MemoryDomain)">
521          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
522          <Annotation Term="OData.Description" String="An array of links to the memory domains that the PCIe function produces."/>
523          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type `MemoryDomain` that represent the memory domains associated with this PCIe function."/>
524          <Annotation Term="OData.AutoExpandReferences"/>
525        </NavigationProperty>
526        <NavigationProperty Name="CXLLogicalDevice" Type="CXLLogicalDevice.CXLLogicalDevice">
527          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
528          <Annotation Term="OData.Description" String="The link to the CXL logical device to which this function is assigned."/>
529          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource of type `CXLLogicalDevice` that represents the CXL logical device to which this PCIe function is assigned."/>
530          <Annotation Term="OData.AutoExpandReferences"/>
531        </NavigationProperty>
532      </ComplexType>
533
534      <EnumType Name="FunctionProtocol">
535        <Member Name="PCIe">
536          <Annotation Term="OData.Description" String="A standard PCIe function."/>
537        </Member>
538        <Member Name="CXL">
539          <Annotation Term="OData.Description" String="A PCIe function supporting CXL extensions."/>
540        </Member>
541      </EnumType>
542    </Schema>
543
544    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_5_1">
545      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
546      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
547      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_5_0.PCIeFunction"/>
548    </Schema>
549
550    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_5_2">
551      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
552      <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."/>
553      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_5_1.PCIeFunction"/>
554    </Schema>
555
556    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="PCIeFunction.v1_6_0">
557      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
558      <Annotation Term="Redfish.Release" String="2024.1"/>
559
560      <EntityType Name="PCIeFunction" BaseType="PCIeFunction.v1_5_2.PCIeFunction">
561        <Property Name="SegmentNumber" Type="Edm.String">
562          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
563          <Annotation Term="OData.Description" String="The segment number of this PCIe function."/>
564          <Annotation Term="OData.LongDescription" String="This property shall contain the PCIe segment number of the PCIe device function.  This property shall not be present if the PCIe device function is fabric-attached or is shared with multiple systems."/>
565          <Annotation Term="Validation.Pattern" String="^0[xX][0-9a-fA-F]{4}$"/>
566        </Property>
567        <Property Name="BusNumber" Type="Edm.String">
568          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
569          <Annotation Term="OData.Description" String="The bus number of this PCIe function."/>
570          <Annotation Term="OData.LongDescription" String="This property shall contain the PCIe bus number of the PCIe device function.  This property shall not be present if the PCIe device function is fabric-attached or is shared with multiple systems."/>
571          <Annotation Term="Validation.Pattern" String="^0[xX][0-9a-fA-F]{2}$"/>
572        </Property>
573        <Property Name="DeviceNumber" Type="Edm.String">
574          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
575          <Annotation Term="OData.Description" String="The device number of this PCIe function."/>
576          <Annotation Term="OData.LongDescription" String="This property shall contain the PCIe device number of the PCIe device function.  This property shall not be present if the PCIe device function is fabric-attached or is shared with multiple systems."/>
577          <Annotation Term="Validation.Pattern" String="^0[xX][0-1][0-9a-fA-F]{1}$"/>
578        </Property>
579        <Property Name="FunctionNumber" Type="Edm.String">
580          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
581          <Annotation Term="OData.Description" String="The function number of this PCIe function."/>
582          <Annotation Term="OData.LongDescription" String="This property shall contain the PCIe function number of the PCIe device function.  This property shall not be present if the PCIe device function is fabric-attached or is shared with multiple systems."/>
583          <Annotation Term="Validation.Pattern" String="^0[xX][0-7]$"/>
584        </Property>
585      </EntityType>
586    </Schema>
587
588  </edmx:DataServices>
589</edmx:Edmx>
590