MEF

MEF LSO Presto mef-common,tapi-topology,tapi-common,tapi-connectivity,mef-common-types,nrm-connectivity,nrp-interface API

mef-common,tapi-topology,tapi-common,tapi-connectivity,mef-common-types,nrm-connectivity,nrp-interface API — the OpenAPI definition published by Mplify (formerly MEF) in the MEF LSO Presto SDK, Kylie release. LSO Presto is the Interface Reference Point between the Service Orchestration Functionality (SOF) and the Infrastructure Control and Management (ICM) layer, defined by MEF 60 Network Resource Provisioning. 17 path(s), 17 operation(s). Apache-2.0 licensed and openly downloadable from public GitHub.

OpenAPI Specification

mef-lso-presto-nrp-rcp-only-openapi.yml Raw ↑
---
swagger: "2.0"
info:
  description: "MEF 60 (PRESTO NRP) swagger definition - RPC definitions only"
  version: "2018R2"
  title: "mef-common,tapi-topology,tapi-common,tapi-connectivity,mef-common-types,nrm-connectivity,nrp-interface\
    \ API"
host: "localhost:1234"
basePath: "/restconf"
consumes:
- "application/json"
- "application/xml"
produces:
- "application/json"
- "application/xml"
paths:
  /operations/compute-p-2-p-path/:
    post:
      tags:
      - "tapi-path-computation"
      parameters:
      - in: "body"
        name: "body-param"
        required: false
        schema:
          $ref: "#/definitions/tapi.path.computation.ComputeP2PPathInput"
      responses:
        200:
          description: "Correct response"
          schema:
            $ref: "#/definitions/tapi.path.computation.ComputeP2PPathOutput"
        201:
          description: "No response"
        400:
          description: "Internal error"
  /operations/create-connectivity-service/:
    post:
      tags:
      - "tapi-connectivity"
      parameters:
      - in: "body"
        name: "body-param"
        required: false
        schema:
          $ref: "#/definitions/tapi.connectivity.CreateConnectivityServiceInput"
      responses:
        200:
          description: "Correct response"
          schema:
            $ref: "#/definitions/tapi.connectivity.CreateConnectivityServiceOutput"
        201:
          description: "No response"
        400:
          description: "Internal error"
  /operations/delete-connectivity-service/:
    post:
      tags:
      - "tapi-connectivity"
      parameters:
      - in: "body"
        name: "body-param"
        required: false
        schema:
          $ref: "#/definitions/tapi.connectivity.DeleteConnectivityServiceInput"
      responses:
        200:
          description: "Correct response"
          schema:
            $ref: "#/definitions/tapi.connectivity.DeleteConnectivityServiceOutput"
        201:
          description: "No response"
        400:
          description: "Internal error"
  /operations/delete-p-2-p-path/:
    post:
      tags:
      - "tapi-path-computation"
      parameters:
      - in: "body"
        name: "body-param"
        required: false
        schema:
          $ref: "#/definitions/tapi.path.computation.DeleteP2PPathInput"
      responses:
        200:
          description: "Correct response"
          schema:
            $ref: "#/definitions/tapi.path.computation.DeleteP2PPathOutput"
        201:
          description: "No response"
        400:
          description: "Internal error"
  /operations/get-connection-details/:
    post:
      tags:
      - "tapi-connectivity"
      parameters:
      - in: "body"
        name: "body-param"
        required: false
        schema:
          $ref: "#/definitions/tapi.connectivity.GetConnectionDetailsInput"
      responses:
        200:
          description: "Correct response"
          schema:
            $ref: "#/definitions/tapi.connectivity.GetConnectionDetailsOutput"
        201:
          description: "No response"
        400:
          description: "Internal error"
  /operations/get-connectivity-service-details/:
    post:
      tags:
      - "tapi-connectivity"
      parameters:
      - in: "body"
        name: "body-param"
        required: false
        schema:
          $ref: "#/definitions/tapi.connectivity.GetConnectivityServiceDetailsInput"
      responses:
        200:
          description: "Correct response"
          schema:
            $ref: "#/definitions/tapi.connectivity.GetConnectivityServiceDetailsOutput"
        201:
          description: "No response"
        400:
          description: "Internal error"
  /operations/get-connectivity-service-list/:
    post:
      tags:
      - "tapi-connectivity"
      parameters: []
      responses:
        200:
          description: "Correct response"
          schema:
            $ref: "#/definitions/tapi.connectivity.GetConnectivityServiceListOutput"
        201:
          description: "No response"
        400:
          description: "Internal error"
  /operations/get-link-details/:
    post:
      tags:
      - "tapi-topology"
      parameters:
      - in: "body"
        name: "body-param"
        required: false
        schema:
          $ref: "#/definitions/tapi.topology.GetLinkDetailsInput"
      responses:
        200:
          description: "Correct response"
          schema:
            $ref: "#/definitions/tapi.topology.GetLinkDetailsOutput"
        201:
          description: "No response"
        400:
          description: "Internal error"
  /operations/get-node-details/:
    post:
      tags:
      - "tapi-topology"
      parameters:
      - in: "body"
        name: "body-param"
        required: false
        schema:
          $ref: "#/definitions/tapi.topology.GetNodeDetailsInput"
      responses:
        200:
          description: "Correct response"
          schema:
            $ref: "#/definitions/tapi.topology.GetNodeDetailsOutput"
        201:
          description: "No response"
        400:
          description: "Internal error"
  /operations/get-node-edge-point-details/:
    post:
      tags:
      - "tapi-topology"
      parameters:
      - in: "body"
        name: "body-param"
        required: false
        schema:
          $ref: "#/definitions/tapi.topology.GetNodeEdgePointDetailsInput"
      responses:
        200:
          description: "Correct response"
          schema:
            $ref: "#/definitions/tapi.topology.GetNodeEdgePointDetailsOutput"
        201:
          description: "No response"
        400:
          description: "Internal error"
  /operations/get-service-interface-point-details/:
    post:
      tags:
      - "tapi-common"
      parameters:
      - in: "body"
        name: "body-param"
        required: false
        schema:
          $ref: "#/definitions/tapi.common.GetServiceInterfacePointDetailsInput"
      responses:
        200:
          description: "Correct response"
          schema:
            $ref: "#/definitions/tapi.common.GetServiceInterfacePointDetailsOutput"
        201:
          description: "No response"
        400:
          description: "Internal error"
  /operations/get-service-interface-point-list/:
    post:
      tags:
      - "tapi-common"
      parameters: []
      responses:
        200:
          description: "Correct response"
          schema:
            $ref: "#/definitions/tapi.common.GetServiceInterfacePointListOutput"
        201:
          description: "No response"
        400:
          description: "Internal error"
  /operations/get-topology-details/:
    post:
      tags:
      - "tapi-topology"
      parameters:
      - in: "body"
        name: "body-param"
        required: false
        schema:
          $ref: "#/definitions/tapi.topology.GetTopologyDetailsInput"
      responses:
        200:
          description: "Correct response"
          schema:
            $ref: "#/definitions/tapi.topology.GetTopologyDetailsOutput"
        201:
          description: "No response"
        400:
          description: "Internal error"
  /operations/get-topology-list/:
    post:
      tags:
      - "tapi-topology"
      parameters: []
      responses:
        200:
          description: "Correct response"
          schema:
            $ref: "#/definitions/tapi.topology.GetTopologyListOutput"
        201:
          description: "No response"
        400:
          description: "Internal error"
  /operations/optimize-p-2-p-path/:
    post:
      tags:
      - "tapi-path-computation"
      parameters:
      - in: "body"
        name: "body-param"
        required: false
        schema:
          $ref: "#/definitions/tapi.path.computation.OptimizeP2PPathInput"
      responses:
        200:
          description: "Correct response"
          schema:
            $ref: "#/definitions/tapi.path.computation.OptimizeP2PPathOutput"
        201:
          description: "No response"
        400:
          description: "Internal error"
  /operations/update-connectivity-service/:
    post:
      tags:
      - "tapi-connectivity"
      parameters:
      - in: "body"
        name: "body-param"
        required: false
        schema:
          $ref: "#/definitions/tapi.connectivity.UpdateConnectivityServiceInput"
      responses:
        200:
          description: "Correct response"
          schema:
            $ref: "#/definitions/tapi.connectivity.UpdateConnectivityServiceOutput"
        201:
          description: "No response"
        400:
          description: "Internal error"
  /operations/update-service-interface-point/:
    post:
      tags:
      - "tapi-common"
      parameters:
      - in: "body"
        name: "body-param"
        required: false
        schema:
          $ref: "#/definitions/tapi.common.UpdateServiceInterfacePointInput"
      responses:
        201:
          description: "No response"
        400:
          description: "Internal error"
