xref: /openbmc/bmcweb/features/redfish/schema/dmtf/csdl/DriveMetrics_v1.xml (revision c6d7a45d427f9a6d9e761afcf305761dca60d7cf)
1<?xml version="1.0" encoding="UTF-8"?>
2<!---->
3<!--################################################################################               -->
4<!--# Redfish Schema:  DriveMetrics v1.2.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-2025 DMTF in cooperation with Storage Networking Industry Association (SNIA). -->
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/Resource_v1.xml">
24    <edmx:Include Namespace="Resource.v1_0_0"/>
25  </edmx:Reference>
26  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
27    <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
28  </edmx:Reference>
29  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/StorageControllerMetrics_v1.xml">
30    <edmx:Include Namespace="StorageControllerMetrics"/>
31  </edmx:Reference>
32
33  <edmx:DataServices>
34
35    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="DriveMetrics">
36      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
37      <Annotation Term="Redfish.Language" String="en"/>
38
39      <EntityType Name="DriveMetrics" BaseType="Resource.v1_0_0.Resource" Abstract="true">
40        <Annotation Term="OData.Description" String="The usage and health statistics for a drive."/>
41        <Annotation Term="OData.LongDescription" String="The `DriveMetrics` schema shall contain the usage and health statistics for a drive in a Redfish implementation."/>
42        <Annotation Term="Capabilities.InsertRestrictions">
43          <Record>
44            <PropertyValue Property="Insertable" Bool="false"/>
45          </Record>
46        </Annotation>
47        <Annotation Term="Capabilities.UpdateRestrictions">
48          <Record>
49            <PropertyValue Property="Updatable" Bool="false"/>
50          </Record>
51        </Annotation>
52        <Annotation Term="Capabilities.DeleteRestrictions">
53          <Record>
54            <PropertyValue Property="Deletable" Bool="false"/>
55          </Record>
56        </Annotation>
57        <Annotation Term="Redfish.Uris">
58          <Collection>
59            <String>/redfish/v1/Systems/{ComputerSystemId}/Storage/{StorageId}/Drives/{DriveId}/Metrics</String>
60            <String>/redfish/v1/Chassis/{ChassisId}/Drives/{DriveId}/Metrics</String>
61            <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/Drives/{DriveId}/Metrics</String>
62            <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Drives/{DriveId}/Metrics</String>
63            <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/Drives/{DriveId}/Metrics</String>
64            <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/Drives/{DriveId}/Metrics</String>
65            <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Drives/{DriveId}/Metrics</String>
66            <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/Drives/{DriveId}/Metrics</String>
67          </Collection>
68        </Annotation>
69        <Annotation Term="Redfish.DeprecatedUris">
70          <Collection>
71            <String>/redfish/v1/Systems/{ComputerSystemId}/Storage/{StorageId}/Drives/{DriveId}/Metrics</String>
72            <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/Drives/{DriveId}/Metrics</String>
73            <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/Drives/{DriveId}/Metrics</String>
74            <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/Drives/{DriveId}/Metrics</String>
75            <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/Drives/{DriveId}/Metrics</String>
76          </Collection>
77        </Annotation>
78      </EntityType>
79    </Schema>
80
81    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="DriveMetrics.v1_0_0">
82      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
83      <Annotation Term="Redfish.Release" String="2023.1"/>
84
85      <EntityType Name="DriveMetrics" BaseType="DriveMetrics.DriveMetrics">
86        <Property Name="CorrectableIOReadErrorCount" Type="Edm.Int64">
87          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
88          <Annotation Term="OData.Description" String="The number of correctable read errors for the lifetime of the drive."/>
89          <Annotation Term="OData.LongDescription" String="This property shall contain the number of correctable read errors for the lifetime of the drive."/>
90        </Property>
91        <Property Name="CorrectableIOWriteErrorCount" Type="Edm.Int64">
92          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
93          <Annotation Term="OData.Description" String="The number of correctable write errors for the lifetime of the drive."/>
94          <Annotation Term="OData.LongDescription" String="This property shall contain the number of correctable write errors for the lifetime of the drive."/>
95        </Property>
96        <Property Name="UncorrectableIOReadErrorCount" Type="Edm.Int64">
97          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
98          <Annotation Term="OData.Description" String="The number of uncorrectable read errors for the lifetime of the drive."/>
99          <Annotation Term="OData.LongDescription" String="This property shall contain the number of uncorrectable read errors for the lifetime of the drive."/>
100        </Property>
101        <Property Name="UncorrectableIOWriteErrorCount" Type="Edm.Int64">
102          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
103          <Annotation Term="OData.Description" String="The number of uncorrectable write errors for the lifetime of the drive."/>
104          <Annotation Term="OData.LongDescription" String="This property shall contain the number of uncorrectable write errors for the lifetime of the drive."/>
105        </Property>
106        <Property Name="BadBlockCount" Type="Edm.Int64">
107          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
108          <Annotation Term="OData.Description" String="The total number of bad blocks reported by the drive."/>
109          <Annotation Term="OData.LongDescription" String="This property shall contain the total number of bad blocks reported by the drive."/>
110        </Property>
111        <Property Name="PowerOnHours" Type="Edm.Decimal">
112          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
113          <Annotation Term="OData.Description" String="The number of power-on hours for the lifetime of the drive."/>
114          <Annotation Term="OData.LongDescription" String="This property shall contain the number of power-on hours for the lifetime of the drive."/>
115        </Property>
116        <Property Name="NVMeSMART" Type="StorageControllerMetrics.NVMeSMARTMetrics" Nullable="false">
117          <Annotation Term="OData.Description" String="The NVMe SMART metrics for the drive."/>
118          <Annotation Term="OData.LongDescription" String="This property shall contain the NVMe SMART metrics for the drive as defined by the NVMe SMART/Health Information log page.  This property shall not be present if the service represents NVMe controllers in the drive as StorageController resources."/>
119        </Property>
120        <Property Name="Actions" Type="DriveMetrics.v1_0_0.Actions" Nullable="false">
121          <Annotation Term="OData.Description" String="The available actions for this resource."/>
122          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
123        </Property>
124      </EntityType>
125
126      <ComplexType Name="Actions">
127        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
128        <Annotation Term="OData.Description" String="The available actions for this resource."/>
129        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
130        <Property Name="Oem" Type="DriveMetrics.v1_0_0.OemActions" Nullable="false">
131          <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
132          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
133        </Property>
134      </ComplexType>
135
136      <ComplexType Name="OemActions">
137        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
138        <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
139        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
140      </ComplexType>
141    </Schema>
142
143    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="DriveMetrics.v1_0_1">
144      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
145      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
146      <EntityType Name="DriveMetrics" BaseType="DriveMetrics.v1_0_0.DriveMetrics"/>
147    </Schema>
148
149    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="DriveMetrics.v1_0_2">
150      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
151      <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."/>
152      <EntityType Name="DriveMetrics" BaseType="DriveMetrics.v1_0_1.DriveMetrics"/>
153    </Schema>
154
155    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="DriveMetrics.v1_1_0">
156      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
157      <Annotation Term="Redfish.Release" String="2023.2"/>
158
159      <EntityType Name="DriveMetrics" BaseType="DriveMetrics.v1_0_0.DriveMetrics">
160        <Property Name="NativeCommandQueueDepth" Type="Edm.Int64">
161          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
162          <Annotation Term="OData.Description" String="The current depth of the Native Command Queue."/>
163          <Annotation Term="OData.LongDescription" String="This property shall contain the current depth of the Native Command Queue as defined by the SATA Specification."/>
164        </Property>
165      </EntityType>
166    </Schema>
167
168    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="DriveMetrics.v1_1_1">
169      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
170      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
171      <EntityType Name="DriveMetrics" BaseType="DriveMetrics.v1_1_0.DriveMetrics"/>
172    </Schema>
173
174    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="DriveMetrics.v1_1_2">
175      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
176      <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."/>
177      <EntityType Name="DriveMetrics" BaseType="DriveMetrics.v1_1_1.DriveMetrics"/>
178    </Schema>
179
180    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="DriveMetrics.v1_2_0">
181      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
182      <Annotation Term="Redfish.Release" String="2023.3"/>
183
184      <EntityType Name="DriveMetrics" BaseType="DriveMetrics.v1_1_1.DriveMetrics">
185        <Property Name="ReadIOKiBytes" Type="Edm.Int64">
186          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
187          <Annotation Term="OData.Description" String="The number of kibibytes read."/>
188          <Annotation Term="OData.LongDescription" String="This property shall contain the total number of kibibytes read from the time of last reset or wrap."/>
189          <Annotation Term="Measures.Unit" String="KiBy"/>
190        </Property>
191        <Property Name="WriteIOKiBytes" Type="Edm.Int64">
192          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
193          <Annotation Term="OData.Description" String="The number of kibibytes written."/>
194          <Annotation Term="OData.LongDescription" String="This property shall contain the total number of kibibytes written from the time of last reset or wrap."/>
195          <Annotation Term="Measures.Unit" String="KiBy"/>
196        </Property>
197      </EntityType>
198    </Schema>
199
200    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="DriveMetrics.v1_2_1">
201      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
202      <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."/>
203      <EntityType Name="DriveMetrics" BaseType="DriveMetrics.v1_2_0.DriveMetrics"/>
204    </Schema>
205
206  </edmx:DataServices>
207</edmx:Edmx>
208