You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »


MEF Assigned Names and Numbers (MANN)

© MEF Forum 2022. Any reproduction of this document or any portion thereof shall contain the following statement: "Reproduced with permission of MEF Forum." No user of this document is authorized to modify any of the information contained herein.

Table of Contents

 

1. Terminology

AcronymDescriptionReference
Namespace A collection of uniquely-assigned identifiers. That is, the identifiers are not ever assigned to more than 1 resource, nor are they ever re-assigned to a different resource.RFC3406
NID

Namespace Identifier

  • Identifier registered with the Internet Assigned Numbers Authority, IANA
RFC 2141 
NSS

Namespace Specific Strings

  • Namespace ID determines the _syntactic_ interpretation of the Namespace Specific String

RFC 2141
URI

Uniform Resource Identifier

  • a compact string of characters for identifying an abstract or physical resource
  • classified as a locator, a name, or both
RFC 2396
URN

Uniform Resource Names

  • subset of URI that are required to remain globally unique and persistent even when the resource ceases to exist or becomes unavailable.

All URNs have the following syntax (phrases enclosed in quotes are REQUIRED):

<URN> ::= "urn:" <NID> ":" <NSS>

RFC 2141

RFC 2396

Working CommitteeMEF Working Committees like the Digital Services Committee, LSO Committee, etc.This Document
Table 1: Acronyms

2. MEF Forum URN

MEF has registered the NID:mef with IANA as described in RFC 7818. This namespace is maintained by MEF Forum for use by the Working Committees in MEF.

This document lists the Namespaces registered by MEF and the corresponding MEF specifications that contain the modules using the Namespace. Additionally, this document outlines the process to request namespaces for work that is developed by MEF.

2.1. NameSpace Specific String Root

Table 2 lists the Namespace Specific Strings (NSS) Root identified by MEF for use in the URN:

StructureNSS-Rooturn:NID:NSS-RootTypeComments
yang-nss

"yang:"


urn:mef:yang:

stringBranch of tree. This value is present when purpose is for YANG.
lso-nss"lso:"urn:mef:lso:stringBranch of tree. This value is present when purpose is for OpenAPI Specifications.
xid-nss

"xid:"

urn:mef:xid:

stringBranch of tree. This value is present when purpose is for experimental.
other-nss

"<other>:"

urn:mef:<other>:

stringbeginning with a prefix other than one of those above for future expansion
Table 2: NameSpace Specific String Roots

string = (ALPHA)0*(ALPHANUMERIC/-/_)

i.e., a string that starts with an alphabet (a-z, A-Z) and has 0 or more mix of alphanumeric (a-zA-Z0-9) or hyphen or underscore.

All URNs have the following syntax (phrases enclosed in quotes are REQUIRED):

<URN> ::= "urn":" <NID> ":" <NSS-Root> ": "<NSS-restoftree>"

Note that a NSS includes <NSS-root>:<NSS-restoftree> where the <NSS-restoftree> is the rest of tree that has one or more strings each separated with a colon, ":". Note that the colon, ":", is not allowed in a branch or leaf name.

As example, a URN might be constructed as: urn:mef:foo:bar:baz, where," bar:baz" is the <NSS-restoftree> appended to "foo:" as <NSS-root>.

Addition of a new NSS Root requires that an updated version of this document is approved by a Technical Motion of the relevant MEF Working Committee.

2.2. Contact Information

All correspondence related to MEF Namespace should be send to namespace@mef.net.

2.3. MEF Assigned URN

Updated: September 2022

URN*DescriptionTentative/FinalReference (MEF Project/Standard using namespace)

Additional Information

urn:mef:yang:mef-global

Global Profiles and Lists configured for MEF ServicesFinal

MEF 58


urn:mef:yang:mef-legato-services

Carrier Ethernet Services defined in MEF 10.3 and MEF 6.2FinalMEF 58

urn:mef:yang:mef-legato-interfaces

UNI Functionality defined in MEF 10.3 and MEF 6.2FinalMEF 58

urn:mef:yang:mef-types

Common YANG types and definitions used by MEF.FinalMEF 58

urn:mef:lso:security:oidc:acr:ca

Client AuthenticationFinalMEF 128

urn:mef:lso:security:oidc:acr:sca

Strong Client AuthenticationFinalMEF 128
Table 3: Assigned URN


2.4. Use of MEF Assigned URN

MEF Working Committees develop and publish various works as MEF Standards. A list is available at MEF Standards. These include Information and Data Models as well as Interface Profiles for Management Systems. As example, MEF has published work on YANG Modules for MEF Services. Such work in MEF could use the NSS Prefixes specified in this document.

