Move to 2019.4

Make changes to update_schemas.py needed for the move and run
update_schemas.py.

To see an overview of 2019.4 see
https://www.dmtf.org/sites/default/files/Redfish_Release_2019.4_Overview.pdf

Tested: Built bmcweb, loaded on a Witherspoon, and ran
        the validator. No errors.

See new schemas:
 curl -k https://${bmc}/redfish/v1/JsonSchemas/VCATEntry
{
    "@odata.context": "/redfish/v1/$metadata#JsonSchemaFile.JsonSchemaFile",
    "@odata.id": "/redfish/v1/JsonSchemas/VCATEntry",
    "@odata.type": "#JsonSchemaFile.v1_0_2.JsonSchemaFile",
    "Name": "VCATEntry Schema File",
    "Schema": "#VCATEntry.VCATEntry",

Change-Id: I5ae6e3c655e44c82c4457515555bdb934dfb7763
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
diff --git a/static/redfish/v1/schema/Outlet_v1.xml b/static/redfish/v1/schema/Outlet_v1.xml
new file mode 100644
index 0000000..d62b442
--- /dev/null
+++ b/static/redfish/v1/schema/Outlet_v1.xml
@@ -0,0 +1,393 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!---->
+<!--################################################################################       -->
+<!--# Redfish Schema:  Outlet v1.0.0                                                       -->
+<!--#                                                                                      -->
+<!--# For a detailed change log, see the README file contained in the DSP8010 bundle,      -->
+<!--# available at http://www.dmtf.org/standards/redfish                                   -->
+<!--# Copyright 2018-2019 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://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Measures.V1.xml">
+    <edmx:Include Namespace="Org.OData.Measures.V1" Alias="Measures"/>
+  </edmx:Reference>
+  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
+    <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
+    <edmx:Include Namespace="Validation.v1_0_0" Alias="Validation"/>
+  </edmx:Reference>
+  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
+    <edmx:Include Namespace="Resource"/>
+    <edmx:Include Namespace="Resource.v1_0_0"/>
+  </edmx:Reference>
+  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Sensor_v1.xml">
+    <edmx:Include Namespace="Sensor"/>
+  </edmx:Reference>
+  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Circuit_v1.xml">
+    <edmx:Include Namespace="Circuit"/>
+  </edmx:Reference>
+
+  <edmx:DataServices>
+
+    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Outlet">
+      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+
+      <EntityType Name="Outlet" BaseType="Resource.v1_0_0.Resource" Abstract="true">
+        <Annotation Term="OData.Description" String="This is the schema definition for an electrical outlet."/>
+        <Annotation Term="OData.LongDescription" String="This resource shall be used to represent an electrical outlet for a Redfish implementation."/>
+        <Annotation Term="Capabilities.InsertRestrictions">
+          <Record>
+            <PropertyValue Property="Insertable" Bool="false"/>
+          </Record>
+        </Annotation>
+        <Annotation Term="Capabilities.UpdateRestrictions">
+          <Record>
+            <PropertyValue Property="Updatable" Bool="true"/>
+            <Annotation Term="OData.Description" String="Any writable properties can be updated."/>
+          </Record>
+        </Annotation>
+        <Annotation Term="Capabilities.DeleteRestrictions">
+          <Record>
+            <PropertyValue Property="Deletable" Bool="false"/>
+          </Record>
+        </Annotation>
+        <Annotation Term="Redfish.Uris">
+          <Collection>
+            <String>/redfish/v1/PowerEquipment/RackPDUs/{PowerDistributionId}/Outlets/{OutletId}</String>
+            <String>/redfish/v1/PowerEquipment/FloorPDUs/{PowerDistributionId}/Outlets/{OutletId}</String>
+            <String>/redfish/v1/PowerEquipment/TransferSwitches/{PowerDistributionId}/Outlets/{OutletId}</String>
+          </Collection>
+        </Annotation>
+      </EntityType>
+
+      <Action Name="PowerControl" IsBound="true">
+        <Parameter Name="Outlet" Type="Outlet.v1_0_0.Actions"/>
+        <Parameter Name="PowerState" Type="Outlet.PowerState">
+          <Annotation Term="OData.Description" String="The desired power state of the outlet."/>
+          <Annotation Term="OData.LongDescription" String="This parameter shall contain the desired power state of the outlet."/>
+        </Parameter>
+        <Annotation Term="OData.Description" String="This action turns the outlet on or off."/>
+        <Annotation Term="OData.LongDescription" String="This action shall control the power state of the outlet."/>
+      </Action>
+
+      <Action Name="ResetMetrics" IsBound="true">
+        <Parameter Name="Outlet" Type="Outlet.v1_0_0.Actions"/>
+        <Annotation Term="OData.Description" String="This action resets metrics related to this outlet."/>
+        <Annotation Term="OData.LongDescription" String="This action shall reset any time intervals or counted values for this outlet."/>
+      </Action>
+
+      <EnumType Name="PowerState">
+        <Member Name="On">
+          <Annotation Term="OData.Description" String="The outlet is powered on."/>
+        </Member>
+        <Member Name="Off">
+          <Annotation Term="OData.Description" String="The outlet is powered off."/>
+        </Member>
+      </EnumType>
+
+      <EnumType Name="ReceptacleType">
+        <Member Name="NEMA_5_15R">
+          <Annotation Term="OData.Description" String="NEMA 5-15R (120V; 15A)."/>
+          <Annotation Term="OData.LongDescription" String="This value shall represent a receptacle that matches the NEMA specified 5-15 receptacle (120V; 15A).  The current is commonly de-rated to 12A if it is protected by a 15A breaker."/>
+        </Member>
+        <Member Name="NEMA_5_20R">
+          <Annotation Term="OData.Description" String="NEMA 5-20R (120V; 20A)."/>
+          <Annotation Term="OData.LongDescription" String="This value shall represent a receptacle that matches the NEMA specified 5-20 receptacle that exhibits a T-slot (120V; 20A).  The current is commonly de-rated to 16A if it is protected by a 20A breaker."/>
+        </Member>
+        <Member Name="NEMA_L5_20R">
+          <Annotation Term="OData.Description" String="NEMA L5-20R (120V; 20A)."/>
+          <Annotation Term="OData.LongDescription" String="This value shall represent a receptacle that matches the NEMA specified locking L5-20 receptacle (120V; 20A).  The current is commonly de-rated to 16A if it is protected by a 20A breaker."/>
+        </Member>
+        <Member Name="NEMA_L5_30R">
+          <Annotation Term="OData.Description" String="NEMA L5-30R (120V; 30A)."/>
+          <Annotation Term="OData.LongDescription" String="This value shall represent a receptacle that matches the NEMA specified locking L5-30 receptacle (120V; 30A).  The current is commonly de-rated to 24A if it is protected by a 30A breaker."/>
+        </Member>
+        <Member Name="NEMA_L6_20R">
+          <Annotation Term="OData.Description" String="NEMA L6-20R (250V; 20A)."/>
+          <Annotation Term="OData.LongDescription" String="This value shall represent a receptacle that matches the NEMA specified locking L6-20 receptacle (250V; 20A).  The current is commonly de-rated to 16A if it is protected by a 20A breaker."/>
+        </Member>
+        <Member Name="NEMA_L6_30R">
+          <Annotation Term="OData.Description" String="NEMA L6-30R (250V; 30A)."/>
+          <Annotation Term="OData.LongDescription" String="This value shall represent a receptacle that matches the NEMA specified locking L6-30 receptacle (250V; 30A).  The current is commonly de-rated to 24A if it is protected by a 30A breaker."/>
+        </Member>
+        <Member Name="IEC_60320_C13">
+          <Annotation Term="OData.Description" String="IEC C13 (250V; 10A or 15A)."/>
+          <Annotation Term="OData.LongDescription" String="This value shall represent a receptacle that matches the IEC 60320 Sheet F C13 specified receptacle (250V; 10A per IEC, 15A per UL)."/>
+        </Member>
+        <Member Name="IEC_60320_C19">
+          <Annotation Term="OData.Description" String="IEC C19 (250V; 16A or 20A)."/>
+          <Annotation Term="OData.LongDescription" String="This value shall represent a receptacle that matches the IEC 60320 Sheet J C19 specified receptacle (250V; 16A per IEC, 20A per UL)."/>
+        </Member>
+        <Member Name="CEE_7_Type_E">
+          <Annotation Term="OData.Description" String="CEE 7/7 Type E (250V; 16A)."/>
+          <Annotation Term="OData.LongDescription" String="This value shall represent a receptacle that matches the French specified CEE 7/7 Type E receptacle (250V; 16A)."/>
+        </Member>
+        <Member Name="CEE_7_Type_F">
+          <Annotation Term="OData.Description" String="CEE 7/7 Type F (250V; 16A)."/>
+          <Annotation Term="OData.LongDescription" String="This value shall represent a receptacle that matches the Schuko specified CEE 7/7 Type F receptacle (250V; 16A)."/>
+        </Member>
+        <Member Name="SEV_1011_TYPE_12">
+          <Annotation Term="OData.Description" String="SEV 1011 Type 12 (250V; 10A)."/>
+          <Annotation Term="OData.LongDescription" String="This value shall represent a receptacle that matches the SEV 1011 specified Type 12 receptacle (250V; 10A)."/>
+        </Member>
+        <Member Name="SEV_1011_TYPE_23">
+          <Annotation Term="OData.Description" String="SEV 1011 Type 23 (250V; 16A)."/>
+          <Annotation Term="OData.LongDescription" String="This value shall represent a receptacle that matches the SEV 1011 specified Type 23 receptacle (250V; 16A)."/>
+        </Member>
+        <Member Name="BS_1363_Type_G">
+          <Annotation Term="OData.Description" String="BS 1363 Type G (250V; 13A)."/>
+          <Annotation Term="OData.LongDescription" String="This value shall represent a receptacle that matches the British BS 1363 Type G receptacle (250V; 13A)."/>
+        </Member>
+      </EnumType>
+
+    </Schema>
+
+    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Outlet.v1_0_0">
+      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+      <Annotation Term="Redfish.Release" String="2019.4"/>
+      <EntityType Name="Outlet" BaseType="Outlet.Outlet">
+        <Property Name="Status" Type="Resource.Status" Nullable="false">
+          <Annotation Term="OData.Description" String="The status and health of the resource and its subordinate or dependent resources."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain any status or health properties of the resource."/>
+        </Property>
+        <Property Name="ElectricalContext" Type="Sensor.ElectricalContext">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="The combination of current-carrying conductors."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the combination of current-carrying conductors that distribute power."/>
+        </Property>
+        <Property Name="PhaseWiringType" Type="Circuit.PhaseWiringType">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="The number of ungrounded current-carrying conductors (phases) and the total number of conductors (wires)."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the number of ungrounded current-carrying conductors (phases) and the total number of conductors (wires)."/>
+        </Property>
+        <Property Name="VoltageType" Type="Outlet.v1_0_0.VoltageType">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="The type of voltage applied to the outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the type of voltage applied to the outlet."/>
+        </Property>
+        <Property Name="OutletType" Type="Outlet.ReceptacleType">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="The type of receptacle according to NEMA, IEC, or regional standards."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the type of physical receptacle used for this outlet, as defined by IEC, NEMA, or regional standard."/>
+        </Property>
+        <Property Name="NominalVoltage" Type="Circuit.NominalVoltageType">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="The nominal voltage for this outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the nominal voltage for this outlet, in Volts."/>
+        </Property>
+        <Property Name="RatedCurrentAmps" Type="Edm.Decimal">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="The rated maximum current allowed for this outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the rated maximum current for this outlet, in Amps, after any required de-rating, due to safety agency or other regulatory requirements, has been applied."/>
+          <Annotation Term="Measures.Unit" String="A"/>
+          <Annotation Term="Validation.Minimum" Int="0"/>
+        </Property>
+        <Property Name="IndicatorLED" Type="Resource.IndicatorLED">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+          <Annotation Term="OData.Description" String="The state of the indicator LED, which identifies the outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the indicator light state for the indicator light associated with this outlet."/>
+        </Property>
+        <Property Name="PowerOnDelaySeconds" Type="Edm.Decimal">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+          <Annotation Term="OData.Description" String="The number of seconds to delay power up after a power cycle or a PowerControl action.  Zero seconds indicates no delay to power up."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the number of seconds to delay power up after a power cycle or a PowerControl action.  The value `0` shall indicate no delay to power up."/>
+        </Property>
+        <Property Name="PowerOffDelaySeconds" Type="Edm.Decimal">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+          <Annotation Term="OData.Description" String="The number of seconds to delay power off after a PowerControl action.  Zero seconds indicates no delay to power off."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the number of seconds to delay power off after a PowerControl action.  The value `0` shall indicate no delay to power off."/>
+        </Property>
+        <Property Name="PowerCycleDelaySeconds" Type="Edm.Decimal">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+          <Annotation Term="OData.Description" String="The number of seconds to delay power on after a PowerControl action to cycle power.  Zero seconds indicates no delay."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the number of seconds to delay power on after a PowerControl action to cycle power.  The value `0` shall indicate no delay to power on."/>
+        </Property>
+        <Property Name="PowerRestoreDelaySeconds" Type="Edm.Decimal">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+          <Annotation Term="OData.Description" String="The number of seconds to delay power on after power has been restored.  Zero seconds indicates no delay."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the number of seconds to delay power on after a power fault.  The value `0` shall indicate no delay to power on."/>
+        </Property>
+        <Property Name="PowerRestorePolicy" Type="Circuit.PowerRestorePolicyTypes" Nullable="false">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+          <Annotation Term="OData.Description" String="The desired power state of the outlet when power is restored after a power loss."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the desired PowerState of the outlet when power is applied.  The value `LastState` shall return the outlet to the PowerState it was in when power was lost."/>
+        </Property>
+        <Property Name="PowerState" Type="Resource.PowerState">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="The power state of the outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the power state of the outlet."/>
+        </Property>
+        <Property Name="PowerEnabled" Type="Edm.Boolean">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="Indicates if the outlet can be powered."/>
+          <Annotation Term="OData.LongDescription" String="This property shall indicate the power enable state of the outlet.  The value `true` shall indicate that the outlet may be powered on, and `false` shall indicate that the outlet cannot be powered."/>
+        </Property>
+        <NavigationProperty Name="Voltage" Type="Sensor.Sensor">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="Redfish.ExcerptCopy" String="Voltage"/>
+          <Annotation Term="OData.Description" String="The voltage reading for this single phase outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the voltage, measured in Volts, for this single phase outlet.  This property shall not appear in resource instances representing poly-phase outlets."/>
+        </NavigationProperty>
+        <NavigationProperty Name="CurrentAmps" Type="Sensor.Sensor">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="Redfish.ExcerptCopy" String="Current"/>
+          <Annotation Term="OData.Description" String="The current reading for this single phase outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the current, measured in Amperes, for this single phase outlet.  This property shall not appear in resource instances representing poly-phase outlets."/>
+        </NavigationProperty>
+        <NavigationProperty Name="PowerWatts" Type="Sensor.Sensor">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="Redfish.ExcerptCopy" String="Power"/>
+          <Annotation Term="OData.Description" String="The power reading for this outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the total power, measured in Watts, for this outlet, that represents the `Total` ElectricalContext sensor when multiple power sensors exist for this outlet."/>
+        </NavigationProperty>
+        <NavigationProperty Name="EnergykWh" Type="Sensor.Sensor">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="Redfish.ExcerptCopy" String="EnergykWh"/>
+          <Annotation Term="OData.Description" String="The energy reading for this outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the total energy, measured in kilowatt-hours (kW.h), for this outlet, that represents the `Total` ElectricalContext sensor when multiple energy sensors exist for this outlet."/>
+        </NavigationProperty>
+        <NavigationProperty Name="FrequencyHz" Type="Sensor.Sensor">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="Redfish.ExcerptCopy"/>
+          <Annotation Term="OData.Description" String="The frequency reading for this outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the frequency sensor for this outlet."/>
+        </NavigationProperty>
+
+        <Property Name="PolyPhaseVoltage" Type="Outlet.v1_0_0.VoltageSensors">
+          <Annotation Term="OData.Description" String="The voltage readings for this outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the voltage sensor(s) for this outlet.  For single phase outlets this property shall contain a duplicate copy of the voltage sensor referenced in the VoltageSensor property, if present.  For poly-phase outlets this property should contain multiple voltage sensor readings used to fully describe the outlet."/>
+        </Property>
+        <Property Name="PolyPhaseCurrentAmps" Type="Outlet.v1_0_0.CurrentSensors">
+          <Annotation Term="OData.Description" String="The current readings for this outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the current sensor(s) for this outlet.  For single phase outlets this property shall contain a duplicate copy of the current sensor referenced in the CurrentSensor property, if present.  For poly-phase outlets this property should contain multiple current sensor readings used to fully describe the outlet."/>
+        </Property>
+
+        <Property Name="Links" Type="Outlet.v1_0_0.Links" Nullable="false">
+          <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
+          <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."/>
+        </Property>
+        <Property Name="Actions" Type="Outlet.v1_0_0.Actions" Nullable="false">
+          <Annotation Term="OData.Description" String="The available actions for this resource."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
+        </Property>
+      </EntityType>
+
+      <ComplexType Name="Links" BaseType="Resource.Links">
+        <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
+        <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."/>
+        <NavigationProperty Name="BranchCircuit" Type="Circuit.Circuit">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="A reference to the branch circuit related to this outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource of type Circuit that represent the branch circuit associated with this outlet."/>
+          <Annotation Term="OData.AutoExpandReferences"/>
+        </NavigationProperty>
+      </ComplexType>
+
+      <ComplexType Name="Actions">
+        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
+        <Annotation Term="OData.Description" String="The available actions for this resource."/>
+        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
+        <Property Name="Oem" Type="Outlet.v1_0_0.OemActions" Nullable="false">
+          <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
+        </Property>
+      </ComplexType>
+
+      <ComplexType Name="OemActions">
+        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
+        <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
+        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
+      </ComplexType>
+
+      <ComplexType Name="VoltageSensors">
+        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
+        <Annotation Term="OData.Description" String="The voltage readings for this outlet."/>
+        <Annotation Term="OData.LongDescription" String="This type shall contain properties that describe voltage sensor readings for an outlet."/>
+        <NavigationProperty Name="Line1ToLine2" Type="Sensor.Sensor">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="Redfish.ExcerptCopy" String="Voltage"/>
+          <Annotation Term="OData.Description" String="The Line 1 to Line 2 voltage reading for this outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain a VoltageSensor excerpt that measures voltage between L1 and L2.  This property shall not be present if the outlet does not include an L1-L2 measurement."/>
+        </NavigationProperty>
+        <NavigationProperty Name="Line2ToLine3" Type="Sensor.Sensor">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="Redfish.ExcerptCopy" String="Voltage"/>
+          <Annotation Term="OData.Description" String="The Line 2 to Line 3 voltage reading for this outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain a VoltageSensor excerpt that measures voltage between L2 and L3.  This property shall not be present if the outlet does not include an L2-L3 measurement."/>
+        </NavigationProperty>
+        <NavigationProperty Name="Line3ToLine1" Type="Sensor.Sensor">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="Redfish.ExcerptCopy" String="Voltage"/>
+          <Annotation Term="OData.Description" String="The Line 3 to Line 1 voltage reading for this outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain a VoltageSensor excerpt that measures voltage between L3 and L1.  This property shall not be present if the outlet does not include an L3-L1 measurement."/>
+        </NavigationProperty>
+        <NavigationProperty Name="Line1ToNeutral" Type="Sensor.Sensor">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="Redfish.ExcerptCopy" String="Voltage"/>
+          <Annotation Term="OData.Description" String="The Line 1 to Neutral voltage reading for this outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain a VoltageSensor excerpt that measures voltage between L1 and Neutral.  This property shall not be present if the outlet does not include an L1-Neutral measurement."/>
+        </NavigationProperty>
+        <NavigationProperty Name="Line2ToNeutral" Type="Sensor.Sensor">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="Redfish.ExcerptCopy" String="Voltage"/>
+          <Annotation Term="OData.Description" String="The Line 2 to Neutral voltage reading for this outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain a VoltageSensor excerpt that measures voltage between L2 and Neutral.  This property shall not be present if the outlet does not include an L2-Neutral measurement."/>
+        </NavigationProperty>
+        <NavigationProperty Name="Line3ToNeutral" Type="Sensor.Sensor">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="Redfish.ExcerptCopy" String="Voltage"/>
+          <Annotation Term="OData.Description" String="The Line 3 to Neutral voltage reading for this outlet."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain a VoltageSensor excerpt that measures voltage between L3 and Neutral.  This property shall not be present if the outlet does not include an L3-Neutral measurement."/>
+        </NavigationProperty>
+      </ComplexType>
+
+      <ComplexType Name="CurrentSensors">
+        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
+        <Annotation Term="OData.Description" String="The current sensors for this outlet."/>
+        <Annotation Term="OData.LongDescription" String="This type shall contain properties that describe current sensor readings for an outlet."/>
+        <NavigationProperty Name="Line1" Type="Sensor.Sensor">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="Redfish.ExcerptCopy" String="Current"/>
+          <Annotation Term="OData.Description" String="Line 1 current sensor."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain a CurrentSensor excerpt that measures current for L1.  This property shall not be present if the outlet does not include an L1 measurement."/>
+        </NavigationProperty>
+        <NavigationProperty Name="Line2" Type="Sensor.Sensor">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="Redfish.ExcerptCopy" String="Current"/>
+          <Annotation Term="OData.Description" String="Line 2 current sensor."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain a CurrentSensor excerpt that measures current for L2.  This property shall not be present if the outlet does not include an L2 measurement."/>
+        </NavigationProperty>
+        <NavigationProperty Name="Line3" Type="Sensor.Sensor">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="Redfish.ExcerptCopy" String="Current"/>
+          <Annotation Term="OData.Description" String="Line 3 current sensor."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain a CurrentSensor excerpt that measures current for L3.  This property shall not be present if the outlet does not include an L3 measurement."/>
+        </NavigationProperty>
+        <NavigationProperty Name="Neutral" Type="Sensor.Sensor">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="Redfish.ExcerptCopy" String="Current"/>
+          <Annotation Term="OData.Description" String="Neutral line current sensor."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain a CurrentSensor excerpt that measures current for the Neutral line.  This property shall not be present if the outlet does not include a Neutral measurement."/>
+        </NavigationProperty>
+      </ComplexType>
+
+      <EnumType Name="VoltageType">
+        <Member Name="AC">
+          <Annotation Term="OData.Description" String="Alternating Current (AC) outlet."/>
+        </Member>
+        <Member Name="DC">
+          <Annotation Term="OData.Description" String="Direct Current (DC) outlet."/>
+        </Member>
+      </EnumType>
+    </Schema>
+
+  </edmx:DataServices>
+</edmx:Edmx>