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-2024 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      </EntityType>
70    </Schema>
71
72    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="DriveMetrics.v1_0_0">
73      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
74      <Annotation Term="Redfish.Release" String="2023.1"/>
75
76      <EntityType Name="DriveMetrics" BaseType="DriveMetrics.DriveMetrics">
77        <Property Name="CorrectableIOReadErrorCount" Type="Edm.Int64">
78          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
79          <Annotation Term="OData.Description" String="The number of correctable read errors for the lifetime of the drive."/>
80          <Annotation Term="OData.LongDescription" String="This property shall contain the number of correctable read errors for the lifetime of the drive."/>
81        </Property>
82        <Property Name="CorrectableIOWriteErrorCount" Type="Edm.Int64">
83          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
84          <Annotation Term="OData.Description" String="The number of correctable write errors for the lifetime of the drive."/>
85          <Annotation Term="OData.LongDescription" String="This property shall contain the number of correctable write errors for the lifetime of the drive."/>
86        </Property>
87        <Property Name="UncorrectableIOReadErrorCount" Type="Edm.Int64">
88          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
89          <Annotation Term="OData.Description" String="The number of uncorrectable read errors for the lifetime of the drive."/>
90          <Annotation Term="OData.LongDescription" String="This property shall contain the number of uncorrectable read errors for the lifetime of the drive."/>
91        </Property>
92        <Property Name="UncorrectableIOWriteErrorCount" Type="Edm.Int64">
93          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
94          <Annotation Term="OData.Description" String="The number of uncorrectable write errors for the lifetime of the drive."/>
95          <Annotation Term="OData.LongDescription" String="This property shall contain the number of uncorrectable write errors for the lifetime of the drive."/>
96        </Property>
97        <Property Name="BadBlockCount" Type="Edm.Int64">
98          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
99          <Annotation Term="OData.Description" String="The total number of bad blocks reported by the drive."/>
100          <Annotation Term="OData.LongDescription" String="This property shall contain the total number of bad blocks reported by the drive."/>
101        </Property>
102        <Property Name="PowerOnHours" Type="Edm.Decimal">
103          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
104          <Annotation Term="OData.Description" String="The number of power-on hours for the lifetime of the drive."/>
105          <Annotation Term="OData.LongDescription" String="This property shall contain the number of power-on hours for the lifetime of the drive."/>
106        </Property>
107        <Property Name="NVMeSMART" Type="StorageControllerMetrics.NVMeSMARTMetrics" Nullable="false">
108          <Annotation Term="OData.Description" String="The NVMe SMART metrics for the drive."/>
109          <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."/>
110        </Property>
111        <Property Name="Actions" Type="DriveMetrics.v1_0_0.Actions" Nullable="false">
112          <Annotation Term="OData.Description" String="The available actions for this resource."/>
113          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
114        </Property>
115      </EntityType>
116
117      <ComplexType Name="Actions">
118        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
119        <Annotation Term="OData.Description" String="The available actions for this resource."/>
120        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
121        <Property Name="Oem" Type="DriveMetrics.v1_0_0.OemActions" Nullable="false">
122          <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
123          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
124        </Property>
125      </ComplexType>
126
127      <ComplexType Name="OemActions">
128        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
129        <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
130        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
131      </ComplexType>
132    </Schema>
133
134    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="DriveMetrics.v1_0_1">
135      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
136      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
137      <EntityType Name="DriveMetrics" BaseType="DriveMetrics.v1_0_0.DriveMetrics"/>
138    </Schema>
139
140    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="DriveMetrics.v1_0_2">
141      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
142      <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."/>
143      <EntityType Name="DriveMetrics" BaseType="DriveMetrics.v1_0_1.DriveMetrics"/>
144    </Schema>
145
146    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="DriveMetrics.v1_1_0">
147      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
148      <Annotation Term="Redfish.Release" String="2023.2"/>
149
150      <EntityType Name="DriveMetrics" BaseType="DriveMetrics.v1_0_0.DriveMetrics">
151        <Property Name="NativeCommandQueueDepth" Type="Edm.Int64">
152          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
153          <Annotation Term="OData.Description" String="The current depth of the Native Command Queue."/>
154          <Annotation Term="OData.LongDescription" String="This property shall contain the current depth of the Native Command Queue as defined by the SATA Specification."/>
155        </Property>
156      </EntityType>
157    </Schema>
158
159    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="DriveMetrics.v1_1_1">
160      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
161      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
162      <EntityType Name="DriveMetrics" BaseType="DriveMetrics.v1_1_0.DriveMetrics"/>
163    </Schema>
164
165    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="DriveMetrics.v1_1_2">
166      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
167      <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."/>
168      <EntityType Name="DriveMetrics" BaseType="DriveMetrics.v1_1_1.DriveMetrics"/>
169    </Schema>
170
171    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="DriveMetrics.v1_2_0">
172      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
173      <Annotation Term="Redfish.Release" String="2023.3"/>
174
175      <EntityType Name="DriveMetrics" BaseType="DriveMetrics.v1_1_1.DriveMetrics">
176        <Property Name="ReadIOKiBytes" Type="Edm.Int64">
177          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
178          <Annotation Term="OData.Description" String="The number of kibibytes read."/>
179          <Annotation Term="OData.LongDescription" String="This property shall contain the total number of kibibytes read from the time of last reset or wrap."/>
180          <Annotation Term="Measures.Unit" String="KiBy"/>
181        </Property>
182        <Property Name="WriteIOKiBytes" Type="Edm.Int64">
183          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
184          <Annotation Term="OData.Description" String="The number of kibibytes written."/>
185          <Annotation Term="OData.LongDescription" String="This property shall contain the total number of kibibytes written from the time of last reset or wrap."/>
186          <Annotation Term="Measures.Unit" String="KiBy"/>
187        </Property>
188      </EntityType>
189    </Schema>
190
191    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="DriveMetrics.v1_2_1">
192      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
193      <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."/>
194      <EntityType Name="DriveMetrics" BaseType="DriveMetrics.v1_2_0.DriveMetrics"/>
195    </Schema>
196
197  </edmx:DataServices>
198</edmx:Edmx>
199