The NSS chosen by a project have to be unique among all MEF projects. See also Namespace Structure

2.5. Other Assigned URN

There are no other assigned URNs (e.g., from namespace belonging to another organization) for use in MEF.

3. Request for Namespaces

Applications for new NSS, using one of the NSS-Roots (excluding xid-nss) specified in Namespace Specific String Root, must be made via email to namespace@mef.net. 

3.1. Namespace Application Review

The Application will be reviewed by a group including Co-Chairs of relevant Working Committees in MEF Forum as well as one or more Subject Matter Experts (SME) from Member Companies. There may be 1 or more SMEs assigned for each <NSS-Root>. The SMEs are to be approved in a Procedural Motion of the relevant Working Committee approved at a MEF Quarterly Meeting.

See also Application Details.


NSS with xid-nss is for those modules that are not expected to be used in any published work such as, for example, MEF Standards. So, there is no need to submit a request for Namespace. This document will not capture any URNs under xid-nss.

See also Managing Collisions


3.2. Application Details

Applications for the NSS should be made in the context of an approved MEF project. The request can happen at any time during the life of the project. The application should include the following:

  • Approved MEF Project Proposal Contribution
  • <NSS-root>, i.e., Namespace String Root from Table 2
  • <NSS-restoftree>. See also Namespace Structure for examples
  • a brief description of its functionality;
  • the name and email address of the person making the application; and
  • any supplementary information considered necessary to support the application.

An example use in a YANG module is provided in ExampleuseofNamespace

Approval requirements: New NSS applications can be approved by the review group as specified above.

3.3. Application with Request for New Branches

When a Namespace Request Application includes a request for a new branch under a <NSS-Root>, then the application should include the following:

  • Approved MEF Project Proposal Contribution
  • <NSS-root>, i.e., Namespace String Root from Table 2
  • New Branch for <NSS-restoftree>. See also Namespace Structure for examples
  • a brief description of the Branch and the possible leaves under this branch; 
  • a brief description of its functionality;
  • the name and email address of the person making the application; and,
  • any supplementary information considered necessary to support the application.

Approval requirements: Applications for new branches can be approved by the review group as specified above, unless specified otherwise under Namespace Structure for the immediately preceding branch or NSS root.

3.4. Namespace Lifecycle

Namespace-structure


Figure 1: Namespace Lifecycle


As shown in Figure 1, a MEF project may choose NSS but making sure they are not in collision (See Managing Collisions) with any existing (experimental or allocated) values. An application for NSS, with <NSS-root>, excluding value of <xid>, should be made during or after the first CfCB to give enough time for members to comment on the requested namespace.

The NSS is allocated after successful review. The allocation is considered temporary till the document is approved for publication as a MEF Standard. The approval of the NSS is conditional on the approval of the Letter Ballot document (that contains the module requesting the namespace). If the document does not get published, the namespace is available for future use.

3.5. Namespace Structure

All URNs have the following syntax (phrases enclosed in quotes are REQUIRED):

<URN> ::= "urn":" <NID> ":" <NSS-Root> ": "<NSS-restoftree>"

The number of levels in the tree after "urn:<NID>" is at least 2.

In this version of the document the focus is on the trees for yang-nss and lso-nss. The trees for other <NSS-Root> are expected to be specified in future versions of this document.

In the current version, a table is used to describe the role of each string in NSS as well as example values for the string. When more description and constraints is needed for each string in the NSS, then the layout of this section might be changed with separate sub-section for each string in the NSS.

3.5.1. yang-nss

Each NSS in yang-nss identifies a specific Yang module in a published MEF Standard.

Table 4 and Figure 2 below provide explanation of an example hierarchy showing up to 4 additional level although an application may require less or more. Rows highlighted in Yellow indicate that a project team decides on the required values for <NSS-restoftree>. Some examples are included to help understand the use of a string in the NSS.

Number in Figure 2

Level in URN TreeStringComments
1Scheme"urn"
2Authority, NID"mef"
3Namespaces Specific String Root, NSS-Root

"yang"

Project to choose one of the <NSS-Root> listed in Table of NameSpace Specific String Roots


4Module Namee.g., "mef-global:"

other examples could be mef-device-global, mef-controller-global

Namespace Request Application to include suitable string

Table 4: NSS when <NSS-Root> is yang
mef-ns-structure1
Figure 2: Example Namespace Structure

3.5.2. lso-nss

Each NSS under "urn:mef:lso:spec" identifies a set of specification schema files for use with MEF LSO APIs, for a specific product or service specification, i.e. the schema file defining the schema for that product or service, plus any further referenced files.  The URN identifies the version of the set as a whole, and the specific API function for which the schema can be used.  Note that the same version applies to all API functions for a given product or service.

