MEF Assigned Names and Numbers (MANN)
© MEF Forum 2023. 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.
1. Terminology
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:
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: November 2023
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
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.
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.
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.
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.
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:"
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>.
3.5.4. <other>-nss
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
- 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 - IETF RFC 2141, URN Syntax, by Ryan Moats, May 1997, https://datatracker.ietf.org/doc/html/rfc2141
- 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
- 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
- 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-167 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.