1<?xml version="1.0" encoding="UTF-8"?>
2<!---->
3<!--################################################################################       -->
4<!--# Redfish Schema:  CollectionCapabilities 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-2023 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://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
18    <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
19    <edmx:Include Namespace="Validation.v1_0_0" Alias="Validation"/>
20  </edmx:Reference>
21  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
22    <edmx:Include Namespace="Resource"/>
23  </edmx:Reference>
24
25  <edmx:DataServices>
26
27    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CollectionCapabilities">
28      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
29
30      <ComplexType Name="CollectionCapabilities" Abstract="true">
31        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
32        <Annotation Term="OData.Description" String="This type describes the capabilities of a collection."/>
33        <Annotation Term="OData.LongDescription" String="This type shall describe any capabilities of a resource collection in terms of how a client can create resources within the resource collection."/>
34      </ComplexType>
35    </Schema>
36
37    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CollectionCapabilities.v1_0_0">
38      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
39      <Annotation Term="Redfish.Release" String="2017.1"/>
40
41      <ComplexType Name="CollectionCapabilities" BaseType="CollectionCapabilities.CollectionCapabilities">
42        <Property Name="Capabilities" Type="Collection(CollectionCapabilities.v1_0_0.Capability)" Nullable="false">
43          <Annotation Term="OData.Description" String="The list of capabilities supported by this resource."/>
44          <Annotation Term="OData.LongDescription" String="This property shall contain an array of objects that describe the capabilities of this resource collection."/>
45        </Property>
46      </ComplexType>
47
48      <ComplexType Name="Capability">
49        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
50        <Annotation Term="OData.Description" String="This type describes a capability of a collection for a specific use case."/>
51        <Annotation Term="OData.LongDescription" String="This type shall describe a capability of a resource collection in terms of how a client can create resources within the collection for the specified use case."/>
52        <NavigationProperty Name="CapabilitiesObject" Type="Resource.Item" Nullable="false">
53          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
54          <Annotation Term="OData.Description" String="The link to the resource the client can issue a GET request against to understand how to form a POST request for a collection."/>
55          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource that matches the type for a resource collection and shall contain annotations that describe the properties allowed in the POST request."/>
56          <Annotation Term="OData.AutoExpandReferences"/>
57          <Annotation Term="Redfish.Required"/>
58        </NavigationProperty>
59        <Property Name="UseCase" Type="CollectionCapabilities.v1_0_0.UseCase" Nullable="false">
60          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
61          <Annotation Term="OData.Description" String="The use case in which a client can issue a POST request to the collection."/>
62          <Annotation Term="OData.LongDescription" String="This property shall contain an enumerated value that describes the use case for this capability instance."/>
63          <Annotation Term="Redfish.Required"/>
64        </Property>
65        <Property Name="Links" Type="CollectionCapabilities.v1_0_0.Links" Nullable="false">
66          <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
67          <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."/>
68          <Annotation Term="Redfish.Required"/>
69        </Property>
70      </ComplexType>
71
72      <EnumType Name="UseCase">
73        <Member Name="ComputerSystemComposition">
74          <Annotation Term="OData.Description" String="This capability describes a client creating a new computer system resource from a set of disaggregated hardware."/>
75        </Member>
76        <Member Name="ComputerSystemConstrainedComposition">
77          <Annotation Term="OData.Description" String="This capability describes a client creating a new computer system resource from a set of constraints."/>
78          <Annotation Term="Redfish.Revisions">
79            <Collection>
80              <Record>
81                <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
82                <PropertyValue Property="Version" String="v1_1_0"/>
83              </Record>
84            </Collection>
85          </Annotation>
86        </Member>
87        <Member Name="VolumeCreation">
88          <Annotation Term="OData.Description" String="This capability describes a client creating a new volume resource as part of an existing storage subsystem."/>
89        </Member>
90        <Member Name="ResourceBlockComposition">
91          <Annotation Term="OData.Description" String="This capability describes a client creating a new resource block from a set of other resource blocks."/>
92          <Annotation Term="Redfish.Revisions">
93            <Collection>
94              <Record>
95                <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
96                <PropertyValue Property="Version" String="v1_3_0"/>
97              </Record>
98            </Collection>
99          </Annotation>
100        </Member>
101        <Member Name="ResourceBlockConstrainedComposition">
102          <Annotation Term="OData.Description" String="This capability describes a client creating a new resource block from a set of constraints."/>
103          <Annotation Term="Redfish.Revisions">
104            <Collection>
105              <Record>
106                <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
107                <PropertyValue Property="Version" String="v1_3_0"/>
108              </Record>
109            </Collection>
110          </Annotation>
111        </Member>
112        <Member Name="RegisterResourceBlock">
113          <Annotation Term="OData.Description" String="This capability describes a client creating a new resource block from an existing computer system to enable it to be used by the composition service."/>
114          <Annotation Term="Redfish.Revisions">
115            <Collection>
116              <Record>
117                <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
118                <PropertyValue Property="Version" String="v1_4_0"/>
119              </Record>
120            </Collection>
121          </Annotation>
122        </Member>
123      </EnumType>
124
125      <ComplexType Name="Links" BaseType="Resource.Links">
126        <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
127        <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."/>
128        <NavigationProperty Name="TargetCollection" Type="Resource.ResourceCollection" Nullable="false">
129          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
130          <Annotation Term="OData.Description" String="The link to the collection that this capabilities structure is describing."/>
131          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource collection that this structure describes.  A client can use this structure to understand how to form the POST request for the collection."/>
132          <Annotation Term="OData.AutoExpandReferences"/>
133          <Annotation Term="Redfish.Required"/>
134        </NavigationProperty>
135        <NavigationProperty Name="RelatedItem" Type="Collection(Resource.Item)">
136          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
137          <Annotation Term="OData.Description" String="An array of links to resources associated with this capability."/>
138          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources that are related to this capability."/>
139          <Annotation Term="OData.AutoExpandReferences"/>
140        </NavigationProperty>
141      </ComplexType>
142    </Schema>
143
144    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CollectionCapabilities.v1_0_1">
145      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
146      <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."/>
147      <ComplexType Name="CollectionCapabilities" BaseType="CollectionCapabilities.v1_0_0.CollectionCapabilities"/>
148    </Schema>
149
150    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CollectionCapabilities.v1_0_2">
151      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
152      <Annotation Term="OData.Description" String="This version was created to use the new revisions annotation."/>
153      <ComplexType Name="CollectionCapabilities" BaseType="CollectionCapabilities.v1_0_1.CollectionCapabilities"/>
154    </Schema>
155
156    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CollectionCapabilities.v1_0_3">
157      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
158      <Annotation Term="OData.Description" String="This version was created to update descriptions that this schema defines."/>
159      <ComplexType Name="CollectionCapabilities" BaseType="CollectionCapabilities.v1_0_2.CollectionCapabilities"/>
160    </Schema>
161
162    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CollectionCapabilities.v1_0_4">
163      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
164      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
165      <ComplexType Name="CollectionCapabilities" BaseType="CollectionCapabilities.v1_0_3.CollectionCapabilities"/>
166    </Schema>
167
168    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CollectionCapabilities.v1_1_0">
169      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
170      <Annotation Term="Redfish.Release" String="2018.2"/>
171      <Annotation Term="OData.Description" String="This version was created to add `ComputerSystemConstrainedComposition` to the UseCase enumeration."/>
172
173      <ComplexType Name="CollectionCapabilities" BaseType="CollectionCapabilities.v1_0_1.CollectionCapabilities"/>
174    </Schema>
175
176    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CollectionCapabilities.v1_1_1">
177      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
178      <Annotation Term="OData.Description" String="This version was created to use the new revisions annotation."/>
179      <ComplexType Name="CollectionCapabilities" BaseType="CollectionCapabilities.v1_1_0.CollectionCapabilities"/>
180    </Schema>
181
182    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CollectionCapabilities.v1_1_2">
183      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
184      <Annotation Term="OData.Description" String="This version was created to update descriptions that this schema defines."/>
185      <ComplexType Name="CollectionCapabilities" BaseType="CollectionCapabilities.v1_1_1.CollectionCapabilities"/>
186    </Schema>
187
188    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CollectionCapabilities.v1_1_3">
189      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
190      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
191      <ComplexType Name="CollectionCapabilities" BaseType="CollectionCapabilities.v1_1_2.CollectionCapabilities"/>
192    </Schema>
193
194    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CollectionCapabilities.v1_2_0">
195      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
196      <Annotation Term="Redfish.Release" String="2019.2"/>
197
198      <ComplexType Name="CollectionCapabilities" BaseType="CollectionCapabilities.v1_1_2.CollectionCapabilities">
199        <Property Name="MaxMembers" Type="Edm.Int64" Nullable="false">
200          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
201          <Annotation Term="OData.Description" String="The maximum number of members allowed in this collection."/>
202          <Annotation Term="OData.LongDescription" String="This property shall contain the maximum number of members allowed in this resource collection."/>
203          <Annotation Term="Validation.Minimum" Int="1"/>
204        </Property>
205      </ComplexType>
206    </Schema>
207
208    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CollectionCapabilities.v1_2_1">
209      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
210      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
211      <ComplexType Name="CollectionCapabilities" BaseType="CollectionCapabilities.v1_2_0.CollectionCapabilities"/>
212    </Schema>
213
214    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CollectionCapabilities.v1_2_2">
215      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
216      <Annotation Term="OData.Description" String="This version was created to specify 64-bit integers in OpenAPI."/>
217      <ComplexType Name="CollectionCapabilities" BaseType="CollectionCapabilities.v1_2_1.CollectionCapabilities"/>
218    </Schema>
219
220    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CollectionCapabilities.v1_3_0">
221      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
222      <Annotation Term="Redfish.Release" String="2020.4"/>
223      <Annotation Term="OData.Description" String="This version was created to add `ResourceBlockComposition` and `ResourceBlockConstrainedComposition` to the UseCase enumeration."/>
224
225      <ComplexType Name="CollectionCapabilities" BaseType="CollectionCapabilities.v1_2_2.CollectionCapabilities"/>
226    </Schema>
227
228    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="CollectionCapabilities.v1_4_0">
229      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
230      <Annotation Term="Redfish.Release" String="2022.1"/>
231      <Annotation Term="OData.Description" String="This version was created to add `ExpandableResourceComposition` to the UseCase enumeration."/>
232
233      <ComplexType Name="CollectionCapabilities" BaseType="CollectionCapabilities.v1_3_0.CollectionCapabilities"/>
234    </Schema>
235
236  </edmx:DataServices>
237</edmx:Edmx>
238