Table 5 and Figure 3 below provide explanation of an example hierarchy showing 8 levels, although an application may require less or more. Rows highlighted in Yellow indicate that a project team decides on the required values for <NSS-restoftree>. Some examples are included to help understand the use of a string in the NSS.

Number in Figure 3

Level in URN TreeStringComments
1Scheme"urn"
2Authority, NID"mef"
3Namespaces Specific String Root, NSS-Root

"lso"

Project to choose one of the <NSS-Root> listed in Table of NameSpace Specific String Roots

4Branch under "lso""spec"This is the only branch currently defined.
5LSO Interface Reference Point<irp>One of "cantata", "sonata", "sonata-cantata", "allegro", "interlude", "interlude-allegro", "legato", "presto", "adagio".
6Product or Service Namee.g., "access-eline:"

Other examples could be "epl:", "subscriber-ethernet-uni:", "evp-lan:", "internet-access:", etc

Namespace Request Application to include suitable string

7Versione.g. "v1.0.0"

Semantic version number of the corresponding schema.

Namespace Request Application to include the appropriate number, which should be incremented according to SemVer 2.0.0.

Note that the version applies to the set containing the schema for the product or service named, as well as all other schema objects referenced from it.
8API Functione.g. "poq"

Other examples could be "quote", "order", "inventory".

If a single schema is use for all functions, the API Function should be "all"

Namespace Request Application to include suitable string

Table 5: NSS when <NSS-Root> is lso (spec branch)

New branches beyond those specified above under the "lso:" NSS Root and under "lso:spec" must be approved by a technical motion of the relevant MEF Working Committee.  Changes to the structure above must also be approved by a technical motion of the relevant MEF Working Committee.  However, the specific branch and leaf names following the structure above, including new branches at levels 6 and higher, can be approved by the review group as specified under Namespace Application Review.

mef-oas-ns-structure


Figure 3: Example Namespace Structure

Each NSS under "urn:mef:lso:security" is related to security.

Table 6 below provide explanation of an example hierarchy showing 7 levels, although an application may require less or more. Rows highlighted in Yellow indicate that a project team decides on the required values for <NSS-restoftree>. Some examples are included to help understand the use of a string in the NSS.

Number in Figure 3

Level in URN TreeStringComments
1Scheme"urn"
2Authority, NID"mef"
3Namespaces Specific String Root, NSS-Root

"lso"

Project to choose one of the <NSS-Root> listed in Table of NameSpace Specific String Roots

4Branch under "lso""security"This is the branch for security.
5Security Protocol

e.g., "oidc:" for authorization using OpenID Connect (OIDC)


6Attribute fielde.g. "acr":  for the acr_value attribute in an OIDC request


7Field Valuee.g. "ca" Client Authentication or "sca" Strong Client Authentication  


Table 6: NSS when <NSS-Root> is lso (security branch)

New branches beyond those specified above under the "lso:" NSS Root and under "lso:security" must be approved by a technical motion of the relevant MEF Working Committee.  Changes to the structure above must also be approved by a technical motion of the relevant MEF Working Committee.  However, the specific branch and leaf names following the structure above, including new branches at levels 5 and higher, can be approved by the review group as specified under Namespace Application Review.

The table below shows the assigned branches under "urn:mef:lso:"

URN BranchDescriptionTentative/FinalReference (MEF Project/Standard using namespace)

Additional Information

urn:mef:lso:specFor identifying product, service and resource specificationsFinalThis document
urn:mef:lso:spec:sonataFor identifying product specifications used at Sonata (only)FinalThis document
urn:mef:lso:spec:cantataFor identifying product specifications used at Cantata (only)FinalThis document
urn:mef:lso:spec:sonata-cantataFor identifying product specifications used at Sonata and CantataFinalThis document
urn:mef:lso:spec:interludeFor identifying service specifications used at Interlude (only)FinalThis document
urn:mef:lso:spec:allegroFor identifying service specifications used at Allegro (only)FinalThis document
urn:mef:lso:spec:interlude-allegroFor identifying service specifications used at Interlude and AllegroFinalThis document
urn:mef:lso:spec:legatoFor identifying service specifications used at LegatoFinalThis document
urn:mef:lso:spec:prestoFor identifying resource specifications used at PrestoFinalThis document
urn:mef:lso:spec:adagioFor identifying resource specifications used at AdagioFinalThis document
urn:mef:lso:securityFor securityFinalThis document
urn:mef:lso:security:oidcFor authorization using OpenID Connect (OIDC)FinalMEF W128
urn:mef:lso:security:oidc:acrFor acr_value attributes in an OIDC requestFinalMEF W128
Table 7: Assigned urn:me:lso branches

