xref: /openbmc/bmcweb/features/redfish/schema/dmtf/csdl/Fabric_v1.xml (revision c6d7a45d427f9a6d9e761afcf305761dca60d7cf)
1<?xml version="1.0" encoding="UTF-8"?>
2<!---->
3<!--################################################################################       -->
4<!--# Redfish Schema:  Fabric v1.4.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-2025 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/Resource_v1.xml">
21    <edmx:Include Namespace="Resource"/>
22    <edmx:Include Namespace="Resource.v1_0_0"/>
23  </edmx:Reference>
24  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
25    <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
26  </edmx:Reference>
27  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/ZoneCollection_v1.xml">
28    <edmx:Include Namespace="ZoneCollection"/>
29  </edmx:Reference>
30  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/EndpointCollection_v1.xml">
31    <edmx:Include Namespace="EndpointCollection"/>
32  </edmx:Reference>
33  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/EndpointGroupCollection_v1.xml">
34    <edmx:Include Namespace="EndpointGroupCollection"/>
35  </edmx:Reference>
36  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/SwitchCollection_v1.xml">
37    <edmx:Include Namespace="SwitchCollection"/>
38  </edmx:Reference>
39  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Protocol_v1.xml">
40    <edmx:Include Namespace="Protocol"/>
41  </edmx:Reference>
42  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/AddressPoolCollection_v1.xml">
43    <edmx:Include Namespace="AddressPoolCollection"/>
44  </edmx:Reference>
45  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/ConnectionCollection_v1.xml">
46    <edmx:Include Namespace="ConnectionCollection"/>
47  </edmx:Reference>
48  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Manager_v1.xml">
49    <edmx:Include Namespace="Manager"/>
50  </edmx:Reference>
51
52  <edmx:DataServices>
53
54    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric">
55      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
56      <Annotation Term="Redfish.Language" String="en"/>
57
58      <EntityType Name="Fabric" BaseType="Resource.v1_0_0.Resource" Abstract="true">
59        <Annotation Term="OData.Description" String="The `Fabric` schema represents a simple fabric consisting of one or more switches, zero or more endpoints, and zero or more zones."/>
60        <Annotation Term="OData.LongDescription" String="This resource shall represent a simple switchable fabric for a Redfish implementation."/>
61        <Annotation Term="Capabilities.InsertRestrictions">
62          <Record>
63            <PropertyValue Property="Insertable" Bool="false"/>
64          </Record>
65        </Annotation>
66        <Annotation Term="Capabilities.UpdateRestrictions">
67          <Record>
68            <PropertyValue Property="Updatable" Bool="true"/>
69          </Record>
70        </Annotation>
71        <Annotation Term="Capabilities.DeleteRestrictions">
72          <Record>
73            <PropertyValue Property="Deletable" Bool="false"/>
74          </Record>
75        </Annotation>
76        <Annotation Term="Redfish.Uris">
77          <Collection>
78            <String>/redfish/v1/Fabrics/{FabricId}</String>
79          </Collection>
80        </Annotation>
81      </EntityType>
82    </Schema>
83
84    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_0_0">
85      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
86      <Annotation Term="Redfish.Release" String="2016.2"/>
87
88      <EntityType Name="Fabric" BaseType="Fabric.Fabric">
89        <Property Name="FabricType" Type="Protocol.Protocol">
90          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
91          <Annotation Term="OData.Description" String="The protocol being sent over this fabric."/>
92          <Annotation Term="OData.LongDescription" String="This property shall contain the type of fabric being represented by this simple fabric."/>
93        </Property>
94        <Property Name="Status" Type="Resource.Status" Nullable="false">
95          <Annotation Term="OData.Description" String="The status and health of the resource and its subordinate or dependent resources."/>
96          <Annotation Term="OData.LongDescription" String="This property shall contain any status or health properties of the resource."/>
97        </Property>
98        <Property Name="MaxZones" Type="Edm.Int64">
99          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
100          <Annotation Term="OData.Description" String="The maximum number of zones the switch can currently configure."/>
101          <Annotation Term="OData.LongDescription" String="This property shall contain the maximum number of zones the switch can currently configure.  Changes in the logical or physical configuration of the system can change this value."/>
102        </Property>
103        <NavigationProperty Name="Zones" Type="ZoneCollection.ZoneCollection" ContainsTarget="true" Nullable="false">
104          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
105          <Annotation Term="OData.Description" String="The collection of links to the zones that this fabric contains."/>
106          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource collection of type `ZoneCollection`."/>
107          <Annotation Term="OData.AutoExpandReferences"/>
108        </NavigationProperty>
109        <NavigationProperty Name="Endpoints" Type="EndpointCollection.EndpointCollection" ContainsTarget="true" Nullable="false">
110          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
111          <Annotation Term="OData.Description" String="The collection of links to the endpoints that this fabric contains."/>
112          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource collection of type `EndpointCollection`."/>
113          <Annotation Term="OData.AutoExpandReferences"/>
114        </NavigationProperty>
115        <NavigationProperty Name="Switches" Type="SwitchCollection.SwitchCollection" ContainsTarget="true" Nullable="false">
116          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
117          <Annotation Term="OData.Description" String="The collection of links to the switches that this fabric contains."/>
118          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource collection of type `SwitchCollection`."/>
119          <Annotation Term="OData.AutoExpandReferences"/>
120        </NavigationProperty>
121        <Property Name="Links" Type="Fabric.v1_0_0.Links" Nullable="false">
122          <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
123          <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."/>
124        </Property>
125        <Property Name="Actions" Type="Fabric.v1_0_0.Actions" Nullable="false">
126          <Annotation Term="OData.Description" String="The available actions for this resource."/>
127          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
128        </Property>
129      </EntityType>
130
131      <ComplexType Name="Links" BaseType="Resource.Links">
132        <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
133        <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."/>
134      </ComplexType>
135
136      <ComplexType Name="Actions">
137        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
138        <Annotation Term="OData.Description" String="The available actions for this resource."/>
139        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
140        <Property Name="Oem" Type="Fabric.v1_0_0.OemActions" Nullable="false">
141          <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
142          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
143        </Property>
144      </ComplexType>
145
146      <ComplexType Name="OemActions">
147        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
148        <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
149        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
150      </ComplexType>
151    </Schema>
152
153    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_0_1">
154      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
155      <Annotation Term="OData.Description" String="This version was created to add permissions annotations to all properties for clarity."/>
156      <EntityType Name="Fabric" BaseType="Fabric.v1_0_0.Fabric"/>
157    </Schema>
158
159    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_0_2">
160      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
161      <Annotation Term="OData.Description" String="This version was created to show annotations in previous namespaces were updated."/>
162      <EntityType Name="Fabric" BaseType="Fabric.v1_0_1.Fabric"/>
163    </Schema>
164
165    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_0_3">
166      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
167      <Annotation Term="OData.Description" String="This version was created to change `FabricType` to use the unversioned definition.  It was also created to update the descriptions that this schema defines."/>
168      <EntityType Name="Fabric" BaseType="Fabric.v1_0_2.Fabric"/>
169    </Schema>
170
171    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_0_4">
172      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
173      <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."/>
174      <EntityType Name="Fabric" BaseType="Fabric.v1_0_3.Fabric"/>
175    </Schema>
176
177    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_0_5">
178      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
179      <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."/>
180      <EntityType Name="Fabric" BaseType="Fabric.v1_0_4.Fabric"/>
181    </Schema>
182
183    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_0_6">
184      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
185      <Annotation Term="OData.Description" String="This version was created to update descriptions that this schema defines."/>
186      <EntityType Name="Fabric" BaseType="Fabric.v1_0_5.Fabric"/>
187    </Schema>
188
189    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_0_7">
190      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
191      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
192      <EntityType Name="Fabric" BaseType="Fabric.v1_0_6.Fabric"/>
193    </Schema>
194
195    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_0_8">
196      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
197      <Annotation Term="OData.Description" String="This version was created to specify 64-bit integers in OpenAPI."/>
198      <EntityType Name="Fabric" BaseType="Fabric.v1_0_7.Fabric"/>
199    </Schema>
200
201    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_0_9">
202      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
203      <Annotation Term="OData.Description" String="This version was created to correct various descriptions to use proper normative terminology."/>
204      <EntityType Name="Fabric" BaseType="Fabric.v1_0_8.Fabric"/>
205    </Schema>
206
207    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_0_10">
208      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
209      <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."/>
210      <EntityType Name="Fabric" BaseType="Fabric.v1_0_9.Fabric"/>
211    </Schema>
212
213    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_1_0">
214      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
215      <Annotation Term="Redfish.Release" String="2019.4"/>
216
217      <EntityType Name="Fabric" BaseType="Fabric.v1_0_6.Fabric">
218        <NavigationProperty Name="AddressPools" Type="AddressPoolCollection.AddressPoolCollection" ContainsTarget="true" Nullable="false">
219          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
220          <Annotation Term="OData.Description" String="The collection of links to the address pools that this fabric contains."/>
221          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource collection of type `AddressPoolCollection`."/>
222          <Annotation Term="OData.AutoExpandReferences"/>
223        </NavigationProperty>
224      </EntityType>
225    </Schema>
226
227    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_1_1">
228      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
229      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
230      <EntityType Name="Fabric" BaseType="Fabric.v1_1_0.Fabric"/>
231    </Schema>
232
233    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_1_2">
234      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
235      <Annotation Term="OData.Description" String="This version was created to specify 64-bit integers in OpenAPI."/>
236      <EntityType Name="Fabric" BaseType="Fabric.v1_1_1.Fabric"/>
237    </Schema>
238
239    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_1_3">
240      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
241      <Annotation Term="OData.Description" String="This version was created to correct various descriptions to use proper normative terminology."/>
242      <EntityType Name="Fabric" BaseType="Fabric.v1_1_2.Fabric"/>
243    </Schema>
244
245    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_1_4">
246      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
247      <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."/>
248      <EntityType Name="Fabric" BaseType="Fabric.v1_1_3.Fabric"/>
249    </Schema>
250
251    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_2_0">
252      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
253      <Annotation Term="Redfish.Release" String="2020.3"/>
254
255      <EntityType Name="Fabric" BaseType="Fabric.v1_1_1.Fabric">
256        <NavigationProperty Name="Connections" Type="ConnectionCollection.ConnectionCollection" ContainsTarget="true" Nullable="false">
257          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
258          <Annotation Term="OData.Description" String="The collection of links to the connections that this fabric contains."/>
259          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource collection of type `ConnectionCollection`."/>
260          <Annotation Term="OData.AutoExpandReferences"/>
261        </NavigationProperty>
262        <NavigationProperty Name="EndpointGroups" Type="EndpointGroupCollection.EndpointGroupCollection" ContainsTarget="true" Nullable="false">
263          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
264          <Annotation Term="OData.Description" String="The collection of links to the endpoint groups that this fabric contains."/>
265          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource collection of type `EndpointGroupCollection`."/>
266          <Annotation Term="OData.AutoExpandReferences"/>
267        </NavigationProperty>
268      </EntityType>
269    </Schema>
270
271    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_2_1">
272      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
273      <Annotation Term="OData.Description" String="This version was created to specify 64-bit integers in OpenAPI."/>
274      <EntityType Name="Fabric" BaseType="Fabric.v1_2_0.Fabric"/>
275    </Schema>
276
277    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_2_2">
278      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
279      <Annotation Term="OData.Description" String="This version was created to correct various descriptions to use proper normative terminology."/>
280      <EntityType Name="Fabric" BaseType="Fabric.v1_2_1.Fabric"/>
281    </Schema>
282
283    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_2_3">
284      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
285      <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."/>
286      <EntityType Name="Fabric" BaseType="Fabric.v1_2_2.Fabric"/>
287    </Schema>
288
289    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_3_0">
290      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
291      <Annotation Term="Redfish.Release" String="2022.1"/>
292
293      <EntityType Name="Fabric" BaseType="Fabric.v1_2_2.Fabric">
294        <Property Name="UUID" Type="Resource.UUID">
295          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
296          <Annotation Term="OData.Description" String="The UUID for this fabric."/>
297          <Annotation Term="OData.LongDescription" String="This property shall contain a universally unique identifier number for the fabric."/>
298        </Property>
299      </EntityType>
300    </Schema>
301
302    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_3_1">
303      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
304      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
305      <EntityType Name="Fabric" BaseType="Fabric.v1_3_0.Fabric"/>
306    </Schema>
307
308    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_3_2">
309      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
310      <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."/>
311      <EntityType Name="Fabric" BaseType="Fabric.v1_3_1.Fabric"/>
312    </Schema>
313
314    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Fabric.v1_4_0">
315      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
316      <Annotation Term="Redfish.Release" String="2025.2"/>
317
318      <EntityType Name="Fabric" BaseType="Fabric.v1_3_2.Fabric"/>
319
320      <ComplexType Name="Links" BaseType="Fabric.v1_0_0.Links">
321        <NavigationProperty Name="ManagedBy" Type="Collection(Manager.Manager)">
322          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
323          <Annotation Term="OData.Description" String="An array of links to the managers responsible for managing this fabric."/>
324          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type `Manager` that represent the managers responsible for managing this fabric."/>
325          <Annotation Term="OData.AutoExpandReferences"/>
326        </NavigationProperty>
327      </ComplexType>
328    </Schema>
329
330  </edmx:DataServices>
331</edmx:Edmx>
332