<?xml version="1.0"?>
<interfaceDefinition>
  <node name="reset">
    <children>
      <node name="bgp">
        <properties>
          <help>Border Gateway Protocol (BGP) information</help>
        </properties>
        <children>
          <leafNode name="all">
            <properties>
              <help>Clear all peers</help>
            </properties>
            <command>vtysh -c "clear bgp *"</command>
          </leafNode>
          #include <include/bgp/reset-bgp-afi-common.xml.i>
          #include <include/bgp/reset-bgp-peer-group.xml.i>
          <tagNode name="prefix">
            <properties>
              <help>Clear bestpath and re-advertise</help>
              <completionHelp>
                <list>&lt;x.x.x.x/x&gt;</list>
              </completionHelp>
            </properties>
            <command>${vyos_op_scripts_dir}/vtysh_wrapper.sh $@</command>
          </tagNode>
          <node name="ipv4">
            <properties>
              <help>IPv4 Address Family</help>
            </properties>
            <children>
              <leafNode name="all">
                <properties>
                  <help>Clear all peers</help>
                </properties>
                <command>vtysh -c "clear bgp ipv4 *"</command>
              </leafNode>
              #include <include/bgp/reset-bgp-afi-common.xml.i>
              #include <include/bgp/reset-bgp-peer-group.xml.i>
            </children>
          </node>
          <tagNode name="ipv4">
            <properties>
              <help>IPv4 neighbor to clear</help>
              <completionHelp>
                <script>${vyos_completion_dir}/list_bgp_neighbors.sh --ipv4</script>
              </completionHelp>
            </properties>
            <command>${vyos_op_scripts_dir}/vtysh_wrapper.sh $@</command>
            <children>
              #include <include/bgp/reset-bgp-neighbor-options.xml.i>
            </children>
          </tagNode>
          <node name="ipv6">
            <properties>
              <help>IPv6 Address Family</help>
            </properties>
            <children>
              <leafNode name="all">
                <properties>
                  <help>Clear all peers</help>
                </properties>
                <command>vtysh -c "clear bgp ipv6 *"</command>
              </leafNode>
              #include <include/bgp/reset-bgp-afi-common.xml.i>
              #include <include/bgp/reset-bgp-peer-group.xml.i>
            </children>
          </node>
          <tagNode name="ipv6">
            <properties>
              <help>IPv6 neighbor to clear</help>
              <completionHelp>
                <script>${vyos_completion_dir}/list_bgp_neighbors.sh --ipv6</script>
              </completionHelp>
            </properties>
            <command>${vyos_op_scripts_dir}/vtysh_wrapper.sh $@</command>
            <children>
              #include <include/bgp/reset-bgp-neighbor-options.xml.i>
            </children>
          </tagNode>
          <node name="l2vpn">
            <properties>
              <help>Layer 2 Virtual Private Network Address Family</help>
            </properties>
            <children>
              <node name="evpn">
                <properties>
                  <help>Ethernet Virtual Private Network</help>
                </properties>
                <children>
                  <leafNode name="all">
                    <properties>
                      <help>Clear all peers</help>
                    </properties>
                    <command>vtysh -c "clear bgp l2vpn evpn *"</command>
                  </leafNode>
                  #include <include/bgp/reset-bgp-afi-common.xml.i>
                  #include <include/bgp/reset-bgp-peer-group.xml.i>
                </children>
              </node>
              <tagNode name="evpn">
                <properties>
                  <help>BGP IPv4/IPv6 neighbor to clear</help>
                  <completionHelp>
                    <script>${vyos_completion_dir}/list_bgp_neighbors.sh --both</script>
                  </completionHelp>
                </properties>
                <command>${vyos_op_scripts_dir}/vtysh_wrapper.sh $@</command>
                <children>
                  #include <include/bgp/reset-bgp-neighbor-options.xml.i>
                </children>
              </tagNode>
            </children>
          </node>
          <tagNode name="vrf">
            <properties>
              <help>Virtual Routing and Forwarding (VRF)</help>
              <completionHelp>
                <path>vrf name</path>
              </completionHelp>
            </properties>
            <children>
              <node name="node.tag">
                <properties>
                  <help>IPv4/IPv6 neighbor to clear</help>
                  <completionHelp>
                    <script>${vyos_completion_dir}/list_bgp_neighbors.sh --both --vrf ${COMP_WORDS[3]}</script>
                  </completionHelp>
                </properties>
                <command>${vyos_op_scripts_dir}/vtysh_wrapper.sh $@</command>
                <children>
                  #include <include/bgp/reset-bgp-neighbor-options.xml.i>
                </children>
              </node>
              <leafNode name="all">
                <properties>
                  <help>Clear all peers</help>
                </properties>
                <command>vtysh -c "clear bgp vrf $4 *"</command>
              </leafNode>
              #include <include/bgp/reset-bgp-afi-common.xml.i>
              #include <include/bgp/reset-bgp-peer-group-vrf.xml.i>
              <tagNode name="prefix">
                <properties>
                  <help>Clear bestpath and re-advertise</help>
                  <completionHelp>
                    <list>&lt;x.x.x.x/x&gt;</list>
                  </completionHelp>
                </properties>
                <command>${vyos_op_scripts_dir}/vtysh_wrapper.sh $@</command>
              </tagNode>
              <node name="ipv4">
                <properties>
                  <help>IPv4 Address Family</help>
                </properties>
                <children>
                  <leafNode name="all">
                    <properties>
                      <help>Clear all peers</help>
                    </properties>
                    <command>vtysh -c "clear bgp vrf $4 ipv4 *"</command>
                  </leafNode>
                  #include <include/bgp/reset-bgp-afi-common.xml.i>
                  #include <include/bgp/reset-bgp-peer-group-vrf.xml.i>
                </children>
              </node>
              <tagNode name="ipv4">
                <properties>
                  <help>IPv4 neighbor to clear</help>
                  <completionHelp>
                    <script>${vyos_completion_dir}/list_bgp_neighbors.sh --ipv4 --vrf ${COMP_WORDS[3]}</script>
                  </completionHelp>
                </properties>
                <command>${vyos_op_scripts_dir}/vtysh_wrapper.sh $@</command>
                <children>
                  #include <include/bgp/reset-bgp-neighbor-options.xml.i>
                </children>
              </tagNode>
              <node name="ipv6">
                <properties>
                  <help>IPv6 Address Family</help>
                </properties>
                <children>
                  <leafNode name="all">
                    <properties>
                      <help>Clear all peers</help>
                    </properties>
                    <command>vtysh -c "clear bgp vrf $4 ipv6 *"</command>
                  </leafNode>
                  #include <include/bgp/reset-bgp-afi-common.xml.i>
                  #include <include/bgp/reset-bgp-peer-group-vrf.xml.i>
                </children>
              </node>
              <tagNode name="ipv6">
                <properties>
                  <help>IPv6 neighbor to clear</help>
                  <completionHelp>
                    <script>${vyos_completion_dir}/list_bgp_neighbors.sh --ipv6 --vrf ${COMP_WORDS[3]}</script>
                  </completionHelp>
                </properties>
                <command>${vyos_op_scripts_dir}/vtysh_wrapper.sh $@</command>
                <children>
                  #include <include/bgp/reset-bgp-neighbor-options.xml.i>
                </children>
              </tagNode>
              <node name="l2vpn">
                <properties>
                  <help>Layer 2 Virtual Private Network Address Family</help>
                </properties>
                <children>
                  <node name="evpn">
                    <properties>
                      <help>Ethernet Virtual Private Network</help>
                    </properties>
                    <children>
                      <leafNode name="all">
                        <properties>
                          <help>Clear all peers</help>
                        </properties>
                        <command>vtysh -c "clear bgp vrf $4 l2vpn evpn *"</command>
                      </leafNode>
                      #include <include/bgp/reset-bgp-afi-common.xml.i>
                      #include <include/bgp/reset-bgp-peer-group-vrf.xml.i>
                    </children>
                  </node>
                  <tagNode name="evpn">
                    <properties>
                      <help>BGP IPv4/IPv6 neighbor to clear</help>
                      <completionHelp>
                        <script>${vyos_completion_dir}/list_bgp_neighbors.sh --both --vrf ${COMP_WORDS[3]}</script>
                      </completionHelp>
                    </properties>
                    <command>${vyos_op_scripts_dir}/vtysh_wrapper.sh $@</command>
                    <children>
                      #include <include/bgp/reset-bgp-neighbor-options.xml.i>
                    </children>
                  </tagNode>
                </children>
              </node>
            </children>
          </tagNode>
        </children>
      </node>
      <tagNode name="bgp">
        <properties>
          <help>BGP IPv4/IPv6 neighbor to clear</help>
          <completionHelp>
            <script>${vyos_completion_dir}/list_bgp_neighbors.sh --both</script>
          </completionHelp>
        </properties>
        <command>${vyos_op_scripts_dir}/vtysh_wrapper.sh $@</command>
        <children>
          #include <include/bgp/reset-bgp-neighbor-options.xml.i>
        </children>
      </tagNode>
    </children>
  </node>
</interfaceDefinition>