{
    "$id": "http://redfish.dmtf.org/schemas/v1/Port.v1_3_5.json",
    "$ref": "#/definitions/Port",
    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
    "copyright": "Copyright 2014-2023 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
    "definitions": {
        "Actions": {
            "additionalProperties": false,
            "description": "The available actions for this resource.",
            "longDescription": "This type shall contain the available actions for this resource.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "#Port.Reset": {
                    "$ref": "#/definitions/Reset"
                },
                "Oem": {
                    "$ref": "#/definitions/OemActions",
                    "description": "The available OEM-specific actions for this resource.",
                    "longDescription": "This property shall contain the available OEM-specific actions for this resource."
                }
            },
            "type": "object"
        },
        "ConfiguredNetworkLink": {
            "additionalProperties": false,
            "description": "A set of link settings that a port is configured to use for autonegotiation.",
            "longDescription": "This type shall contain a set of link settings that a port is configured to use for autonegotiation.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "ConfiguredLinkSpeedGbps": {
                    "description": "The link speed per lane this port is configured to use for autonegotiation.",
                    "longDescription": "This property shall contain the network link speed per lane this port is configured to allow for autonegotiation purposes.  This value includes overhead associated with the protocol.",
                    "readonly": false,
                    "type": [
                        "number",
                        "null"
                    ],
                    "units": "Gbit/s",
                    "versionAdded": "v1_3_0"
                },
                "ConfiguredWidth": {
                    "description": "The link width this port is configured to use for autonegotiation in conjunction with the link speed.",
                    "longDescription": "This property shall contain the network link width this port is configured to use for autonegotiation purposes.",
                    "readonly": false,
                    "type": [
                        "integer",
                        "null"
                    ],
                    "versionAdded": "v1_3_0"
                }
            },
            "type": "object"
        },
        "EthernetProperties": {
            "additionalProperties": false,
            "description": "Ethernet-specific properties for a port.",
            "longDescription": "This type shall contain Ethernet-specific properties for a port.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "FlowControlConfiguration": {
                    "anyOf": [
                        {
                            "$ref": "#/definitions/FlowControl"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "description": "The locally configured 802.3x flow control setting for this port.",
                    "longDescription": "This property shall contain the locally configured 802.3x flow control setting for this port.",
                    "readonly": false,
                    "versionAdded": "v1_3_0"
                },
                "FlowControlStatus": {
                    "anyOf": [
                        {
                            "$ref": "#/definitions/FlowControl"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "description": "The 802.3x flow control behavior negotiated with the link partner for this port.",
                    "longDescription": "This property shall contain the 802.3x flow control behavior negotiated with the link partner for this port.",
                    "readonly": true,
                    "versionAdded": "v1_3_0"
                },
                "SupportedEthernetCapabilities": {
                    "description": "The set of Ethernet capabilities that this port supports.",
                    "items": {
                        "anyOf": [
                            {
                                "$ref": "#/definitions/SupportedEthernetCapabilities"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "longDescription": "This property shall contain an array of Ethernet capabilities supported by this port.",
                    "readonly": true,
                    "type": "array",
                    "versionAdded": "v1_3_0"
                }
            },
            "type": "object"
        },
        "FibreChannelProperties": {
            "additionalProperties": false,
            "description": "Fibre Channel-specific properties for a port.",
            "longDescription": "This type shall contain Fibre Channel-specific properties for a port.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "FabricName": {
                    "description": "The Fibre Channel Fabric Name provided by the switch.",
                    "longDescription": "This property shall indicate the Fibre Channel Fabric Name provided by the switch.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ],
                    "versionAdded": "v1_3_0"
                },
                "NumberDiscoveredRemotePorts": {
                    "description": "The number of ports not on the associated device that the associated device has discovered through this port.",
                    "longDescription": "This property shall contain the number of ports not on this associated device that this port has discovered.",
                    "readonly": true,
                    "type": [
                        "integer",
                        "null"
                    ],
                    "versionAdded": "v1_3_0"
                },
                "PortConnectionType": {
                    "anyOf": [
                        {
                            "$ref": "#/definitions/PortConnectionType"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "description": "The connection type of this port.",
                    "longDescription": "This property shall contain the connection type for this port.",
                    "readonly": true,
                    "versionAdded": "v1_3_0"
                }
            },
            "type": "object"
        },
        "FlowControl": {
            "enum": [
                "None",
                "TX",
                "RX",
                "TX_RX"
            ],
            "enumDescriptions": {
                "None": "No IEEE 802.3x flow control is enabled on this port.",
                "RX": "IEEE 802.3x flow control might be initiated by the link partner.",
                "TX": "IEEE 802.3x flow control might be initiated by this station.",
                "TX_RX": "IEEE 802.3x flow control might be initiated by this station or the link partner."
            },
            "type": "string"
        },
        "GenZ": {
            "additionalProperties": false,
            "description": "This type defines Gen-Z specific port properties.",
            "longDescription": "This type shall contain Gen-Z specific port properties.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "LPRT": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/RouteEntryCollection.json#/definitions/RouteEntryCollection",
                    "description": "The Linear Packet Relay Table for the port.",
                    "longDescription": "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.",
                    "readonly": true,
                    "versionAdded": "v1_2_0"
                },
                "MPRT": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/RouteEntryCollection.json#/definitions/RouteEntryCollection",
                    "description": "the Multi-subnet Packet Relay Table for the port.",
                    "longDescription": "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.",
                    "readonly": true,
                    "versionAdded": "v1_2_0"
                },
                "VCAT": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/VCATEntryCollection.json#/definitions/VCATEntryCollection",
                    "description": "the Virtual Channel Action Table for the port.",
                    "longDescription": "This property shall contain a link to a resource collection of type VCATEntryCollection.",
                    "readonly": true,
                    "versionAdded": "v1_2_0"
                }
            },
            "type": "object"
        },
        "LinkConfiguration": {
            "additionalProperties": false,
            "description": "Properties of the link for which this port is configured.",
            "longDescription": "This type shall contain properties of the link for which port has been configured.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "AutoSpeedNegotiationCapable": {
                    "description": "An indication of whether the port is capable of autonegotiating speed.",
                    "longDescription": "This property shall indicate whether the port is capable of autonegotiating speed.",
                    "readonly": true,
                    "type": [
                        "boolean",
                        "null"
                    ],
                    "versionAdded": "v1_3_0"
                },
                "AutoSpeedNegotiationEnabled": {
                    "description": "Controls whether this port is configured to enable autonegotiating speed.",
                    "longDescription": "This property shall indicate whether the port is configured to autonegotiate speed.",
                    "readonly": false,
                    "type": [
                        "boolean",
                        "null"
                    ],
                    "versionAdded": "v1_3_0"
                },
                "CapableLinkSpeedGbps": {
                    "description": "The set of link speed capabilities of this port.",
                    "items": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "longDescription": "This property shall contain all of the possible network link speed capabilities of this port.  This value includes overhead associated with the protocol.",
                    "readonly": true,
                    "type": "array",
                    "units": "Gbit/s",
                    "versionAdded": "v1_3_0"
                },
                "ConfiguredNetworkLinks": {
                    "description": "The set of link speed and width pairs this port is configured to use for autonegotiation.",
                    "items": {
                        "anyOf": [
                            {
                                "$ref": "#/definitions/ConfiguredNetworkLink"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "longDescription": "This property shall contain the set of link speed and width pairs to which this port is restricted for autonegotiation purposes.",
                    "type": "array",
                    "versionAdded": "v1_3_0"
                }
            },
            "type": "object"
        },
        "LinkNetworkTechnology": {
            "enum": [
                "Ethernet",
                "InfiniBand",
                "FibreChannel",
                "GenZ"
            ],
            "enumDescriptions": {
                "Ethernet": "The port is capable of connecting to an Ethernet network.",
                "FibreChannel": "The port is capable of connecting to a Fibre Channel network.",
                "GenZ": "The port is capable of connecting to a Gen-Z fabric.",
                "InfiniBand": "The port is capable of connecting to an InfiniBand network."
            },
            "type": "string"
        },
        "LinkState": {
            "enum": [
                "Enabled",
                "Disabled"
            ],
            "enumDescriptions": {
                "Disabled": "The link is disabled and not operational.",
                "Enabled": "The link is enabled and operational."
            },
            "enumLongDescriptions": {
                "Disabled": "This value shall indicate the link is disabled and not operational.  The port is not allowed to establish a connection with the remote port.  However, other types of traffic, such as management traffic, may be sent or received by the port.",
                "Enabled": "This value shall indicate the link is enabled and operational.  The port is allowed to establish a connection with the remote port."
            },
            "type": "string"
        },
        "LinkStatus": {
            "enum": [
                "LinkUp",
                "Starting",
                "Training",
                "LinkDown",
                "NoLink"
            ],
            "enumDescriptions": {
                "LinkDown": "The link on this interface is down.",
                "LinkUp": "This link on this interface is up.",
                "NoLink": "No physical link detected on this interface.",
                "Starting": "This link on this interface is starting.  A physical link has been established, but the port is not able to transfer data.",
                "Training": "This physical link on this interface is training."
            },
            "type": "string"
        },
        "Links": {
            "additionalProperties": false,
            "description": "The links to other resources that are related to this resource.",
            "longDescription": "This Redfish Specification-described type shall contain links to resources that are related to but are not contained by, or subordinate to, this resource.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "AssociatedEndpoints": {
                    "description": "An array of links to the endpoints at the other end of the link.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/Endpoint.json#/definitions/Endpoint"
                    },
                    "longDescription": "This property shall contain an array of links to resources of type Endpoint that represent the endpoints to which this port is connected.",
                    "readonly": true,
                    "type": "array"
                },
                "AssociatedEndpoints@odata.count": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
                },
                "ConnectedPorts": {
                    "description": "An array of links to the remote device ports at the other end of the link.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/Port.json#/definitions/Port"
                    },
                    "longDescription": "This property shall contain an array of links to resources of type Port that represent the remote device ports to which this port is connected.",
                    "readonly": true,
                    "type": "array",
                    "versionAdded": "v1_2_0"
                },
                "ConnectedPorts@odata.count": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
                },
                "ConnectedSwitchPorts": {
                    "description": "An array of links to the switch ports at the other end of the link.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/Port.json#/definitions/Port"
                    },
                    "longDescription": "This property shall contain an array of links to resources of type Port that represent the switch ports to which this port is connected.",
                    "readonly": true,
                    "type": "array"
                },
                "ConnectedSwitchPorts@odata.count": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
                },
                "ConnectedSwitches": {
                    "description": "An array of links to the switches at the other end of the link.",
                    "items": {
                        "$ref": "http://redfish.dmtf.org/schemas/v1/Switch.json#/definitions/Switch"
                    },
                    "longDescription": "This property shall contain an array of links to resources of type Switch that represent the switches to which this port is connected.",
                    "readonly": true,
                    "type": "array"
                },
                "ConnectedSwitches@odata.count": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
                },
                "Oem": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
                    "description": "The OEM extension property.",
                    "longDescription": "This property shall contain the OEM extensions.  All values for properties contained in this object shall conform to the Redfish Specification-described requirements."
                }
            },
            "type": "object"
        },
        "OemActions": {
            "additionalProperties": true,
            "description": "The available OEM-specific actions for this resource.",
            "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {},
            "type": "object"
        },
        "Port": {
            "additionalProperties": false,
            "description": "The Port schema contains properties that describe a port of a switch, controller, chassis, or any other device that could be connected to another entity.",
            "longDescription": "This resource contains a simple port for a Redfish implementation.",
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "@odata.context": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
                },
                "@odata.etag": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
                },
                "@odata.id": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
                },
                "@odata.type": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
                },
                "Actions": {
                    "$ref": "#/definitions/Actions",
                    "description": "The available actions for this resource.",
                    "longDescription": "This property shall contain the available actions for this resource."
                },
                "ActiveWidth": {
                    "description": "The number of active lanes for this interface.",
                    "longDescription": "This property shall contain the number of active lanes for this interface.",
                    "readonly": true,
                    "type": "integer",
                    "versionAdded": "v1_2_0"
                },
                "CurrentSpeedGbps": {
                    "description": "The current speed of this port.",
                    "longDescription": "This property shall contain the speed of this port currently negotiated and running.  This value includes overhead associated with the protocol.",
                    "readonly": true,
                    "type": [
                        "number",
                        "null"
                    ],
                    "units": "Gbit/s"
                },
                "Description": {
                    "anyOf": [
                        {
                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "readonly": true
                },
                "Ethernet": {
                    "anyOf": [
                        {
                            "$ref": "#/definitions/EthernetProperties"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "description": "Ethernet properties for this port.",
                    "longDescription": "This property shall contain Ethernet-specific properties of the port.",
                    "versionAdded": "v1_3_0"
                },
                "FibreChannel": {
                    "anyOf": [
                        {
                            "$ref": "#/definitions/FibreChannelProperties"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "description": "Fibre Channel properties for this port.",
                    "longDescription": "This property shall contain Fibre Channel-specific properties of the port.",
                    "versionAdded": "v1_3_0"
                },
                "GenZ": {
                    "$ref": "#/definitions/GenZ",
                    "description": "Gen-Z specific properties.",
                    "longDescription": "This property shall contain Gen-Z specific properties for this interface.",
                    "versionAdded": "v1_2_0"
                },
                "Id": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
                    "readonly": true
                },
                "InterfaceEnabled": {
                    "description": "An indication of whether the port is enabled.",
                    "longDescription": "This property shall indicate whether the port is enabled.  When disabled, no traffic of any type, such as link protocol traffic and management traffic, is sent or received by the port.",
                    "readonly": false,
                    "type": [
                        "boolean",
                        "null"
                    ],
                    "versionAdded": "v1_2_0"
                },
                "LinkConfiguration": {
                    "description": "The link configuration of this port.",
                    "items": {
                        "$ref": "#/definitions/LinkConfiguration"
                    },
                    "longDescription": "This property shall contain the static capabilities and configuration settings of the port.",
                    "type": "array",
                    "versionAdded": "v1_3_0"
                },
                "LinkNetworkTechnology": {
                    "anyOf": [
                        {
                            "$ref": "#/definitions/LinkNetworkTechnology"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "description": "The link network technology capabilities of this port.",
                    "longDescription": "This property shall contain a network technology capability of this port.",
                    "readonly": true,
                    "versionAdded": "v1_2_0"
                },
                "LinkState": {
                    "$ref": "#/definitions/LinkState",
                    "description": "The desired link state for this interface.",
                    "longDescription": "This property shall contain the desired link state for this interface.",
                    "readonly": false,
                    "versionAdded": "v1_2_0"
                },
                "LinkStatus": {
                    "$ref": "#/definitions/LinkStatus",
                    "description": "The link status for this interface.",
                    "longDescription": "This property shall contain the link status for this interface.",
                    "readonly": true,
                    "versionAdded": "v1_2_0"
                },
                "LinkTransitionIndicator": {
                    "description": "The number of link state transitions for this interface.",
                    "longDescription": "This property shall contain the number of link state transitions for this interface.",
                    "readonly": false,
                    "type": "integer",
                    "versionAdded": "v1_2_0"
                },
                "Links": {
                    "$ref": "#/definitions/Links",
                    "description": "The links to other resources that are related to this resource.",
                    "longDescription": "This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource."
                },
                "Location": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Location",
                    "description": "The location of the port.",
                    "longDescription": "This property shall contain location information of the associated port.",
                    "versionAdded": "v1_1_0"
                },
                "LocationIndicatorActive": {
                    "description": "An indicator allowing an operator to physically locate this resource.",
                    "longDescription": "This property shall contain the state of the indicator used to physically identify or locate this resource.  A write to this property shall update the value of IndicatorLED in this resource, if supported, to reflect the implementation of the locating function.",
                    "readonly": false,
                    "type": [
                        "boolean",
                        "null"
                    ],
                    "versionAdded": "v1_3_0"
                },
                "MaxFrameSize": {
                    "description": "The maximum frame size supported by the port.",
                    "longDescription": "This property shall contain the maximum frame size supported by the port.",
                    "readonly": true,
                    "type": [
                        "integer",
                        "null"
                    ],
                    "units": "By",
                    "versionAdded": "v1_3_0"
                },
                "MaxSpeedGbps": {
                    "description": "The maximum speed of this port as currently configured.",
                    "longDescription": "This property shall contain the maximum speed of which this port is capable of being configured.  If capable of autonegotiation, the system shall attempt to negotiate at the maximum speed set.  This value includes overhead associated with the protocol.",
                    "readonly": true,
                    "type": [
                        "number",
                        "null"
                    ],
                    "units": "Gbit/s"
                },
                "Metrics": {
                    "anyOf": [
                        {
                            "$ref": "http://redfish.dmtf.org/schemas/v1/PortMetrics.json#/definitions/PortMetrics"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "description": "The link to the metrics associated with this port.",
                    "longDescription": "This property shall contain a link to the metrics associated with this port.",
                    "readonly": true,
                    "versionAdded": "v1_2_0"
                },
                "Name": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
                    "readonly": true
                },
                "Oem": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
                    "description": "The OEM extension property.",
                    "longDescription": "This property shall contain the OEM extensions.  All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
                },
                "PortId": {
                    "description": "The label of this port on the physical package for this port.",
                    "longDescription": "This property shall contain the name of the port as indicated on the device containing the port.",
                    "readonly": true,
                    "type": [
                        "string",
                        "null"
                    ]
                },
                "PortMedium": {
                    "anyOf": [
                        {
                            "$ref": "#/definitions/PortMedium"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "description": "The physical connection medium for this port.",
                    "longDescription": "This property shall contain the physical connection medium for this port.",
                    "readonly": true,
                    "versionAdded": "v1_2_0"
                },
                "PortProtocol": {
                    "anyOf": [
                        {
                            "$ref": "http://redfish.dmtf.org/schemas/v1/Protocol.json#/definitions/Protocol"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "description": "The protocol being sent over this port.",
                    "longDescription": "This property shall contain the protocol being sent over this port.",
                    "readonly": true
                },
                "PortType": {
                    "anyOf": [
                        {
                            "$ref": "#/definitions/PortType"
                        },
                        {
                            "type": "null"
                        }
                    ],
                    "description": "The type of this port.",
                    "longDescription": "This property shall contain the port type for this port.",
                    "readonly": true
                },
                "SignalDetected": {
                    "description": "An indication of whether a signal is detected on this interface.",
                    "longDescription": "This property shall indicate whether a signal that is appropriate for this link technology is detected for this port.",
                    "readonly": true,
                    "type": [
                        "boolean",
                        "null"
                    ],
                    "versionAdded": "v1_2_0"
                },
                "Status": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
                    "description": "The status and health of the resource and its subordinate or dependent resources.",
                    "longDescription": "This property shall contain any status or health properties of the resource."
                },
                "Width": {
                    "description": "The number of lanes, phys, or other physical transport links that this port contains.",
                    "longDescription": "This property shall contain the number of physical transport links that this port contains.",
                    "readonly": true,
                    "type": [
                        "integer",
                        "null"
                    ]
                }
            },
            "required": [
                "@odata.id",
                "@odata.type",
                "Id",
                "Name"
            ],
            "type": "object"
        },
        "PortConnectionType": {
            "enum": [
                "NotConnected",
                "NPort",
                "PointToPoint",
                "PrivateLoop",
                "PublicLoop",
                "Generic",
                "ExtenderFabric"
            ],
            "enumDescriptions": {
                "ExtenderFabric": "This port connection type is an extender fabric port.",
                "Generic": "This port connection type is a generic fabric port.",
                "NPort": "This port connects through an N-Port to a switch.",
                "NotConnected": "This port is not connected.",
                "PointToPoint": "This port connects in a Point-to-point configuration.",
                "PrivateLoop": "This port connects in a private loop configuration.",
                "PublicLoop": "This port connects in a public configuration."
            },
            "type": "string"
        },
        "PortMedium": {
            "enum": [
                "Electrical",
                "Optical"
            ],
            "enumDescriptions": {
                "Electrical": "This port has an electrical cable connection.",
                "Optical": "This port has an optical cable connection."
            },
            "type": "string"
        },
        "PortType": {
            "enum": [
                "UpstreamPort",
                "DownstreamPort",
                "InterswitchPort",
                "ManagementPort",
                "BidirectionalPort",
                "UnconfiguredPort"
            ],
            "enumDescriptions": {
                "BidirectionalPort": "This port connects to any type of device.",
                "DownstreamPort": "This port connects to a target device.",
                "InterswitchPort": "This port connects to another switch.",
                "ManagementPort": "This port connects to a switch manager.",
                "UnconfiguredPort": "This port has not yet been configured.",
                "UpstreamPort": "This port connects to a host device."
            },
            "type": "string"
        },
        "Reset": {
            "additionalProperties": false,
            "description": "This action resets this port.",
            "longDescription": "This action shall reset this port.",
            "parameters": {
                "ResetType": {
                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/ResetType",
                    "description": "The type of reset.",
                    "longDescription": "This parameter shall contain the type of reset.  The service can accept a request without the parameter and perform an implementation specific default reset."
                }
            },
            "patternProperties": {
                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
                    "description": "This property shall specify a valid odata or Redfish property.",
                    "type": [
                        "array",
                        "boolean",
                        "integer",
                        "number",
                        "null",
                        "object",
                        "string"
                    ]
                }
            },
            "properties": {
                "target": {
                    "description": "Link to invoke action",
                    "format": "uri-reference",
                    "type": "string"
                },
                "title": {
                    "description": "Friendly action name",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "SupportedEthernetCapabilities": {
            "enum": [
                "WakeOnLAN",
                "EEE"
            ],
            "enumDescriptions": {
                "EEE": "IEEE 802.3az Energy-Efficient Ethernet (EEE) is supported on this port.",
                "WakeOnLAN": "Wake on LAN (WoL) is supported on this port."
            },
            "type": "string"
        }
    },
    "owningEntity": "DMTF",
    "release": "2020.3",
    "title": "#Port.v1_3_5.Port"
}