<?xml version="1.0" encoding="UTF-8"?>
<!---->
<!--################################################################################       -->
<!--# Redfish Schema:  ActionInfo v1.3.0                                                   -->
<!--#                                                                                      -->
<!--# For a detailed change log, see the README file contained in the DSP8010 bundle,      -->
<!--# available at http://www.dmtf.org/standards/redfish                                   -->
<!--# Copyright 2014-2022 DMTF.                                                            -->
<!--# For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright -->
<!--################################################################################       -->
<!---->
<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">

  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Core.V1.xml">
    <edmx:Include Namespace="Org.OData.Core.V1" Alias="OData"/>
  </edmx:Reference>
  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Capabilities.V1.xml">
    <edmx:Include Namespace="Org.OData.Capabilities.V1" Alias="Capabilities"/>
  </edmx:Reference>
  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
    <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
  </edmx:Reference>
  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
    <edmx:Include Namespace="Resource.v1_0_0"/>
  </edmx:Reference>

  <edmx:DataServices>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ActionInfo">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>

      <EntityType Name="ActionInfo" BaseType="Resource.v1_0_0.Resource" Abstract="true">
        <Annotation Term="OData.Description" String="The ActionInfo schema defines the supported parameters and other information for a Redfish action.  Supported parameters can differ among vendors and even among resource instances.  This data can ensure that action requests from applications contain supported parameters."/>
        <Annotation Term="OData.LongDescription" String="This resource shall represent the supported parameters and other information for a Redfish action on a target within a Redfish implementation.  Supported parameters can differ among vendors and even among resource instances.  This data can ensure that action requests from applications contain supported parameters."/>
        <Annotation Term="Capabilities.InsertRestrictions">
          <Record>
            <PropertyValue Property="Insertable" Bool="false"/>
          </Record>
        </Annotation>
        <Annotation Term="Capabilities.UpdateRestrictions">
          <Record>
            <PropertyValue Property="Updatable" Bool="false"/>
          </Record>
        </Annotation>
        <Annotation Term="Capabilities.DeleteRestrictions">
          <Record>
            <PropertyValue Property="Deletable" Bool="false"/>
          </Record>
        </Annotation>
      </EntityType>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ActionInfo.v1_0_0">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="Redfish.Release" String="2016.2"/>

      <EntityType Name="ActionInfo" BaseType="ActionInfo.ActionInfo">
        <Property Name="Parameters" Type="Collection(ActionInfo.v1_0_0.Parameters)" Nullable="false">
          <Annotation Term="OData.Description" String="The list of parameters included in the specified Redfish action."/>
          <Annotation Term="OData.LongDescription" String="This property shall list the parameters included in the specified Redfish action for this resource."/>
        </Property>
      </EntityType>

      <ComplexType Name="Parameters">
        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
        <Annotation Term="OData.Description" String="The information about a parameter included in a Redfish action for this resource."/>
        <Annotation Term="OData.LongDescription" String="This property shall contain information about a parameter included in a Redfish action for this resource."/>
        <Property Name="Name" Type="Edm.String" Nullable="false">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description"  String="The name of the parameter for this action."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the name of the parameter included in a Redfish action."/>
          <Annotation Term="Redfish.Required"/>
        </Property>
        <Property Name="Required" Type="Edm.Boolean" Nullable="false">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="An indication of whether the parameter is required to complete this action."/>
          <Annotation Term="OData.LongDescription" String="This property shall indicate whether the parameter is required to complete this action."/>
        </Property>
        <Property Name="DataType" Type="ActionInfo.v1_0_0.ParameterTypes">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The JSON property type for this parameter."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the JSON property type for this parameter."/>
        </Property>
        <Property Name="ObjectDataType" Type="Edm.String">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The data type of an object-based parameter."/>
          <Annotation Term="OData.LongDescription" String="This property shall describe the entity type definition in `@odata.type` format for the parameter.  This property shall be required for parameters with a data type of `Object` or `ObjectArray`, and shall not be present for parameters with other data types."/>
        </Property>
        <Property Name="AllowableValues" Type="Collection(Edm.String)">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The allowable values for this parameter as applied to this action target."/>
          <Annotation Term="OData.LongDescription" String="This property shall indicate the allowable values for this parameter as applied to this action target.  For arrays, this property shall represent the allowable values for each array member."/>
        </Property>
      </ComplexType>

      <EnumType Name="ParameterTypes">
        <Member Name="Boolean">
          <Annotation Term="OData.Description" String="A boolean."/>
        </Member>
        <Member Name="Number">
          <Annotation Term="OData.Description" String="A number."/>
        </Member>
        <Member Name="NumberArray">
          <Annotation Term="OData.Description" String="An array of numbers."/>
        </Member>
        <Member Name="String">
          <Annotation Term="OData.Description" String="A string."/>
        </Member>
        <Member Name="StringArray">
          <Annotation Term="OData.Description" String="An array of strings."/>
        </Member>
        <Member Name="Object">
          <Annotation Term="OData.Description" String="An embedded JSON object."/>
        </Member>
        <Member Name="ObjectArray">
          <Annotation Term="OData.Description" String="An array of JSON objects."/>
        </Member>
      </EnumType>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ActionInfo.v1_0_1">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to add explicit permissions annotations to all properties for clarity."/>
      <EntityType Name="ActionInfo" BaseType="ActionInfo.v1_0_0.ActionInfo"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ActionInfo.v1_0_2">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to show annotations in previous namespaces were updated."/>
      <EntityType Name="ActionInfo" BaseType="ActionInfo.v1_0_1.ActionInfo"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ActionInfo.v1_0_3">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to update descriptions that this schema defines."/>
      <EntityType Name="ActionInfo" BaseType="ActionInfo.v1_0_2.ActionInfo"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ActionInfo.v1_0_4">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to force the regeneration of JSON Schema so that OData properties are marked as required, and integer properties are marked as integer rather than number."/>
      <EntityType Name="ActionInfo" BaseType="ActionInfo.v1_0_3.ActionInfo"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ActionInfo.v1_0_5">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <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."/>
      <EntityType Name="ActionInfo" BaseType="ActionInfo.v1_0_4.ActionInfo"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ActionInfo.v1_0_6">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to update descriptions that this schema defines."/>
      <EntityType Name="ActionInfo" BaseType="ActionInfo.v1_0_5.ActionInfo"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ActionInfo.v1_0_7">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to clarify the behavior of AllowableValues for array parameters."/>
      <EntityType Name="ActionInfo" BaseType="ActionInfo.v1_0_6.ActionInfo"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ActionInfo.v1_1_0">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="Redfish.Release" String="2018.2"/>
      <Annotation Term="OData.Description" String="This version was created to add properties to specify parameter minimum and maximum values."/>

      <EntityType Name="ActionInfo" BaseType="ActionInfo.v1_0_4.ActionInfo"/>

      <ComplexType Name="Parameters" BaseType="ActionInfo.v1_0_0.Parameters">
        <Property Name="MinimumValue" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The minimum supported value for this parameter."/>
          <Annotation Term="OData.LongDescription" String="This integer or number property shall contain the minimum value that this service supports.  For arrays, this property shall represent the minimum value for each array member.  This property shall not be present for non-integer or number parameters."/>
        </Property>
        <Property Name="MaximumValue" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The maximum supported value for this parameter."/>
          <Annotation Term="OData.LongDescription" String="This integer or number property shall contain the maximum value that this service supports.  For arrays, this property shall represent the maximum value for each array member.  This property shall not be present for non-integer or number parameters."/>
        </Property>
      </ComplexType>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ActionInfo.v1_1_1">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <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."/>
      <EntityType Name="ActionInfo" BaseType="ActionInfo.v1_1_0.ActionInfo"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ActionInfo.v1_1_2">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to update descriptions that this schema defines."/>
      <EntityType Name="ActionInfo" BaseType="ActionInfo.v1_1_1.ActionInfo"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ActionInfo.v1_1_3">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to clarify the behavior of AllowableValues, MinimumValue, and MaximumValue for array parameters."/>
      <EntityType Name="ActionInfo" BaseType="ActionInfo.v1_1_2.ActionInfo"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ActionInfo.v1_2_0">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="Redfish.Release" String="2021.2"/>

      <EntityType Name="ActionInfo" BaseType="ActionInfo.v1_1_3.ActionInfo"/>

      <ComplexType Name="Parameters" BaseType="ActionInfo.v1_1_0.Parameters">
        <Property Name="ArraySizeMinimum" Type="Edm.Int64">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The minimum number of array elements required for this parameter."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the minimum number of array elements required by this service for this parameter.  This property shall not be present for non-array parameters."/>
        </Property>
        <Property Name="ArraySizeMaximum" Type="Edm.Int64">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The maximum number of array elements allowed for this parameter."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the maximum number of array elements that this service supports for this parameter.  This property shall not be present for non-array parameters."/>
        </Property>
      </ComplexType>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ActionInfo.v1_3_0">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="Redfish.Release" String="2022.2"/>

      <EntityType Name="ActionInfo" BaseType="ActionInfo.v1_2_0.ActionInfo"/>

      <ComplexType Name="Parameters" BaseType="ActionInfo.v1_2_0.Parameters">
        <Property Name="AllowableNumbers" Type="Collection(Edm.String)">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The allowable numeric values or duration values, inclusive ranges of values, and incremental step values for this parameter as applied to this action target."/>
          <Annotation Term="OData.LongDescription" String="This property shall indicate the allowable numeric values, inclusive ranges of values, and incremental step values values for this parameter as applied to this action target, as defined in the 'Allowable values for numbers and durations' clause of the Redfish Specification.  For arrays, this property shall represent the allowable values for each array member.  This property shall only be present for numeric parameters or string parameters that specify a duration."/>
        </Property>
        <Property Name="AllowablePattern" Type="Edm.String">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The allowable pattern for this parameter as applied to this action target."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain a regular expression that describes the allowable values for this parameter as applied to this action target.  For arrays, this property shall represent the allowable values for each array member.  This property shall only be present for string parameters."/>
        </Property>
      </ComplexType>
    </Schema>

  </edmx:DataServices>
</edmx:Edmx>
