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/Port_v1.xml b/static/redfish/v1/schema/Port_v1.xml
index 2efdb8f..2eca799 100644
--- a/static/redfish/v1/schema/Port_v1.xml
+++ b/static/redfish/v1/schema/Port_v1.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!---->
 <!--################################################################################       -->
-<!--# Redfish Schema:  Port v1.1.3                                                         -->
+<!--# Redfish Schema:  Port v1.2.0                                                         -->
 <!--#                                                                                      -->
 <!--# For a detailed change log, see the README file contained in the DSP8010 bundle,      -->
 <!--# available at http://www.dmtf.org/standards/redfish                                   -->
@@ -36,9 +36,17 @@
   <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Protocol_v1.xml">
     <edmx:Include Namespace="Protocol"/>
   </edmx:Reference>
-
+  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/PortMetrics_v1.xml">
+    <edmx:Include Namespace="PortMetrics"/>
+  </edmx:Reference>
+  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RouteEntryCollection_v1.xml">
+    <edmx:Include Namespace="RouteEntryCollection"/>
+  </edmx:Reference>
+  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/VCATEntryCollection_v1.xml">
+    <edmx:Include Namespace="VCATEntryCollection"/>
+  </edmx:Reference>
   <edmx:DataServices>
-  
+
     <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port">
       <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
 
