YANG Module Naming Guidelines

Module naming guidelines:

IEEE 802.1 is using a format like: ieee802-dot1q-bridge.yang. Where “ieee802” is used for the committee, then a dash, then “dot1” followed by the name of the dot1 base specification (in this case “q”), then a dash, followed by a unique module name. The grammar below captures the guidelines.

<module-name> ::= <ieee-committee> <dash> <ieee-working-group> <dash> <unique-name>

<dash> ::= –
<letter> ::= [a-z A-Z 0-9 -]

<ieee-committee> ::= ieee [802 | 1588 | 1914]
<ieee-working-group> ::= <ieee802-working-group> | <ieee1588-working-group>| <ieee1914-working-group>
<ieee802-working-group> ::= <no-working-group> | <dot1-specific> | <dot3-specific>

<no-working-group> ::= NULL

<dot1-specific> ::= dot1 <dot1-baseSpec>
<dot1-baseSpec> ::= NULL | <letter> {<letter>}

<dot3-specific> ::= ethernet

<unique-name> ::= <letter> {<letter>}

Examples:

802.1 example: ieee802-dot1q-bridge.yang
<ieee-committee> == ieee802
<dot1-specific> == dot1
<dot1-baseSpec> == q
<unique-name> == bridge

802.3 example: ieee802-ethernet-interface-half-duplex.yang
<ieee-committee> == ieee802
<dot3-specific> == ethernet
<unique-name> == interface-half-duplex

Other Guidelines:

For IEEE 802.1, the module name should not include -Rev or project amendment letters.

Suggestions:

Guidance from IEEE 802.11 on their preference is requested (if there is YANG to be done).

Sidebar