# Regarding submode in yang

**URL:** <https://dmap-community.ductus.global/t/regarding-submode-in-yang/2873>\
**Category:** YANG\
**Created:** [January 13, 2020, 9:36am UTC](https://dmap-community.ductus.global/t/regarding-submode-in-yang/2873 "2020-01-13T09:36:07Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![chiya](https://avatars.discourse-cdn.com/v4/letter/c/3ab097/32.png) [@chiya](https://dmap-community.ductus.global/u/chiya)\
**Post date:** [January 13, 2020, 9:36am UTC](https://dmap-community.ductus.global/t/regarding-submode-in-yang/2873/1 "2020-01-13T09:36:07Z")

</div>

```
 container media-address {
          description
            "Voice Media IP Address Range";
          when "../type = 'voip'";
          tailf:cli-incomplete-no;
          container range {
            description
              "Address range";
            tailf:cli-add-mode;
            tailf:cli-mode-name "cfg-media-addr-range";
            tailf:cli-incomplete-command;
            container ipv4 {
              tailf:cli-drop-node-name;
              tailf:cli-compact-syntax;
              tailf:cli-sequence-commands;
              tailf:cli-hide-in-submode;
              tailf:cli-flatten-container;
              leaf startipv4address {
                description
                "Enter start ip address";
                tailf:cli-drop-node-name;
                tailf:cli-incomplete-command;
                type inet:ipv4-address;
               }
               leaf endipv4address {
                 description
                   "Enter end ip address";
                 tailf:cli-drop-node-name;
                 type inet:ipv4-address;
                }
              uses config-port-range-grouping;
            }
            container ipv6 {
              tailf:cli-drop-node-name;
              tailf:cli-compact-syntax;
              tailf:cli-sequence-commands;
              tailf:cli-hide-in-submode;
              tailf:cli-flatten-container;
              leaf startipv6address {
                description
                  "Start IPv6 address";
                tailf:cli-drop-node-name;
                type inet:ipv6-address;
               }
              leaf endipv6address {
                description
                  "End IPv6 address";
                tailf:cli-drop-node-name;
                type inet:ipv6-address;
              }
            }
            container port-range {
              description
        "media address port range";
      tailf:alt-name "port-range";
      tailf:cli-sequence-commands;
      tailf:cli-compact-syntax;
      presence true;
      leaf minport{
        description
          "Start media address extended port";
        tailf:cli-drop-node-name;
        tailf:cli-incomplete-command;
        must ". mod 2 = 0" {
          error-message "min_port value must be even";
        }
        type uint16 {
          range "5500..65498";
        }
      }
           }
          }

```

In confd when trying to configure it is displaying CLI like below,

```
ubuntu-xenial(conf-voi-serv)# media-address range ?
Possible completions:
  IPv4 address IPv6 address port-range

```

I want port-range to display only when it is entered in sub-mode like below,

```
ubuntu-xenial(conf-voi-serv)# media-address range
ubuntu-xenial(conf-voi-serv)# media-address range ?
Possible completions:
  IPv4 address IPv6 address --> Here port-range is not present which is expected o/p
ubuntu-xenial(conf-voi-serv)# media-address range 1.1.1.1 2.2.2.2
ubuntu-xenial(cfg-media-addr-range)# ?
Possible completions:
  port-range

```

How to achieve the same ?

---

<div class="post-metadata">

**Author:** ![chiya](https://avatars.discourse-cdn.com/v4/letter/c/3ab097/32.png) [@chiya](https://dmap-community.ductus.global/u/chiya)\
**Post date:** [January 20, 2020, 6:05am UTC](https://dmap-community.ductus.global/t/regarding-submode-in-yang/2873/2 "2020-01-20T06:05:17Z")

</div>

Can someone pls reply on this query ??

---

<div class="post-metadata">

**Author:** ![cohult](https://yyz2.discourse-cdn.com/flex010/user_avatar/dmap-community.ductus.global/cohult/32/221_2.png) [@cohult](https://dmap-community.ductus.global/u/cohult)\
**Post date:** [January 20, 2020, 9:26am UTC](https://dmap-community.ductus.global/t/regarding-submode-in-yang/2873/3 "2020-01-20T09:26:13Z")

</div>

Perhaps something like

```java
container range {
  presence "";
...
  container port-range {
    tailf:display-when "../../range";
...

```

---

<div class="post-metadata">

**Author:** ![chiya](https://avatars.discourse-cdn.com/v4/letter/c/3ab097/32.png) [@chiya](https://dmap-community.ductus.global/u/chiya)\
**Post date:** [January 20, 2020, 9:54am UTC](https://dmap-community.ductus.global/t/regarding-submode-in-yang/2873/4 "2020-01-20T09:54:18Z")

</div>

Thanks Cohult . This I had achieved somehow .

Can some one pls reply on this topic

> [@Two containers with same name but visible at different time](http://dmap-community.ductus.global/t/two-containers-with-same-name-but-visible-at-different-time/2881):
>
> Hi Team, I am writing model for one CLI which looks like below, Router(conf-voi-serv)#media-address range 1.1.1.1 2.2.2.2 port-range ? \<8000-48198\> minimum port number Router(conf-voi-serv)#media-address range 1.1.1.1 2.2.2.2 port-range 8000 ? \<8000-48198\> maximum port number Router(conf-voi-serv)#$ss range 1.1.1.1 2.2.2.2 port-range 8000 8002 ? Router(conf-voi-serv)#$ss range 1.1.1.1 2.2.2.2 port-range 8000 8002 Router(cfg-media-addr-range)#? Media Address Range configuration com…

I am stuck in this .