@@ -64,10 +72,12 @@
           <Collection>
             <String>/redfish/v1/Fabrics/{FabricId}/Switches/{SwitchId}/Ports/{PortId}</String>
             <String>/redfish/v1/Systems/{ComputerSystemId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports/{PortId}</String>
+            <String>/redfish/v1/Systems/{ComputerSystemId}/FabricAdapters/{FabricAdapterId}/Ports/{PortId}</String>
             <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports/{PortId}</String>
             <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports/{PortId}</String>
             <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports/{PortId}</String>
             <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/StorageControllers/{StorageControllerId}/Ports/{PortId}</String>
+            <String>/redfish/v1/Chassis/{ChassisId}/MediaControllers/{MediaControllerId}/Ports/{PortId}</String>
           </Collection>
         </Annotation>
       </EntityType>
@@ -261,5 +271,147 @@
       <EntityType Name="Port" BaseType="Port.v1_1_2.Port"/>
     </Schema>
 
+    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Port.v1_2_0">
+      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
+      <Annotation Term="Redfish.Release" String="2019.4"/>
+
+      <EntityType Name="Port" BaseType="Port.v1_1_3.Port">
+        <Property Name="PortMedium" Type="Port.v1_2_0.PortMedium">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="The physical connection medium for this port."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the physical connection medium for this port."/>
+        </Property>
+        <Property Name="LinkNetworkTechnology" Type="Port.v1_2_0.LinkNetworkTechnology">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="The link network technology capabilities of this port."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain a network technology capability of this port."/>
+        </Property>
+        <Property Name="InterfaceEnabled" Type="Edm.Boolean">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+          <Annotation Term="OData.Description" String="An indication of whether the interface is enabled."/>
+          <Annotation Term="OData.LongDescription" String="This property shall indicate whether the interface is enabled."/>
+        </Property>
+        <Property Name="SignalDetected" Type="Edm.Boolean">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="An indication of whether a signal is detected on this interface."/>
+          <Annotation Term="OData.LongDescription" String="This property shall indicate whether a signal that is appropriate for this link technology is detected for this port."/>
+        </Property>
+        <Property Name="LinkTransitionIndicator" Type="Edm.Int64" Nullable="false">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+          <Annotation Term="OData.Description" String="The number of link state transitions for this interface."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the number of link state transitions for this interface."/>
+        </Property>
+        <Property Name="ActiveWidth" Type="Edm.Int64" Nullable="false">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="The number of active lanes for this interface."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the number of active lanes for this interface."/>
+        </Property>
+        <Property Name="LinkState" Type="Port.v1_2_0.LinkState" Nullable="false">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+          <Annotation Term="OData.Description" String="The desired link state for this interface."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the desired link state for this interface."/>
+        </Property>
+        <Property Name="LinkStatus" Type="Port.v1_2_0.LinkStatus" Nullable="false">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
+          <Annotation Term="OData.Description" String="The desired link status for this interface."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain the desired link status for this interface."/>
+        </Property>
+        <Property Name="GenZ" Type="Port.v1_2_0.GenZ" Nullable="false">
+          <Annotation Term="OData.Description" String="Gen-Z specific properties."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain Gen-Z specific properties for this interface."/>
+        </Property>
+        <NavigationProperty Name="Metrics" Type="PortMetrics.PortMetrics">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="The link to the metrics associated with this port."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain a link to the metrics associated with this port."/>
+          <Annotation Term="OData.AutoExpandReferences"/>
+        </NavigationProperty>
+      </EntityType>
+
+      <ComplexType Name="GenZ">
+        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
+        <Annotation Term="OData.Description" String="This type defines Gen-Z specific port properties."/>
+        <Annotation Term="OData.LongDescription" String="This type shall contain Gen-Z specific port properties."/>
+        <NavigationProperty Name="LPRT" Type="RouteEntryCollection.RouteEntryCollection" Nullable="false">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="The Linear Packet Relay Table for the port."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a Resource Collection of type RouteEntryCollection, and shall represent the Gen-Z Core Specification-defined Linear Packet Relay Table for this port."/>
+          <Annotation Term="OData.AutoExpandReferences"/>
+        </NavigationProperty>
+        <NavigationProperty Name="MPRT" Type="RouteEntryCollection.RouteEntryCollection" Nullable="false">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="the Multi-subnet Packet Relay Table for the port."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a Resource Collection of type RouteEntryCollection, and shall represent the Gen-Z Core Specification-defined Multi-subnet Packet Relay Table for this port."/>
+          <Annotation Term="OData.AutoExpandReferences"/>
+        </NavigationProperty>
+        <NavigationProperty Name="VCAT" Type="VCATEntryCollection.VCATEntryCollection" Nullable="false">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="the Virtual Channel Action Table for the port."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a Resource Collection of type VCATEntryCollection."/>
+          <Annotation Term="OData.AutoExpandReferences"/>
+        </NavigationProperty>
+      </ComplexType>
+
+      <ComplexType Name="Links" BaseType="Port.v1_0_0.Links">
+        <NavigationProperty Name="ConnectedPorts" Type="Collection(Port.Port)">
+          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
+          <Annotation Term="OData.Description" String="An array of links to the remote ports connected to this port."/>
+          <Annotation Term="OData.LongDescription" String="This property shall contain an array of links to Resources of type Port that represent the physical connections associated with this port."/>
+          <Annotation Term="OData.AutoExpandReferences"/>
+        </NavigationProperty>
+      </ComplexType>
+
+      <EnumType Name="PortMedium">
+        <Member Name="Electrical">
+          <Annotation Term="OData.Description" String="This port has an electrical cable connection."/>
+        </Member>
+        <Member Name="Optical">
+          <Annotation Term="OData.Description" String="This port has an optical cable connection."/>
+        </Member>
+      </EnumType>
+
+      <EnumType Name="LinkState">
+        <Member Name="Enabled">
+          <Annotation Term="OData.Description" String="This link is enabled."/>
+        </Member>
+        <Member Name="Disabled">
+          <Annotation Term="OData.Description" String="This link is disabled."/>
+        </Member>
+      </EnumType>
+
+      <EnumType Name="LinkStatus">
+        <Member Name="LinkUp">
+          <Annotation Term="OData.Description" String="This link on this interface is up."/>
+        </Member>
+        <Member Name="Starting">
+          <Annotation Term="OData.Description" String="This link on this interface is starting."/>
+        </Member>
+        <Member Name="Training">
+          <Annotation Term="OData.Description" String="This link on this interface is training."/>
+        </Member>
+        <Member Name="LinkDown">
+          <Annotation Term="OData.Description" String="The link on this interface is down."/>
+        </Member>
+        <Member Name="NoLink">
+          <Annotation Term="OData.Description" String="No physical link detected on this interface."/>
+        </Member>
+      </EnumType>
+
+      <EnumType Name="LinkNetworkTechnology">
+        <Member Name="Ethernet">
+          <Annotation Term="OData.Description" String="The port is capable of connecting to an Ethernet network."/>
+        </Member>
+        <Member Name="InfiniBand">
+          <Annotation Term="OData.Description" String="The port is capable of connecting to an InfiniBand network."/>
+        </Member>
+        <Member Name="FibreChannel">
+          <Annotation Term="OData.Description" String="The port is capable of connecting to a Fibre Channel network."/>
+        </Member>
+        <Member Name="GenZ">
+          <Annotation Term="OData.Description" String="The port is capable of connecting to a Gen-Z fabric."/>
+        </Member>
+      </EnumType>
+    </Schema>
+
   </edmx:DataServices>
 </edmx:Edmx>