1<?xml version="1.0" encoding="UTF-8"?>
2<!---->
3<!--################################################################################       -->
4<!--# Redfish Schema:  Container v1.0.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://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Measures.V1.xml">
21    <edmx:Include Namespace="Org.OData.Measures.V1" Alias="Measures"/>
22  </edmx:Reference>
23  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
24    <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
25    <edmx:Include Namespace="Validation.v1_0_0" Alias="Validation"/>
26  </edmx:Reference>
27  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
28    <edmx:Include Namespace="Resource"/>
29    <edmx:Include Namespace="Resource.v1_0_0"/>
30  </edmx:Reference>
31  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/ContainerImage_v1.xml">
32    <edmx:Include Namespace="ContainerImage"/>
33  </edmx:Reference>
34  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/EthernetInterfaceCollection_v1.xml">
35    <edmx:Include Namespace="EthernetInterfaceCollection"/>
36  </edmx:Reference>
37
38  <edmx:DataServices>
39
40    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Container">
41      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
42      <Annotation Term="Redfish.Language" String="en"/>
43
44      <EntityType Name="Container" BaseType="Resource.v1_0_0.Resource" Abstract="true">
45        <Annotation Term="OData.Description" String="The `Container` schema represents an instance of a container that is running on a computer system."/>
46        <Annotation Term="OData.LongDescription" String="This resource shall represent an instance of a container that is running on a computer system."/>
47        <Annotation Term="Capabilities.InsertRestrictions">
48          <Record>
49            <PropertyValue Property="Insertable" Bool="false"/>
50          </Record>
51        </Annotation>
52        <Annotation Term="Capabilities.UpdateRestrictions">
53          <Record>
54            <PropertyValue Property="Updatable" Bool="false"/>
55          </Record>
56        </Annotation>
57        <Annotation Term="Capabilities.DeleteRestrictions">
58          <Record>
59            <PropertyValue Property="Deletable" Bool="false"/>
60          </Record>
61        </Annotation>
62        <Annotation Term="Redfish.Uris">
63          <Collection>
64            <String>/redfish/v1/Systems/{ComputerSystemId}/OperatingSystem/Containers/{ContainerId}</String>
65            <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/OperatingSystem/Containers/{ContainerId}</String>
66            <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/OperatingSystem/Containers/{ContainerId}</String>
67          </Collection>
68        </Annotation>
69      </EntityType>
70
71      <Action Name="Reset" IsBound="true">
72        <Annotation Term="OData.Description" String="This action resets the container."/>
73        <Annotation Term="OData.LongDescription" String="This action shall reset the container."/>
74        <Parameter Name="Container" Type="Container.v1_0_0.Actions"/>
75        <Parameter Name="ResetType" Type="Resource.ResetType">
76          <Annotation Term="OData.Description" String="The type of reset."/>
77          <Annotation Term="OData.LongDescription" String="This parameter shall contain the type of reset.  `GracefulRestart` and `ForceRestart` shall indicate requests to restart the container.  `GracefulShutdown` and `ForceOff` shall indicate requests to stop or disable the container.  `On` and `ForceOn` shall indicate requests to start or enable the container.  The service can accept a request without the parameter and shall perform a `GracefulRestart`."/>
78        </Parameter>
79      </Action>
80    </Schema>
81
82    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Container.v1_0_0">
83      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
84      <Annotation Term="Redfish.Release" String="2023.2"/>
85
86      <EntityType Name="Container" BaseType="Container.Container">
87        <Property Name="Status" Type="Resource.Status" Nullable="false">
88          <Annotation Term="OData.Description" String="The status and health of the resource and its subordinate or dependent resources."/>
89          <Annotation Term="OData.LongDescription" String="This property shall contain any status or health properties of the resource."/>
90        </Property>
91        <Property Name="StartTime" Type="Edm.DateTimeOffset">
92          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
93          <Annotation Term="OData.Description" String="The date and time when the container started running."/>
94          <Annotation Term="OData.LongDescription" String="This property shall indicate the date and time when the container started running."/>
95        </Property>
96        <Property Name="ProgrammaticId" Type="Edm.String">
97          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
98          <Annotation Term="OData.Description" String="The programmatic identifier for this container."/>
99          <Annotation Term="OData.LongDescription" String="This property shall contain the programmatic identifier for this container.  This is typically a hash string that represents the running instance of this container."/>
100        </Property>
101        <Property Name="Limits" Type="Container.v1_0_0.Limits" Nullable="false">
102          <Annotation Term="OData.Description" String="The resource limits allocated to this container."/>
103          <Annotation Term="OData.LongDescription" String="This property shall contain the resource limits allocated to this container."/>
104        </Property>
105        <Property Name="MountPoints" Type="Collection(Container.v1_0_0.MountPoint)">
106          <Annotation Term="OData.Description" String="The file system mount points configured for this container."/>
107          <Annotation Term="OData.LongDescription" String="This property shall contain the file system mount points configured for this container."/>
108        </Property>
109        <NavigationProperty Name="EthernetInterfaces" Type="EthernetInterfaceCollection.EthernetInterfaceCollection" ContainsTarget="true" Nullable="false">
110          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
111          <Annotation Term="OData.Description" String="The link to the collection of Ethernet interfaces associated with this container."/>
112          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource collection of type `EthernetInterfaceCollection`."/>
113          <Annotation Term="OData.AutoExpandReferences"/>
114        </NavigationProperty>
115        <Property Name="Links" Type="Container.v1_0_0.Links" Nullable="false">
116          <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
117          <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."/>
118        </Property>
119        <Property Name="Actions" Type="Container.v1_0_0.Actions" Nullable="false">
120          <Annotation Term="OData.Description" String="The available actions for this resource."/>
121          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
122        </Property>
123      </EntityType>
124
125      <ComplexType Name="Limits">
126        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
127        <Annotation Term="OData.Description" String="The resource limits allocated to a container."/>
128        <Annotation Term="OData.LongDescription" String="This type shall contain the resource limits allocated to a container."/>
129        <Property Name="MemoryBytes" Type="Edm.Int64">
130          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
131          <Annotation Term="OData.Description" String="The amount of memory available to this container in bytes."/>
132          <Annotation Term="OData.LongDescription" String="This property shall contain the amount of memory available to this container in bytes."/>
133          <Annotation Term="Measures.Unit" String="By"/>
134        </Property>
135        <Property Name="CPUCount" Type="Edm.Decimal">
136          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
137          <Annotation Term="OData.Description" String="The number of processors available to this container."/>
138          <Annotation Term="OData.LongDescription" String="This property shall contain the number of processors available to this container."/>
139        </Property>
140      </ComplexType>
141
142      <ComplexType Name="MountPoint">
143        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
144        <Annotation Term="OData.Description" String="A file system mount point configured for a container."/>
145        <Annotation Term="OData.LongDescription" String="This type shall contain a file system mount point configured for a container."/>
146        <Property Name="Source" Type="Edm.String">
147          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
148          <Annotation Term="OData.Description" String="The file system path from the hosting system that is provided to this container."/>
149          <Annotation Term="OData.LongDescription" String="This property shall contain the file system path from the hosting system that is provided to this container."/>
150        </Property>
151        <Property Name="Destination" Type="Edm.String">
152          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
153          <Annotation Term="OData.Description" String="The file system path in the container that is provided as the mount point to access the files and folders contained in the source path."/>
154          <Annotation Term="OData.LongDescription" String="This property shall contain the file system path in the container that is provided as the mount point to access the files and folders specified by the `Source` property."/>
155        </Property>
156      </ComplexType>
157
158      <ComplexType Name="Links" BaseType="Resource.Links">
159        <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
160        <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."/>
161        <NavigationProperty Name="ContainerImage" Type="ContainerImage.ContainerImage" Nullable="false">
162          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
163          <Annotation Term="OData.Description" String="The link to the container image for this container."/>
164          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource of type `ContainerImage` that represents the container image for this container."/>
165          <Annotation Term="OData.AutoExpandReferences"/>
166        </NavigationProperty>
167      </ComplexType>
168
169      <ComplexType Name="Actions">
170        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
171        <Annotation Term="OData.Description" String="The available actions for this resource."/>
172        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
173        <Property Name="Oem" Type="Container.v1_0_0.OemActions" Nullable="false">
174          <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
175          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
176        </Property>
177      </ComplexType>
178
179      <ComplexType Name="OemActions">
180        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
181        <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
182        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
183      </ComplexType>
184    </Schema>
185
186    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Container.v1_0_1">
187      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
188      <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."/>
189      <EntityType Name="Container" BaseType="Container.v1_0_0.Container"/>
190    </Schema>
191
192  </edmx:DataServices>
193</edmx:Edmx>
194