definitions:
  mef.common.BwpFlow:
    type: "object"
    properties:
      cir-max:
        type: "integer"
        format: "int64"
        description: "This attribute denotes the maximum Committed Information Rate\
          \ that limits the rate of tokens added to the committed token bucket. In\
          \ bits per second."
      envelope:
        description: "This attribute represents the relationship between the BwpFlow\
          \ and the Envelope, indicating which Envelope the BwpFlow belongs."
        $ref: "#/definitions/mef.common.Envelope"
      token-request-offset:
        type: "integer"
        format: "int64"
        description: "This attribute adjusts the number of tokens requested for each\
          \ external interface frame."
      coupling-flag:
        type: "boolean"
        description: "This attribute denotes the Coupling Flag that Determines if\
          \ overflow Green tokens can be used as Yellow tokens. FALSE for 0 (overflow\
          \ green tokens are discarded) and TRUE for 1 (overflow green tokens can\
          \ be used as yellow tokens)"
        default: false
      cbs:
        type: "integer"
        format: "int64"
        description: "This attribute denotes the Committed Burst Size that limits\
          \ the maximum number of bytes available for a burst of frames that will\
          \ be declared Green, in bytes,"
      color-mode:
        description: "This attribute denotes the Color Mode that Indicates whether\
          \ the Color Identifier of the frame is considered by the Bandwidth Profile\
          \ Algorithm."
        $ref: "#/definitions/mef.common.types.ColorMode"
      ebs:
        type: "integer"
        format: "int64"
        description: "This attribute denotes the Excessive Burst Size that limits\
          \ the maximum number of bytes available for a burst of frames that will\
          \ be declared Yellow, in bytes."
      rank:
        type: "integer"
        format: "int64"
        description: "This attribute denotes the rank of the bandwidth profile flow\
          \ in the envelope."
      eir-max:
        type: "integer"
        format: "int64"
        description: "This attribute denotes the Maximum Excess Information Rate that\
          \ Limits the rate of tokens added to the excess token bucket, in bits per\
          \ second."
      cir:
        type: "integer"
        format: "int64"
        description: "This attribute denotes the Committed Information Rate that limits\
          \ the average rate of frames that will be declared Green. In bits per second."
      eir:
        type: "integer"
        format: "int64"
        description: "This attribute denotes the Excess Information Rate that limits\
          \ the average rate of frames that will be declared Yellow, in bits per second."
  mef.common.ColorIdentifier:
    type: "object"
    properties:
      dei-color-pac:
        description: "This attribute represents the relationship between the ColorIdentifier\
          \ and the DeiColorIdPac (representing the choice that maps Vlan tag DEI\
          \ to Color)."
        $ref: "#/definitions/mef.common.DeiColorIdPac"
      color-field-type:
        description: "This attribute determines which conditional package (among EVC/OVC\
          \ End Point, PCP, DEI or DSCP) to be used as the Color Identifier."
        $ref: "#/definitions/mef.common.types.ColorFieldType"
      sep-color-pac:
        description: "This attribute represents the relationship between the ColorIdentifier\
          \ and the SepColorIdPac (representing the choice that maps EVC End Point\
          \ or OVC End Point to Color)."
        $ref: "#/definitions/mef.common.SepColorIdPac"
      dcsp-color-pac:
        type: "array"
        description: "This attribute represents the relationship between the ColorIdentifier\
          \ and the DscpColorIdPac (representing the choice that maps DSCP values\
          \ to Color)."
        items:
          $ref: "#/definitions/mef.common.DscpColorIdPac"
      pcp-color-pac:
        description: "This attribute represents the relationship between the ColorIdentifier\
          \ and the PcpColorIdPac (representing the choice that maps Vlan tag PCPs\
          \ to Color)."
        $ref: "#/definitions/mef.common.PcpColorIdPac"
  mef.common.CosIdentifier:
    type: "object"
    properties:
      pcp-cos-id-pac:
        description: "This attribute represents the relationship between the CosIdentifier\
          \ and the PcpCosIdPac  when the cosMappingType of EvcEndPoint or OvcEndPoint\
          \ is PCP and the cosName is not only for L2CP."
        $ref: "#/definitions/mef.common.PcpCosIdPac"
      sep-cos-id-pac:
        description: "This attribute represents the relationship between the CosIdentifier\
          \ and the SepCosIdPac when the cosMappingType of EvcEndPoint or OvcEndPoint\
          \ is END_POINT and the cosName is not only for L2CP."
        $ref: "#/definitions/mef.common.SepCosIdPac"
      ingress-bwp-per-cos:
        description: "This attribute represents the relationship between the CosIdentifier\
          \ and the BwpFlow, for ingress bandwidth profile per CoS Name."
        $ref: "#/definitions/mef.common.BwpFlow"
      l2cp-protocol-list:
        type: "array"
        description: "This attribute lists the L2CP Protocols that map to the Class\
          \ of Service Name."
        items:
          $ref: "#/definitions/mef.common.types.L2cpProtocol"
      dscp-cos-id-pac:
        type: "array"
        description: "This attribute represents the relationship between the CosIdentifier\
          \ and the DespCosIdPac when the cosMappingType of EvcEndPoint or OvcEndPoint\
          \ is DSCP and the cosName is not only for L2CP."
        items:
          $ref: "#/definitions/mef.common.DscpCosIdPac"
      cos-name:
        type: "string"
        description: "This attribute denotes the Class of Service name that the CosIdentifier\
          \ map to."
  mef.common.CosNameAndColorToDeiPac:
    type: "object"
    properties:
      ingress-cos-name:
        type: "string"
        description: "This attribute denotes the ingress CoS name."
      dei-value:
        description: "This attribute denotes the egress frame DEI value, mapped from\
          \ ingress CoS Name and ingress frame color. "
        $ref: "#/definitions/mef.common.types.DeiOrDiscard"
      ingress-color:
        description: "This attribute denotes the ingress frame color as one of the\
          \ determined factor for Egress Map. "
        $ref: "#/definitions/mef.common.types.FrameColor"
  mef.common.CosNameAndColorToPcpPac:
    type: "object"
    properties:
      ingress-cos-name:
        type: "string"
        description: "This attribute denotes the ingress CoS name."
      pcp-value:
        description: "This attribute denotes the egress frame PCP value, mapped from\
          \ ingress CoS name and ingress frame color. "
        $ref: "#/definitions/mef.common.types.PcpOrDiscard"
      ingress-color:
        description: "This attribute denotes the ingress frame color as one of the\
          \ determined factor for Egress Map. "
        $ref: "#/definitions/mef.common.types.FrameColor"
  mef.common.CosNameToPcpPac:
    type: "object"
    properties:
      pcp-value:
        description: "This attribute denotes the egress frame PCP value, mapped from\
          \ ingress CoS Name and ingress frame color. "
        $ref: "#/definitions/mef.common.types.PcpOrDiscard"
      ingress-cos-name:
        type: "string"
        description: "This attribute denotes the ingress CoS name."
  mef.common.DeiColorIdPac:
    type: "object"
  mef.common.DscpColorIdPac:
    type: "object"
    properties:
      dscp-value-for-green-list:
        type: "array"
        description: "This attribute provides a list DSCP values map to the green\
          \ ingress EI frames. The dscpValueForGreenList and the dscpValueForYellowList\
          \ must disjoint and the union of the two lists must include all possible\
          \ DSCP values."
        items:
          type: "integer"
          format: "int64"
      ip-version:
        description: "This attribute denotes which IP version is used. It can be IPV4,\
          \ IPV6 or IPV4_AND_IPV6."
        $ref: "#/definitions/mef.common.types.IpVersion"
      dscp-value-for-yellow-list:
        type: "array"
        description: "This attribute provides a list DSCP values map to the yellow\
          \ ingress EI frames. The dscpValueForGreenList and the dscpValueForYellowList\
          \ must disjoint and the union of the two lists must include all possible\
          \ DSCP values."
        items:
          type: "integer"
          format: "int64"
  mef.common.DscpCosIdPac:
    type: "object"
    properties:
      ip-version:
        description: "This attribute denotes the IP version for the DSCP. It can be\
          \ IPV4, IPV6 or IPV4_AND_IPV6."
        $ref: "#/definitions/mef.common.types.IpVersion"
      dscp-value-list:
        type: "array"
        description: "This attribute is a list of DSCP values that maps to a CoS Name."
        items:
          type: "integer"
          format: "int64"
  mef.common.DscpEecIdPac:
    type: "object"
    properties:
      ip-version:
        description: "This attribute specifies the IP version for the DSCP. It can\
          \ be IPV4, IPV6 or IPV4_AND_IPV6."
        $ref: "#/definitions/mef.common.types.IpVersion"
      dscp-value-list:
        type: "array"
        description: "This attribute is a list of DSCP values that maps to the EEC\
          \ Name. "
        items:
          type: "integer"
          format: "int64"
  mef.common.EecIdentifier:
    type: "object"
    properties:
      egress-bwp-per-eec:
        description: "This attribute represents the relationship between the EecIdentifier\
          \ and the BwpFlow, for egress bandwidth profile per EEC Name."
        $ref: "#/definitions/mef.common.BwpFlow"
      sep-eec-id-pac:
        description: "This attribute represents the relationship between the EecIdentifier\
          \ and a SepEecIdPac when the eecMappingType of EvcEndPoint or OvcEndPoint\
          \ is END_POINT and the eecName is not only for L2CP. This not addressed\
          \ in MEF 10.3 but can be future consideration."
        $ref: "#/definitions/mef.common.SepEecIdPac"
      l2cp-protocol-list:
        type: "array"
        description: "This attribute lists the L2CP Protocols that map to the Egress\
          \ Equivalence Class Name."
        items:
          $ref: "#/definitions/mef.common.types.L2cpProtocol"
      dscp-eec-id-pac:
        type: "array"
        description: "This attribute represents the relationship between the EecIdentifier\
          \ and a DscpEecIdPac when the eecMappingType of EvcEndPoint or OvcEndPoint\
          \ is DSCP and the eecName is not only for L2CP."
        items:
          $ref: "#/definitions/mef.common.DscpEecIdPac"
      pcp-eec-id-pac:
        description: "This attribute represents the relationship between the EecIdentifier\
          \ and a PcpEecIdPac when the eecMappingType of EvcEndPoint or OvcEndPoint\
          \ is PCP and the eecName is not only for L2CP."
        $ref: "#/definitions/mef.common.PcpEecIdPac"
      eec-name:
        type: "string"
        description: "This attribute denotes the Egress Equivalence Class Name that\
          \ the EecIdentifier maps to."
  mef.common.EgressMap:
    type: "object"
    properties:
      cos-name-to-pcp-pac-list:
        type: "array"
        description: "This attribute represents the relationship between the EgressMap\
          \ and the CosNameToPcpPac (representing the attribute set for using CoS\
          \ Name to egress PCP mapping)."
        items:
          $ref: "#/definitions/mef.common.CosNameToPcpPac"
      egress-map-type:
        description: "This attribute determines which form to take to apply for egress\
          \ frame color indication, among CoS name and Ingress Color to C-Tag PCP,\
          \ or CoS name and Ingress Color to S-Tag PCP, or CoS Name and Ingress Color\
          \ to C-Tag DEI, or CoS Name and Ingress Color to S-Tag DEI, or CoS Name\
          \ to C-Tag PCP, or CoS Name to S-Tag PCP."
        $ref: "#/definitions/mef.common.types.EgressMapType"
      cos-name-and-color-to-pcp-pac-list:
        type: "array"
        description: "This attribute represents the relationship between the EgressMap\
          \ and the CosNameAndColorToPcpPac (representing the attribute set for using\
          \ CoS Name and ingress color to egress PCP mapping)."
        items:
          $ref: "#/definitions/mef.common.CosNameAndColorToPcpPac"
      cos-name-and-color-to-dei-pac-list:
        type: "array"
        description: "This attribute represents the relationship between the EgressMap\
          \ and the CosNameAndColorToDeiPac (representing the attribute set for using\
          \ CoS Name and ingress color to egress DEI mapping)."
        items:
          $ref: "#/definitions/mef.common.CosNameAndColorToDeiPac"
  mef.common.Envelope:
    type: "object"
    properties:
      coupling-flag-for-index-zero:
        type: "boolean"
        description: "This attribute denotes the coupling flag for index zero. FALSE\
          \ for NO and TRUE for YES (overflow Green tokens can be used as Yellow tokens)"
        default: false
      envelope-id:
        type: "string"
        description: "This attribute is a string that identifies the Envelope."
  mef.common.PcpColorIdPac:
    type: "object"
    properties:
      pcp-value-for-yellow-list:
        type: "array"
        description: "This attribute provides a list PCP values map to the yellow\
          \ ingress EI frames. The pcpValueForGreenList and the pcpValueForYellowList\
          \ must disjoint and the union of the two lists must include all possible\
          \ PCP values. "
        items:
          type: "integer"
          format: "int64"
      pcp-value-for-green-list:
        type: "array"
        description: "This attribute provides a list PCP values map to the green ingress\
          \ EI frames. The pcpValueForGreenList and the pcpValueForYellowList must\
          \ disjoint and the union of the two lists must include all possible PCP\
          \ values. "
        items:
          type: "integer"
          format: "int64"
  mef.common.PcpCosIdPac:
    type: "object"
    properties:
      pcp-value-list:
        type: "array"
        description: "This attribute is a list of PCP values that map to the CoS Name. "
        items:
          type: "integer"
          format: "int64"
  mef.common.PcpEecIdPac:
    type: "object"
    properties:
      pcp-value-list:
        type: "array"
        description: "This attribute provides a list of PCP values that map to the\
          \ Egress Equivalence Class Name."
        items:
          type: "integer"
          format: "int64"
  mef.common.SepColorIdPac:
    type: "object"
    properties:
      color:
        description: "This attribute denotes the color of the EI frame, green or yellow."
        $ref: "#/definitions/mef.common.types.FrameColor"
  mef.common.SepCosIdPac:
    type: "object"
  mef.common.SepEecIdPac:
    type: "object"
  mef.common.types.ColorFieldType:
    type: "string"
    enum:
    - "PCP"
    - "DEI"
    - "END_POINT"
    - "DSCP"
  mef.common.types.ColorMode:
    type: "string"
    enum:
    - "COLOR_AWARE"
    - "COLOR_BLIND"
  mef.common.types.CosOrEecMappingType:
    type: "string"
    enum:
    - "END_POINT"
    - "PCP"
    - "DSCP"
  mef.common.types.DeiOrDiscard:
    type: "string"
    enum:
    - "DISCARD"
    - "0"
    - "1"
  mef.common.types.EgressMapType:
    type: "string"
    enum:
    - "CN_C_TAG_PCP"
    - "CC_C_TAG_PCP"
    - "CC_C_TAG_DEI"
    - "CN_S_TAG_PCP"
    - "CC_S_TAG_PCP"
    - "CC_S_TAG_DEI"
  mef.common.types.FrameColor:
    type: "string"
    enum:
    - "GREEN"
    - "YELLOW"
  mef.common.types.IpVersion:
    type: "string"
    enum:
    - "IPV4"
    - "IPV6"
    - "IPV4_AND_IPV6"
  mef.common.types.L2cpAddressSet:
    type: "string"
    enum:
    - "CTA"
    - "CTB"
    - "CTB2"
  mef.common.types.L2cpPeering:
    type: "object"
    properties:
      protocol-id:
        description: "This is a L2CP Protocol Identifier."
        $ref: "#/definitions/mef.common.types.L2cpProtocol"
      link-id-list:
        type: "array"
        description: "It is possible that a protocol (e.g. ESMC) could operate on\
          \ some, but not all, of the physical\n                    links. When linkId\
          \ is not listed, the protocol peering applies to all members of the aggregation\
          \ link."
        items:
          type: "integer"
          format: "int64"
      destination-address:
        type: "integer"
        format: "int64"
        description: "This is a Mac Address."
  mef.common.types.L2cpProtocol:
    type: "object"
    properties:
      sub-type:
        type: "integer"
        format: "int64"
        description: "This attribute specifies the subtype of the L2CP protocol."
      llc-address-or-ether-type:
        type: "integer"
        format: "int64"
        description: "This attribute specifies the LLC address or the EtherType value."
      l2cp-protocol-type:
        description: "This attribute specifies the type of L2CP protocol, i.e., LLC\
          \ or EtherType."
        $ref: "#/definitions/mef.common.types.L2cpProtocolType"
  mef.common.types.L2cpProtocolType:
    type: "string"
    enum:
    - "ETHERTYPE"
    - "LLC"
  mef.common.types.PcpOrDiscard:
    type: "string"
    enum:
    - "DISCARD"
    - "0"
    - "1"
    - "2"
    - "3"
    - "4"
    - "5"
    - "6"
    - "7"
  mef.common.types.SourceMacAddressLimit:
    type: "object"
    properties:
      limit:
        type: "integer"
        format: "int64"
        description: "This attribute denotes the maximum acceptable source MAC addresses."
      time-interval:
        type: "integer"
        format: "int64"
        description: "This attribute denotes the time interval in milliseconds."
  mef.common.types.TaggedL2cpProcessing:
    type: "string"
    enum:
    - "802.1_COMPLIANT"
    - "802.1_NON_COMPLIANT"
  mef.common.types.VlanId:
    type: "object"
    properties:
      vlan-id:
        type: "integer"
        format: "int64"
        description: "This is the Vlan ID value."
  mef.common.types.VlanIdListing:
    type: "object"
    properties:
      type:
        description: "Can be LIST, or ALL, or EXCEPT."
        $ref: "#/definitions/mef.common.types.VlanIdMappingType"
      vlan-id-list:
        type: "array"
        description: "This is a list of Vlan IDs."
        items:
          $ref: "#/definitions/mef.common.types.VlanId"
  mef.common.types.VlanIdMappingType:
    type: "string"
    enum:
    - "ALL"
    - "EXCEPT"
    - "LIST"
  mef.common.types.VlanIdPreservation:
    type: "string"
    enum:
    - "PRESERVE"
    - "RETAIN"
    - "STRIP"
  nrm.connectivity.CarrierEthInterfaceResource:
    type: "object"
    properties:
      l2cp-peering-list:
        type: "array"
        description: "This attribute represents the L2CP Peering Service defined in\
          \ MEF 45 section 8.2 when applied to the UNI/ENNI/INNI."
        items:
          $ref: "#/definitions/mef.common.types.L2cpPeering"
      max-frame-size:
        type: "integer"
        format: "int64"
        description: "This value indicates the maximum length of frames supported\
          \ by this Interface."
  nrm.connectivity.DeliveryActionType:
    type: "string"
    enum:
    - "DISCARD"
    - "CONDITIONALLY"
    - "UNCONDITIONALLY"
  nrm.connectivity.FrameDeliveryCondition:
    type: "object"
    properties:
      action:
        description: "Data Service Frame disposition."
        $ref: "#/definitions/nrm.connectivity.DeliveryActionType"
      delivery-condition:
        type: "array"
        description: "When the value is conditionally, the conditions that determine\
          \ whether a Data Service Frame is delivered or discarded MUST be specified.\
          \ Conditions can be described in the name-value pair list, where name is\
          \ used to represent the condition name or identifier, and value is used\
          \ to represent the condition details associated to that name/identifier.\
          \ Interoperability requires further standardization."
        items:
          $ref: "#/definitions/tapi.common.NameAndValue"
  nrm.connectivity.VlanIdListAndUntag:
    type: "object"
    properties:
      vlan-id:
        type: "array"
        description: "This is for VLAN ID from 1 to 4094"
        items:
          $ref: "#/definitions/mef.common.types.VlanId"
      vlan-id-mapping-type:
        description: "Type=LIST: all listed VLAN IDs. Type=EXCEPT: all VLAN IDs except\
          \ the listed ones. Type=ALL, all VLAN IDs, hence vlanId list is not applicable."
        $ref: "#/definitions/mef.common.types.VlanIdMappingType"
      untagged-and-prio-tagged-included:
        type: "boolean"
        description: "If true, then untagged and priority tagged frames are included\
          \ in the mapping, otherwise not."
        default: false
  nrp.interface.CreateConnectivityServiceInputAugmentation1:
    type: "object"
    properties:
      nrp-carrier-eth-connectivity-resource:
        description: "none"
        $ref: "#/definitions/nrp.interface.NrpCarrierEthConnectivityResource"
    x-augmentation:
      prefix: "nrp-interface"
      namespace: "urn:mef:yang:nrp-interface"
  nrp.interface.EndPointAugmentation1:
    type: "object"
    properties:
      nrp-carrier-eth-connectivity-end-point-resource:
        description: "none"
        $ref: "#/definitions/nrp.interface.NrpCarrierEthConnectivityEndPointResource"
    x-augmentation:
      prefix: "nrp-interface"
      namespace: "urn:mef:yang:nrp-interface"
  nrp.interface.NrpCarrierEthConnectivityEndPointResource:
    type: "object"
    properties:
      egress-map-list:
        type: "array"
        description: "This attribute represents the relationship between the End Point\
          \ and the Egress Map(s).  This attribute is a set of mappings that determine\
          \ the content of the S-Tag or C-Tag of an egress EI Frame.\n           \
          \             "
        items:
          $ref: "#/definitions/mef.common.EgressMap"
      l2cp-address-set:
        description: "This attribute specifies the subset of the Bridge Reserved Addresses\
          \ that are filtered (i.e. L2CP Frames with this destination address are\
          \ Peered or Discarded but not Passed) at a L2CP Decision Point."
        $ref: "#/definitions/mef.common.types.L2cpAddressSet"
      egress-bwp-flow:
        description: "This attribute denotes the relationship between a Connectivity\
          \ Service End Point and the bandwidth profile flow. It describes egress\
          \ policing on all egress EI Frames mapped to a given End Point."
        $ref: "#/definitions/mef.common.BwpFlow"
      eec-mapping-type:
        description: "The Egress Equivalence Class (EEC) is used to specify Egress\
          \ Bandwidth Profiles. The EEC Mapping Type is one of SEP (Service End Point)\
          \ based, PCP based or DSCP based.\n                        When the list\
          \ of EEC Identifier is empty,  this attribute shall be unset. Otherwise\
          \ it shall be set."
        $ref: "#/definitions/mef.common.types.CosOrEecMappingType"
      ce-vlan-id-list-and-untag:
        description: "List of one or more C-VLAN ID values. A C-Tagged Frame, whose\
          \ C-VLAN ID value matches an entry in this attribute, maps to the Connectivity\
          \ Service End Point.\n          

# --- truncated at 32 KB (109 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/mef/refs/heads/main/openapi/mef-lso-presto-nrp-rcp-only-openapi.yml