xref: /openbmc/bmcweb/features/redfish/schema/dmtf/csdl/Job_v1.xml (revision c6d7a45d427f9a6d9e761afcf305761dca60d7cf)
1<?xml version="1.0" encoding="UTF-8"?>
2<!---->
3<!--################################################################################       -->
4<!--# Redfish Schema:  Job v1.3.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://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/JobCollection_v1.xml">
32    <edmx:Include Namespace="JobCollection"/>
33  </edmx:Reference>
34  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Schedule_v1.xml">
35    <edmx:Include Namespace="Schedule"/>
36  </edmx:Reference>
37  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Message_v1.xml">
38    <edmx:Include Namespace="Message"/>
39  </edmx:Reference>
40  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/JobExecutor_v1.xml">
41    <edmx:Include Namespace="JobExecutor"/>
42  </edmx:Reference>
43  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/JobDocument_v1.xml">
44    <edmx:Include Namespace="JobDocument"/>
45  </edmx:Reference>
46
47  <edmx:DataServices>
48
49    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job">
50      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
51      <Annotation Term="Redfish.Language" String="en"/>
52
53      <EntityType Name="Job" BaseType="Resource.v1_0_0.Resource" Abstract="true">
54        <Annotation Term="OData.Description" String="The `Job` schema contains information about a job that a Redfish job service schedules or executes.  Clients create jobs to describe a series of operations that occur at periodic intervals."/>
55        <Annotation Term="OData.LongDescription" String="This resource shall contain a job in a Redfish implementation."/>
56        <Annotation Term="Capabilities.InsertRestrictions">
57          <Record>
58            <PropertyValue Property="Insertable" Bool="false"/>
59          </Record>
60        </Annotation>
61        <Annotation Term="Capabilities.UpdateRestrictions">
62          <Record>
63            <PropertyValue Property="Updatable" Bool="true"/>
64            <Annotation Term="OData.Description" String="Any writable properties can be updated for jobs."/>
65          </Record>
66        </Annotation>
67        <Annotation Term="Capabilities.DeleteRestrictions">
68          <Record>
69            <PropertyValue Property="Deletable" Bool="true"/>
70            <Annotation Term="OData.Description" String="Jobs can be deleted."/>
71          </Record>
72        </Annotation>
73        <Annotation Term="Redfish.Uris">
74          <Collection>
75            <String>/redfish/v1/JobService/Jobs/{JobId}</String>
76            <String>/redfish/v1/JobService/Jobs/{JobId}/Steps/{JobId2}</String>
77          </Collection>
78        </Annotation>
79      </EntityType>
80
81      <Action Name="Cancel" IsBound="true">
82        <Annotation Term="OData.Description" String="Cancels the job."/>
83        <Annotation Term="OData.LongDescription" String="This action shall cancel the job if it is currently in the `Running`, `Invalid`, or `Suspended` states.  The job shall transition to `Cancelled` if the action is successful."/>
84        <Parameter Name="Job" Type="Job.v1_0_0.Actions"/>
85        <Annotation Term="Redfish.Revisions">
86          <Collection>
87            <Record>
88              <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
89              <PropertyValue Property="Version" String="v1_3_0"/>
90            </Record>
91          </Collection>
92        </Annotation>
93      </Action>
94      <Action Name="Invalidate" IsBound="true">
95        <Annotation Term="OData.Description" String="Invalidates the job."/>
96        <Annotation Term="OData.LongDescription" String="This action shall invalidate the job if it is in the `Pending` state.  The job shall transition to `Invalid` if the action is successful."/>
97        <Parameter Name="Job" Type="Job.v1_0_0.Actions"/>
98        <Annotation Term="Redfish.Revisions">
99          <Collection>
100            <Record>
101              <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
102              <PropertyValue Property="Version" String="v1_3_0"/>
103            </Record>
104          </Collection>
105        </Annotation>
106      </Action>
107      <Action Name="Resubmit" IsBound="true">
108        <Annotation Term="OData.Description" String="Resubmits the job."/>
109        <Annotation Term="OData.LongDescription" String="This action shall resubmit a job to the job service.  The new job shall be based on the job document, and properties of the resource associated with this action.  Services shall take appropriate measures to make sure that appropriate security is maintained - for instance, only allowing the same user that created the job to resubmit it."/>
110        <Parameter Name="Job" Type="Job.v1_0_0.Actions"/>
111        <Parameter Name="StartTime" Type="Edm.DateTimeOffset">
112          <Annotation Term="OData.Description" String="The time to start the job."/>
113          <Annotation Term="OData.LongDescription" String="This parameter shall contain the time to start the job."/>
114        </Parameter>
115        <Annotation Term="Redfish.Revisions">
116          <Collection>
117            <Record>
118              <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
119              <PropertyValue Property="Version" String="v1_3_0"/>
120            </Record>
121          </Collection>
122        </Annotation>
123      </Action>
124      <Action Name="ForceStart" IsBound="true">
125        <Annotation Term="OData.Description" String="Forces the job to start."/>
126        <Annotation Term="OData.LongDescription" String="This action shall force the job to start running if it is in the `Pending` state.  The job shall transition to `Running` if the action is successful."/>
127        <Parameter Name="Job" Type="Job.v1_0_0.Actions"/>
128        <Annotation Term="Redfish.Revisions">
129          <Collection>
130            <Record>
131              <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
132              <PropertyValue Property="Version" String="v1_3_0"/>
133            </Record>
134          </Collection>
135        </Annotation>
136      </Action>
137      <Action Name="Resume" IsBound="true">
138        <Annotation Term="OData.Description" String="Resumes the job."/>
139        <Annotation Term="OData.LongDescription" String="This action shall resume the job if it is in the `Suspended` state.  The job shall transition to `Running` if the action is successful."/>
140        <Parameter Name="Job" Type="Job.v1_0_0.Actions"/>
141        <Annotation Term="Redfish.Revisions">
142          <Collection>
143            <Record>
144              <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
145              <PropertyValue Property="Version" String="v1_3_0"/>
146            </Record>
147          </Collection>
148        </Annotation>
149      </Action>
150      <Action Name="Suspend" IsBound="true">
151        <Annotation Term="OData.Description" String="Suspends the job."/>
152        <Annotation Term="OData.LongDescription" String="This action shall suspend the job if it is in the `Running` state.  The job shall transition to `Suspended` if the action is successful."/>
153        <Parameter Name="Job" Type="Job.v1_0_0.Actions"/>
154        <Annotation Term="Redfish.Revisions">
155          <Collection>
156            <Record>
157              <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
158              <PropertyValue Property="Version" String="v1_3_0"/>
159            </Record>
160          </Collection>
161        </Annotation>
162      </Action>
163      <Action Name="Validate" IsBound="true">
164        <Annotation Term="OData.Description" String="Validates the job."/>
165        <Annotation Term="OData.LongDescription" String="This action shall request the validation the job if it is in the `New` state.  The job shall transition to `Pending` if the action is successful.  If the job is not valid, it shall transition to `Invalid`."/>
166        <Parameter Name="Job" Type="Job.v1_0_0.Actions"/>
167        <Annotation Term="Redfish.Revisions">
168          <Collection>
169            <Record>
170              <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
171              <PropertyValue Property="Version" String="v1_3_0"/>
172            </Record>
173          </Collection>
174        </Annotation>
175      </Action>
176    </Schema>
177
178    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_0_0">
179      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
180      <Annotation Term="Redfish.Release" String="2018.2"/>
181
182      <EntityType Name="Job" BaseType="Job.Job">
183        <Property Name="JobStatus" Type="Resource.Health" Nullable="false">
184          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
185          <Annotation Term="OData.Description" String="The status of the job."/>
186          <Annotation Term="OData.LongDescription" String="This property shall contain the health status of the job.  This property should contain `Critical` if one or more messages in the `Messages` array contains the severity `Critical`.  This property should contain `Warning` if one or more messages in the `Messages` array contains the severity `Warning` and if no messages contain the severity `Critical`.  This property should contain `OK` if all messages in the `Messages` array contain the severity `OK` or if the array is empty."/>
187        </Property>
188        <Property Name="JobState" Type="Job.v1_0_0.JobState" Nullable="false">
189          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
190          <Annotation Term="OData.Description" String="The state of the job."/>
191          <Annotation Term="OData.LongDescription" String="This property shall contain the state of the job."/>
192          <Annotation Term="Redfish.Excerpt"/>
193        </Property>
194        <Property Name="StartTime" Type="Edm.DateTimeOffset" Nullable="false">
195          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
196          <Annotation Term="OData.Description" String="The date and time when the job was started or is scheduled to start."/>
197          <Annotation Term="OData.LongDescription" String="This property shall contain the date and time when the job was last started or is scheduled to start."/>
198        </Property>
199        <Property Name="EndTime" Type="Edm.DateTimeOffset" Nullable="false">
200          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
201          <Annotation Term="OData.Description" String="The date and time when the job was completed."/>
202          <Annotation Term="OData.LongDescription" String="This property shall contain the date and time when the job was completed.  This property shall not appear if the job is running or was not completed.  This property shall appear only if the `JobState` is `Completed`, `Cancelled`, or `Exception`."/>
203        </Property>
204        <Property Name="MaxExecutionTime" Type="Edm.Duration">
205          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
206          <Annotation Term="OData.Description" String="The maximum amount of time the job is allowed to execute."/>
207          <Annotation Term="OData.LongDescription" String="This property shall contain the maximum duration the job is allowed to execute before being stopped by the service."/>
208        </Property>
209        <Property Name="PercentComplete" Type="Edm.Int64">
210          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
211          <Annotation Term="OData.Description" String="The completion percentage of this job."/>
212          <Annotation Term="OData.LongDescription" String="This property shall contain the completion progress of the job, reported in percent of completion, `0` to `100`.  If the job has not been started, the value shall be zero."/>
213          <Annotation Term="Measures.Unit" String="%"/>
214          <Annotation Term="Validation.Minimum" Int="0"/>
215          <Annotation Term="Validation.Maximum" Int="100"/>
216          <Annotation Term="Redfish.Excerpt"/>
217        </Property>
218        <Property Name="CreatedBy" Type="Edm.String" Nullable="false">
219          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
220          <Annotation Term="OData.Description" String="The person or program that created this job entry."/>
221          <Annotation Term="OData.LongDescription" String="This property shall contain the username, software program name, or other identifier indicating the creator of this job."/>
222        </Property>
223        <Property Name="Schedule" Type="Schedule.Schedule" Nullable="false">
224          <Annotation Term="OData.Description" String="The schedule settings for this job."/>
225          <Annotation Term="OData.LongDescription" String="This property shall contain the scheduling details for this job and the recurrence frequency for future instances of this job.  This property shall not be present for document-based jobs."/>
226        </Property>
227        <Property Name="HidePayload" Type="Edm.Boolean" Nullable="false">
228          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
229          <Annotation Term="OData.Description" String="An indication of whether the contents of the payload or parameters should be hidden from view after the job has been created.  If `true`, responses do not return the payload or parameters.  If `false`, responses return the payload or parameters.  If this property is not present when the job is created, the default is `false`."/>
230          <Annotation Term="OData.LongDescription" String="This property shall indicate whether the contents of the payload should be hidden from view after the job has been created.  If `true`, responses shall not return the `Payload` or `Parameters` properties.  If `false`, responses shall return the `Payload` or `Parameters` properties.  If this property is not present when the job is created, the default is `false`."/>
231        </Property>
232        <Property Name="Payload" Type="Job.v1_0_0.Payload" Nullable="false">
233          <Annotation Term="OData.Description" String="The HTTP and JSON request payload details for this user-specified job."/>
234          <Annotation Term="OData.LongDescription" String="This property shall contain the HTTP and JSON request payload information for executing this user-specified job.  This property shall only be present for user-specified jobs and if the `HidePayload` property is `false`."/>
235        </Property>
236        <NavigationProperty Name="Steps" Type="JobCollection.JobCollection" ContainsTarget="true" Nullable="false">
237          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
238          <Annotation Term="OData.Description" String="The link to a collection of steps for this job."/>
239          <Annotation Term="OData.LongDescription" String="This property shall contain the link to a resource collection of type `JobCollection`.  This property shall not be present if this resource represents a step for a job.  This property shall not be present for document-based jobs."/>
240          <Annotation Term="OData.AutoExpandReferences"/>
241        </NavigationProperty>
242        <Property Name="StepOrder" Type="Collection(Edm.String)" Nullable="false">
243          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
244          <Annotation Term="OData.Description" String="The serialized execution order of the job steps."/>
245          <Annotation Term="OData.LongDescription" String="This property shall contain an array of `Id` property values for the job steps in the order that they shall be executed.  Each step shall be completed prior to the execution of the next step in array order.  An incomplete list of steps shall be considered an invalid configuration.  If this property is not present or contains an empty array it shall indicate that the step execution order is omitted and may occur in parallel or in series as determined by the service.  This property shall not be present for document-based jobs."/>
246        </Property>
247        <Property Name="Messages" Type="Collection(Message.Message)" Nullable="false">
248          <Annotation Term="OData.Description" String="An array of messages associated with the job."/>
249          <Annotation Term="OData.LongDescription" String="This property shall contain an array of messages associated with the job."/>
250        </Property>
251        <Property Name="Actions" Type="Job.v1_0_0.Actions" Nullable="false">
252          <Annotation Term="OData.Description" String="The available actions for this resource."/>
253          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
254        </Property>
255      </EntityType>
256
257      <EnumType Name="JobState">
258        <Member Name="New">
259          <Annotation Term="OData.Description" String="A new job."/>
260          <Annotation Term="OData.LongDescription" String="This value shall indicate that this job is newly created but the operation has not yet started.  This shall be the initial state for document-based jobs.  Upon receiving the `Validate` action, or if the value of `ValidationPolicy` in the `JobService` resource contains `Automatic`, the document-based job's `JobState` shall transition to `Validating`.  If the `ValidationPolicy` property in the `JobService` resource contains `Bypass`, the `JobState` for a document-based job shall transition to `Pending`."/>
261        </Member>
262        <Member Name="Starting">
263          <Annotation Term="OData.Description" String="Job is starting."/>
264          <Annotation Term="OData.LongDescription" String="This value shall indicate that the operation is starting."/>
265        </Member>
266        <Member Name="Running">
267          <Annotation Term="OData.Description" String="Job is running normally."/>
268          <Annotation Term="OData.LongDescription" String="This value shall indicate that the operation is executing.  Jobs that complete successfully shall transition from this state to the `Completed` state.  Jobs that do not complete successfully shall transition from this state to the `Exception` state."/>
269        </Member>
270        <Member Name="Suspended">
271          <Annotation Term="OData.Description" String="Job has been suspended."/>
272          <Annotation Term="OData.LongDescription" String="This value shall indicate that the operation has been suspended but is expected to restart and is therefore not complete.  To resume a job, perform the `Resume` action."/>
273        </Member>
274        <Member Name="Interrupted">
275          <Annotation Term="OData.Description" String="Job has been interrupted."/>
276          <Annotation Term="OData.LongDescription" String="This value shall indicate that the operation has been interrupted but is expected to restart and is therefore not complete."/>
277        </Member>
278        <Member Name="Pending">
279          <Annotation Term="OData.Description" String="Job is pending and has not started."/>
280          <Annotation Term="OData.LongDescription" String="This value shall indicate that the operation is pending some condition and has not yet begun to execute."/>
281        </Member>
282        <Member Name="Stopping">
283          <Annotation Term="OData.Description" String="Job is in the process of stopping."/>
284          <Annotation Term="OData.LongDescription" String="This value shall indicate that the operation is stopping but is not yet complete."/>
285        </Member>
286        <Member Name="Completed">
287          <Annotation Term="OData.Description" String="Job was completed."/>
288          <Annotation Term="OData.LongDescription" String="This value shall indicate that the operation completed successfully or with warnings.  The job may restart in the future based on the scheduling configuration of the job or operations performed by a user."/>
289        </Member>
290        <Member Name="Cancelled">
291          <Annotation Term="OData.Description" String="Job was cancelled."/>
292          <Annotation Term="OData.LongDescription" String="This value shall indicate that the operation completed because the job was cancelled by an operator.  The job may restart in the future based on the scheduling configuration of the job or operations performed by a user."/>
293        </Member>
294        <Member Name="Exception">
295          <Annotation Term="OData.Description" String="Job has stopped due to an exception condition."/>
296          <Annotation Term="OData.LongDescription" String="This value shall indicate that the operation completed with errors.  The job may restart in the future based on the scheduling configuration of the job or operations performed by a user."/>
297        </Member>
298        <Member Name="Service">
299          <Annotation Term="OData.Description" String="Job is running as a service."/>
300          <Annotation Term="OData.LongDescription" String="This value shall indicate that the operation is now running as a service and expected to continue operation until stopped or killed."/>
301        </Member>
302        <Member Name="UserIntervention">
303          <Annotation Term="OData.Description" String="Job is waiting for user intervention."/>
304          <Annotation Term="OData.LongDescription" String="This value shall indicate that the operation is waiting for a user to intervene and needs to be manually continued, stopped, or cancelled."/>
305        </Member>
306        <Member Name="Continue">
307          <Annotation Term="OData.Description" String="Job is to resume operation."/>
308          <Annotation Term="OData.LongDescription" String="This value shall indicate that the operation has been resumed from a paused condition and should return to a Running state."/>
309        </Member>
310        <Member Name="Validating">
311          <Annotation Term="OData.Description" String="Job is validating."/>
312          <Annotation Term="OData.LongDescription" String="This value shall indicate that the document-based job is validating the state of the system to determine if it can run.  For example, a job that runs on factory equipment might check to ensure that the equipment is properly configured and has sufficient ingredients to run the job.  If the validation checks fail, the job shall transition to the `Invalid` state.  If the validation checks are successful, the job shall transition to the `Pending` state."/>
313          <Annotation Term="Redfish.Revisions">
314            <Collection>
315              <Record>
316                <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
317                <PropertyValue Property="Version" String="v1_3_0"/>
318              </Record>
319            </Collection>
320          </Annotation>
321        </Member>
322        <Member Name="Invalid">
323          <Annotation Term="OData.Description" String="Job is invalid."/>
324          <Annotation Term="OData.LongDescription" String="This value shall indicate that validation has determined that the system is not properly configured to run the document-based job.  To perform validation checks again, perform the `Validate` action."/>
325          <Annotation Term="Redfish.Revisions">
326            <Collection>
327              <Record>
328                <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
329                <PropertyValue Property="Version" String="v1_3_0"/>
330              </Record>
331            </Collection>
332          </Annotation>
333        </Member>
334      </EnumType>
335
336      <ComplexType Name="Payload">
337        <Annotation Term="OData.Description" String="The HTTP and JSON payload details for this job."/>
338        <Annotation Term="OData.LongDescription" String="This object shall contain information detailing the HTTP and JSON payload information for executing this job."/>
339        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
340        <Property Name="TargetUri" Type="Edm.String" Nullable="false">
341          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
342          <Annotation Term="OData.Description" String="The link to the target for this job."/>
343          <Annotation Term="OData.LongDescription" String="This property shall contain link to a target location for an HTTP operation."/>
344          <Annotation Term="OData.IsURL"/>
345        </Property>
346        <Property Name="HttpOperation" Type="Edm.String" Nullable="false">
347          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
348          <Annotation Term="OData.Description" String="The HTTP operation that executes this job."/>
349          <Annotation Term="OData.LongDescription" String="This property shall contain the HTTP operation that executes this job."/>
350        </Property>
351        <Property Name="HttpHeaders" Type="Collection(Edm.String)" Nullable="false">
352          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
353          <Annotation Term="OData.Description" String="An array of HTTP headers in this job."/>
354          <Annotation Term="OData.LongDescription" String="This property shall contain an array of HTTP headers in this job."/>
355        </Property>
356        <Property Name="JsonBody" Type="Edm.String" Nullable="false">
357          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
358          <Annotation Term="OData.Description" String="The JSON payload to use in the execution of this job."/>
359          <Annotation Term="OData.LongDescription" String="This property shall contain JSON-formatted payload for this job."/>
360        </Property>
361      </ComplexType>
362
363      <ComplexType Name="Actions">
364        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
365        <Annotation Term="OData.Description" String="The available actions for this resource."/>
366        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
367        <Property Name="Oem" Type="Job.v1_0_0.OemActions" Nullable="false">
368          <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
369          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
370        </Property>
371      </ComplexType>
372
373      <ComplexType Name="OemActions">
374        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
375        <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
376        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
377      </ComplexType>
378    </Schema>
379
380    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_0_1">
381      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
382      <Annotation Term="OData.Description" String="This version was created to add the measures annotation to `PercentComplete`."/>
383      <EntityType Name="Job" BaseType="Job.v1_0_0.Job"/>
384    </Schema>
385
386    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_0_2">
387      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
388      <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.  It was also created to correct the resource description."/>
389      <EntityType Name="Job" BaseType="Job.v1_0_1.Job"/>
390    </Schema>
391
392    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_0_3">
393      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
394      <Annotation Term="OData.Description" String="This version was created to update the description of the `HidePayload` property.  It was also created to disallow the `EndTime` property from being `null`.  It was also created to update descriptions that this schema defines."/>
395      <EntityType Name="Job" BaseType="Job.v1_0_2.Job"/>
396    </Schema>
397
398    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_0_4">
399      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
400      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
401      <EntityType Name="Job" BaseType="Job.v1_0_3.Job"/>
402    </Schema>
403
404    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_0_5">
405      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
406      <Annotation Term="OData.Description" String="This version was created to clarify that steps cannot have their own steps."/>
407      <EntityType Name="Job" BaseType="Job.v1_0_4.Job"/>
408    </Schema>
409
410    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_0_6">
411      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
412      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
413      <EntityType Name="Job" BaseType="Job.v1_0_5.Job"/>
414    </Schema>
415
416    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_0_7">
417      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
418      <Annotation Term="OData.Description" String="This version was created to correct various descriptions to use proper normative terminology."/>
419      <EntityType Name="Job" BaseType="Job.v1_0_6.Job"/>
420    </Schema>
421
422    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_0_8">
423      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
424      <Annotation Term="OData.Description" String="This version was created to clarify the mapping of `JobStatus`."/>
425      <EntityType Name="Job" BaseType="Job.v1_0_7.Job"/>
426    </Schema>
427
428    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_0_9">
429      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
430      <Annotation Term="OData.Description" String="This version was created to clarify the usage of the `Payload` property."/>
431      <EntityType Name="Job" BaseType="Job.v1_0_8.Job"/>
432    </Schema>
433
434    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_0_10">
435      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
436      <Annotation Term="OData.Description" String="This version was created to clarify the range of possible values for properties with percent units."/>
437      <EntityType Name="Job" BaseType="Job.v1_0_9.Job"/>
438    </Schema>
439
440    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_0_11">
441      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
442      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
443      <EntityType Name="Job" BaseType="Job.v1_0_10.Job"/>
444    </Schema>
445
446    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_0_12">
447      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
448      <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."/>
449      <EntityType Name="Job" BaseType="Job.v1_0_11.Job"/>
450    </Schema>
451
452    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_0_13">
453      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
454      <Annotation Term="OData.Description" String="This version was created to update descriptions of properties to describe usage with document-based jobs."/>
455      <EntityType Name="Job" BaseType="Job.v1_0_12.Job"/>
456    </Schema>
457
458    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_1_0">
459      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
460      <Annotation Term="Redfish.Release" String="2022.1"/>
461
462      <EntityType Name="Job" BaseType="Job.v1_0_7.Job">
463        <Property Name="EstimatedDuration" Type="Edm.Duration">
464          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
465          <Annotation Term="OData.Description" String="The estimated total time required to complete the job."/>
466          <Annotation Term="OData.LongDescription" String="This property shall contain the estimated total time needed to complete the job.  The value is not expected to change while the job is in progress, but the service may update the value if it obtains new information that significantly changes the expected duration.  Services should be conservative in the reported estimate and clients should treat this value as an estimate."/>
467        </Property>
468      </EntityType>
469    </Schema>
470
471    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_1_1">
472      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
473      <Annotation Term="OData.Description" String="This version was created to clarify the mapping of `JobStatus`."/>
474      <EntityType Name="Job" BaseType="Job.v1_1_0.Job"/>
475    </Schema>
476
477    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_1_2">
478      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
479      <Annotation Term="OData.Description" String="This version was created to clarify the usage of the `Payload` property."/>
480      <EntityType Name="Job" BaseType="Job.v1_1_1.Job"/>
481    </Schema>
482
483    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_1_3">
484      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
485      <Annotation Term="OData.Description" String="This version was created to correct the regular expression pattern for duration properties in JSON Schema and OpenAPI to not allow for negative values."/>
486      <EntityType Name="Job" BaseType="Job.v1_1_2.Job"/>
487    </Schema>
488
489    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_1_4">
490      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
491      <Annotation Term="OData.Description" String="This version was created to clarify the range of possible values for properties with percent units."/>
492      <EntityType Name="Job" BaseType="Job.v1_1_3.Job"/>
493    </Schema>
494
495    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_1_5">
496      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
497      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
498      <EntityType Name="Job" BaseType="Job.v1_1_4.Job"/>
499    </Schema>
500
501    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_1_6">
502      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
503      <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."/>
504      <EntityType Name="Job" BaseType="Job.v1_1_5.Job"/>
505    </Schema>
506
507    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_1_7">
508      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
509      <Annotation Term="OData.Description" String="This version was created to update descriptions of properties to describe usage with document-based jobs."/>
510      <EntityType Name="Job" BaseType="Job.v1_1_6.Job"/>
511    </Schema>
512
513    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_2_0">
514      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
515      <Annotation Term="Redfish.Release" String="2022.3"/>
516
517      <EntityType Name="Job" BaseType="Job.v1_1_2.Job">
518        <Property Name="Links" Type="Job.v1_2_0.Links" Nullable="false">
519          <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
520          <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."/>
521        </Property>
522      </EntityType>
523
524      <ComplexType Name="Links" BaseType="Resource.Links">
525        <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
526        <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."/>
527        <NavigationProperty Name="CreatedResources" Type="Collection(Resource.Item)">
528          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
529          <Annotation Term="OData.Description" String="An array of URIs referencing the resources created as the result of this job."/>
530          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources indicating the resources created as the result of this job.  Services shall set this property prior to the job entering its final state."/>
531          <Annotation Term="OData.AutoExpandReferences"/>
532        </NavigationProperty>
533      </ComplexType>
534    </Schema>
535
536    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_2_1">
537      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
538      <Annotation Term="OData.Description" String="This version was created to correct the regular expression pattern for duration properties in JSON Schema and OpenAPI to not allow for negative values."/>
539      <EntityType Name="Job" BaseType="Job.v1_2_0.Job"/>
540    </Schema>
541
542    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_2_2">
543      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
544      <Annotation Term="OData.Description" String="This version was created to clarify the range of possible values for properties with percent units."/>
545      <EntityType Name="Job" BaseType="Job.v1_2_1.Job"/>
546    </Schema>
547
548    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_2_3">
549      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
550      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
551      <EntityType Name="Job" BaseType="Job.v1_2_2.Job"/>
552    </Schema>
553
554    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_2_4">
555      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
556      <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."/>
557      <EntityType Name="Job" BaseType="Job.v1_2_3.Job"/>
558    </Schema>
559
560    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_2_5">
561      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
562      <Annotation Term="OData.Description" String="This version was created to update descriptions of properties to describe usage with document-based jobs."/>
563      <EntityType Name="Job" BaseType="Job.v1_2_4.Job"/>
564    </Schema>
565
566    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Job.v1_3_0">
567      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
568      <Annotation Term="Redfish.Release" String="2025.2"/>
569
570      <EntityType Name="Job" BaseType="Job.v1_2_5.Job">
571        <Property Name="JobType" Type="Job.v1_3_0.JobType" Nullable="false">
572          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
573          <Annotation Term="OData.Description" String="The type of this job."/>
574          <Annotation Term="OData.LongDescription" String="This property shall contain the type of this job."/>
575        </Property>
576        <Property Name="CreationTime" Type="Edm.DateTimeOffset" Nullable="false">
577          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
578          <Annotation Term="OData.Description" String="The date and time when the job was created."/>
579          <Annotation Term="OData.LongDescription" String="This property shall contain the date and time when the job was created."/>
580        </Property>
581        <Property Name="EstimatedCompletionTime" Type="Edm.DateTimeOffset" Nullable="false">
582          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
583          <Annotation Term="OData.Description" String="The date and time when the job is expected to complete."/>
584          <Annotation Term="OData.LongDescription" String="This property shall contain the date and time when the job is expected to complete.  If the `EstimatedDuration` property is supported, the value of this property shall contain the summation of the `StartTime` property and the `EstimatedDuration` property."/>
585          <Annotation Term="Redfish.Excerpt"/>
586        </Property>
587        <Property Name="Parameters" Type="Job.v1_3_0.Parameters" Nullable="false">
588          <Annotation Term="OData.Description" String="The parameters specified for running this document-based job."/>
589          <Annotation Term="OData.LongDescription" String="This property shall contain the parameters specified for running this document-based job.  This property shall only be present for document-based jobs and if the `HidePayload` property is `false`."/>
590        </Property>
591        <Property Name="JobPriority" Type="Edm.Int64">
592          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
593          <Annotation Term="OData.Description" String="The requested priority for this job."/>
594          <Annotation Term="OData.LongDescription" String="This property shall contain the requested priority of this job.  The value `0` shall indicate the highest priority.  Increasing values shall represent decreasing priority."/>
595          <Annotation Term="Validation.Minimum" Int="0"/>
596        </Property>
597      </EntityType>
598
599      <EnumType Name="JobType">
600        <Member Name="DocumentBased">
601          <Annotation Term="OData.Description" String="A document-based job."/>
602          <Annotation Term="OData.LongDescription" String="This value shall indicate a job that was created by performing the `SubmitJob` action on a `JobDocument` resource."/>
603        </Member>
604        <Member Name="UserSpecified">
605          <Annotation Term="OData.Description" String="A user-specified job."/>
606          <Annotation Term="OData.LongDescription" String="This value shall indicate a job that was created by performing an HTTP `POST` operation on a `JobCollection` resource."/>
607        </Member>
608        <Member Name="ServiceGenerated">
609          <Annotation Term="OData.Description" String="A service-generated job."/>
610          <Annotation Term="OData.LongDescription" String="This value shall indicate a job that was created automatically by the service as part of its internal policies."/>
611        </Member>
612      </EnumType>
613
614      <ComplexType Name="Parameters">
615        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
616        <Annotation Term="OData.Description" String="The parameters used when running this instance of the job."/>
617        <Annotation Term="OData.LongDescription" String="This type shall contain the parameters to use when running this job.  Each property-value pair specifies a parameter and its value as specified when the job was submitted."/>
618        <Annotation Term="Redfish.DynamicPropertyPatterns">
619          <Collection>
620            <Record>
621              <PropertyValue Property="Pattern" String="^[A-Za-z][A-Za-z0-9_]+$"/>
622              <PropertyValue Property="Type" String="Edm.PrimitiveType"/>
623            </Record>
624          </Collection>
625        </Annotation>
626      </ComplexType>
627
628      <ComplexType Name="Links" BaseType="Job.v1_2_0.Links">
629        <NavigationProperty Name="ParentJob" Type="Job.Job">
630          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
631          <Annotation Term="OData.Description" String="The link to the job that created this job."/>
632          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource of type `Job` that represents the job that created this job."/>
633          <Annotation Term="OData.AutoExpandReferences"/>
634        </NavigationProperty>
635        <NavigationProperty Name="JobDocument" Type="JobDocument.JobDocument">
636          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
637          <Annotation Term="OData.Description" String="A link to the job document that was used to create this job."/>
638          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource of type `JobDocument` that represents the job document that was used to create this job."/>
639          <Annotation Term="OData.AutoExpandReferences"/>
640        </NavigationProperty>
641        <NavigationProperty Name="SubsidiaryJobs" Type="Collection(Job.Job)">
642          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
643          <Annotation Term="OData.Description" String="An array of links to the jobs created by this job."/>
644          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type `Job` that represent the jobs created by this job."/>
645          <Annotation Term="OData.AutoExpandReferences"/>
646        </NavigationProperty>
647        <NavigationProperty Name="Executor" Type="JobExecutor.JobExecutor">
648          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
649          <Annotation Term="OData.Description" String="A link to the executor that is running this job."/>
650          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource of type `JobExecutor` that represents the executor that is running this job."/>
651          <Annotation Term="OData.AutoExpandReferences"/>
652        </NavigationProperty>
653        <NavigationProperty Name="PreferredExecutors" Type="Collection(JobExecutor.JobExecutor)">
654          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
655          <Annotation Term="OData.Description" String="An array of links to the preferred executors to run this job."/>
656          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type `JobExecutor` that represent the preferred executors to run this job."/>
657          <Annotation Term="OData.AutoExpandReferences"/>
658        </NavigationProperty>
659        <NavigationProperty Name="ValidatedExecutors" Type="Collection(JobExecutor.JobExecutor)">
660          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
661          <Annotation Term="OData.Description" String="An array of links to the executors that have been validated to run this job."/>
662          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to resources of type `JobExecutor` that represent the executors that have been validated to run this job."/>
663          <Annotation Term="OData.AutoExpandReferences"/>
664        </NavigationProperty>
665      </ComplexType>
666    </Schema>
667
668  </edmx:DataServices>
669</edmx:Edmx>
670