{
    "$id": "http://redfish.dmtf.org/schemas/v1/Port.v1_3_9.json",
    "$ref": "#/definitions/Port",
    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
    "copyright": "Copyright 2014-2026 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": "Static capabilities and configuration settings for a link.",
            "longDescription": "This type shall contain static capabilities and configuration settings for a link.",
            "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 automatically select the highest link speed supported by both the port and its connected peer.  When set to `false`, the port shall operate at the speed specified by the `ConfiguredSpeedGbps` property.  This property represents a user-provided setting and does not describe the underlying protocol or training mechanisms used to establish the link.  For example, this property shall return `false` if the PCIe target link speed is configured by system software and reflected in the ConfiguredSpeedGbps property.",
                    "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.  An empty array shall indicate autoconfiguration uses any available link speed and width pairs.",
                    "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 unidirectional 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 static capabilities and configuration settings 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 current link network technology for this port.",
                    "longDescription": "This property shall contain the current network technology for 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 the 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 unidirectional 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.  If `IsAggregation` contains `true`, the metric values in the linked resource represent the combined metrics from all associated physical ports.",
                    "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 hardware-defined identifier of this port.",
                    "longDescription": "This property shall contain the hardware-defined identifier of this port.  The human-readable name of this port is described in the `ServiceLabel` property within `Location` for this 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": false
                },
                "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"
        }
    },
    "language": "en",
    "owningEntity": "DMTF",
    "release": "2020.3",
    "title": "#Port.v1_3_9.Port"
}