3.5.3. xid-nss

This is available for use as experimental NSS for work that is not published. Note also that namespaces under xid-nss is limited in scope to that work. While IETF has RFC 6963 with a different <NID> for example URNs, MEF is using a method of different <NSS-Root>.

NumberLevelNamespace StringComments
1Scheme"urn"
2Authority, NID"mef"
3Namespaces Specific String Root, NSS-Root

"xid"

Project to choose one of the <NSS-Root> listed in Table of NameSpace Specific String Roots


4

This document is not specifying the possible <NSS-restoftree> for this <NSS-Root>

5


Table 8: NSS when <NSS-Root> is xid

3.5.4. <other>-nss

NumberLevelNamespace StringComments
1Scheme"urn"
2Authority, NID"mef"
3Namespaces Specific String Root, NSS-Root

"<other>"

Project to choose one of the <NSS-Root> listed in Table of NameSpace Specific String Roots


4

Tree to be specified in future versions of this document

5


Table 9: NSS when <NSS-Root> is <other>

An example use of NSS is shown in ExampleuseofNamespace for usage of tree structure in a request for 'mef-global'

4. Managing Collisions

Any Project team may define a given NSS value based on one of the <NSS-Root> before making a Request for Namespace but should be careful to make sure it does not collide with any assigned NSS values listed in Table 3. These values should also not be used in a production network and should be used for test purposes only until MEF approves the publication of the corresponding MEF Standard.

5. Updates to MANN

For new NSSs, section AssignedURN in this document will be updated by one of the Co-Chairs of the relevant MEF Working Committees according to the lifecycle shown in Figure 1.

For new NSS Roots or new branches, section NameSpace Specific String Root or section Namespace Structure (respectively) will be updated by one of the Co-Chairs of the relevant MEF Working Committee once the approval requirements as specified above have been met.

In the case of discrepancy between this Wiki page and a published module in a MEF Standard then the assigned values is as per published MEF Standard. 

6. References

  1. IETF RFC 7818, URN Namespace for MEF Documents, by Mahesh Jethanandani, March 2016, Copyright © 2016 IETF Trust and the persons identified as the
       document authors. All rights reserved. https://datatracker.ietf.org/doc/html/rfc7818
  2. IETF RFC 2141, URN Syntax, by Ryan Moats, May 1997, https://datatracker.ietf.org/doc/html/rfc2141
  3. IETF RFC 2396, Uniform Resource Identifiers (URI): Generic Syntax, by Tim Berners-Lee and Larry M Masinter and Roy T. Fielding, August 1998, Copyright © The Internet Society (1998). All Rights Reserved. https://datatracker.ietf.org/doc/html/rfc2396
  4. IETF RFC 3406, Uniform Resource Names (URN) Namespace Definition Mechanisms, by Dirk-Willem van Gulik and Patrik Fältström and Leslie Daigle and Dr. Renato Iannella, October 2002, Copyright © The Internet Society (2002). All Rights Reserved. https://datatracker.ietf.org/doc/html/rfc3406
  5. IETF RFC 6963, A Uniform Resource Name (URN) Namespace for Examples, by Peter Saint-Andre, May 2013, Copyright © 2013 IETF Trust and the persons identified as the
       document authors. All rights reserved. https://datatracker.ietf.org/doc/html/rfc6963

Appendix Α:  Example use of Namespace

Example Request is for Namespace String: "mef-global". The following figure illustrates where the namespace request is used in the YANG module.

  • The name of the module "mef-global" is the namespace string being requested. 
  • The full path of the namespace is then specified in line number 2, and it specifies where in the tree the namespace string is going to be used. 
  • A brief description of where the namespace is going to be used is specified in the description section of this module and could be cut and pasted in the request for namespace application.
module mef-global {
  namespace "urn:mef:yang:mef-global";
  prefix mef-global;
  import ietf-yang-types {
    prefix yang;
  }
  import ietf-inet-types {
    prefix inet;
  }
  import mef-types {
    prefix mef-types;
  }
  organization "MEF Forum";
  contact
    "Web URL: http://mef.net/
     E-mail:  namespace@mef.net
     Postal:  MEF Forum
              12130 Millenium Dr Suite 2-182
              Los Angeles, CA 90094
              U.S.A.
     Phone:   +1 310-642-2800
     Fax:     +1 310-642-2808";
  description
    "This module defines the shared profiles and related lists
     to be referenced when configuring MEF Services. Service
     Providers are expected to define a set of profiles for
     Service Attributes associated with Bandwidth, L2CP, CoS,
     and so on. These are expected to be slowly changing as
     they reflect the Products offered by the Service Providers
     to their Subscribers.