diff options
Diffstat (limited to 'interface-definitions')
14 files changed, 376 insertions, 157 deletions
| diff --git a/interface-definitions/firewall.xml.in b/interface-definitions/firewall.xml.in index 773e86f00..673461036 100644 --- a/interface-definitions/firewall.xml.in +++ b/interface-definitions/firewall.xml.in @@ -711,6 +711,7 @@              </properties>              <children>                #include <include/firewall/action-accept-drop-reject.xml.i> +              #include <include/firewall/log.xml.i>                #include <include/firewall/rule-log-level.xml.i>              </children>            </node> @@ -720,6 +721,7 @@              </properties>              <children>                #include <include/firewall/action-accept-drop-reject.xml.i> +              #include <include/firewall/log.xml.i>                #include <include/firewall/rule-log-level.xml.i>              </children>            </node> @@ -729,6 +731,7 @@              </properties>              <children>                #include <include/firewall/action-accept-drop-reject.xml.i> +              #include <include/firewall/log.xml.i>                #include <include/firewall/rule-log-level.xml.i>              </children>            </node> diff --git a/interface-definitions/include/accel-ppp/radius-additions-rate-limit.xml.i b/interface-definitions/include/accel-ppp/radius-additions-rate-limit.xml.i index c9ad0d3d4..b8dbe73b2 100644 --- a/interface-definitions/include/accel-ppp/radius-additions-rate-limit.xml.i +++ b/interface-definitions/include/accel-ppp/radius-additions-rate-limit.xml.i @@ -6,18 +6,24 @@    <children>      <leafNode name="attribute">        <properties> -        <help>Specifies which RADIUS attribute contains rate information. (default is Filter-Id)</help> +        <help>RADIUS attribute that contains rate information</help>        </properties>        <defaultValue>Filter-Id</defaultValue>      </leafNode>      <leafNode name="vendor">        <properties> -        <help>Specifies the vendor dictionary. (dictionary needs to be in /usr/share/accel-ppp/radius)</help> +        <help>Vendor dictionary</help> +        <completionHelp> +          <list>alcatel cisco microsoft mikrotik</list> +        </completionHelp> +        <constraint> +          <validator name="accel-radius-dictionary" /> +        </constraint>        </properties>      </leafNode>      <leafNode name="enable">        <properties> -        <help>Enables Bandwidth shaping via RADIUS</help> +        <help>Enable bandwidth shaping via RADIUS</help>          <valueless />        </properties>      </leafNode> diff --git a/interface-definitions/include/ospf/high-low-label-value.xml.i b/interface-definitions/include/ospf/high-low-label-value.xml.i new file mode 100644 index 000000000..4b6779922 --- /dev/null +++ b/interface-definitions/include/ospf/high-low-label-value.xml.i @@ -0,0 +1,26 @@ +<!-- include start from ospf/high-low-label-value.xml.i --> +<leafNode name="low-label-value"> +  <properties> +    <help>MPLS label lower bound</help> +    <valueHelp> +      <format>u32:100-1048575</format> +      <description>Label value</description> +    </valueHelp> +    <constraint> +      <validator name="numeric" argument="--range 16-1048575"/> +    </constraint> +  </properties> +</leafNode> +<leafNode name="high-label-value"> +  <properties> +    <help>MPLS label upper bound</help> +    <valueHelp> +      <format>u32:100-1048575</format> +      <description>Label value</description> +    </valueHelp> +    <constraint> +      <validator name="numeric" argument="--range 16-1048575"/> +    </constraint> +  </properties> +</leafNode> +<!-- include end --> diff --git a/interface-definitions/include/ospf/protocol-common-config.xml.i b/interface-definitions/include/ospf/protocol-common-config.xml.i index 791bbc0f8..78c168641 100644 --- a/interface-definitions/include/ospf/protocol-common-config.xml.i +++ b/interface-definitions/include/ospf/protocol-common-config.xml.i @@ -621,6 +621,86 @@      </constraint>    </properties>  </leafNode> +<node name="segment-routing"> +  <properties> +    <help>Segment-Routing (SPRING) settings</help> +  </properties> +  <children> +    <node name="global-block"> +      <properties> +        <help>Segment Routing Global Block label range</help> +      </properties> +      <children> +        #include <include/ospf/high-low-label-value.xml.i> +      </children> +    </node> +    <node name="local-block"> +      <properties> +        <help>Segment Routing Local Block label range</help> +      </properties> +      <children> +        #include <include/ospf/high-low-label-value.xml.i> +      </children> +    </node> +    <leafNode name="maximum-label-depth"> +      <properties> +        <help>Maximum MPLS labels allowed for this router</help> +        <valueHelp> +          <format>u32:1-16</format> +            <description>MPLS label depth</description> +        </valueHelp> +        <constraint> +          <validator name="numeric" argument="--range 1-16"/> +        </constraint> +      </properties> +    </leafNode> +    <tagNode name="prefix"> +      <properties> +        <help>Static IPv4 prefix segment/label mapping</help> +        <valueHelp> +          <format>ipv4net</format> +          <description>IPv4 prefix segment</description> +        </valueHelp> +        <constraint> +          <validator name="ipv4-prefix"/> +        </constraint> +      </properties> +      <children> +        <node name="index"> +          <properties> +            <help>Specify the index value of prefix segment/label ID</help> +          </properties> +          <children> +            <leafNode name="value"> +              <properties> +                <help>Specify the index value of prefix segment/label ID</help> +                <valueHelp> +                  <format>u32:0-65535</format> +                    <description>The index segment/label ID value</description> +                </valueHelp> +                <constraint> +                  <validator name="numeric" argument="--range 0-65535"/> +                </constraint> +              </properties> +            </leafNode> +            <leafNode name="explicit-null"> +              <properties> +                <help>Request upstream neighbor to replace segment/label with explicit null label</help> +                <valueless/> +              </properties> +            </leafNode> +            <leafNode name="no-php-flag"> +              <properties> +                <help>Do not request penultimate hop popping for segment/label</help> +                <valueless/> +              </properties> +            </leafNode> +          </children> +        </node> +      </children> +    </tagNode> +  </children> +</node>  <node name="redistribute">    <properties>      <help>Redistribute information from another routing protocol</help> diff --git a/interface-definitions/include/policy/community-clear.xml.i b/interface-definitions/include/policy/community-clear.xml.i new file mode 100644 index 000000000..0fd57cdf0 --- /dev/null +++ b/interface-definitions/include/policy/community-clear.xml.i @@ -0,0 +1,8 @@ +<!-- include start from policy/community-clear.xml.i --> +<leafNode name="none"> +  <properties> +    <help>Completely remove communities attribute from a prefix</help> +    <valueless/> +  </properties> +</leafNode> +<!-- include end --> diff --git a/interface-definitions/include/policy/community-value-list.xml.i b/interface-definitions/include/policy/community-value-list.xml.i new file mode 100644 index 000000000..8c665c5f0 --- /dev/null +++ b/interface-definitions/include/policy/community-value-list.xml.i @@ -0,0 +1,90 @@ +<!-- include start from policy/community-value-list.xml.i --> +<completionHelp> +    <list> +      local-as +      no-advertise +      no-export +      internet +      graceful-shutdown +      accept-own +      route-filter-translated-v4 +      route-filter-v4 +      route-filter-translated-v6 +      route-filter-v6 +      llgr-stale +      no-llgr +      accept-own-nexthop +      blackhole +      no-peer +    </list> +</completionHelp> +<valueHelp> +    <format><AS:VAL></format> +    <description>Community number in <0-65535:0-65535> format</description> +</valueHelp> +<valueHelp> +    <format>local-as</format> +    <description>Well-known communities value NO_EXPORT_SUBCONFED 0xFFFFFF03</description> +</valueHelp> +<valueHelp> +    <format>no-advertise</format> +    <description>Well-known communities value NO_ADVERTISE 0xFFFFFF02</description> +</valueHelp> +<valueHelp> +    <format>no-export</format> +    <description>Well-known communities value NO_EXPORT 0xFFFFFF01</description> +</valueHelp> +<valueHelp> +    <format>internet</format> +    <description>Well-known communities value 0</description> +</valueHelp> +<valueHelp> +    <format>graceful-shutdown</format> +    <description>Well-known communities value GRACEFUL_SHUTDOWN 0xFFFF0000</description> +</valueHelp> +<valueHelp> +    <format>accept-own</format> +    <description>Well-known communities value ACCEPT_OWN 0xFFFF0001</description> +</valueHelp> +<valueHelp> +    <format>route-filter-translated-v4</format> +    <description>Well-known communities value ROUTE_FILTER_TRANSLATED_v4 0xFFFF0002</description> +</valueHelp> +<valueHelp> +    <format>route-filter-v4</format> +    <description>Well-known communities value ROUTE_FILTER_v4 0xFFFF0003</description> +</valueHelp> +<valueHelp> +    <format>route-filter-translated-v6</format> +    <description>Well-known communities value ROUTE_FILTER_TRANSLATED_v6 0xFFFF0004</description> +</valueHelp> +<valueHelp> +    <format>route-filter-v6</format> +    <description>Well-known communities value ROUTE_FILTER_v6 0xFFFF0005</description> +</valueHelp> +<valueHelp> +    <format>llgr-stale</format> +    <description>Well-known communities value LLGR_STALE 0xFFFF0006</description> +</valueHelp> +<valueHelp> +    <format>no-llgr</format> +    <description>Well-known communities value NO_LLGR 0xFFFF0007</description> +</valueHelp> +<valueHelp> +    <format>accept-own-nexthop</format> +    <description>Well-known communities value accept-own-nexthop 0xFFFF0008</description> +</valueHelp> +<valueHelp> +    <format>blackhole</format> +    <description>Well-known communities value BLACKHOLE 0xFFFF029A</description> +</valueHelp> +<valueHelp> +    <format>no-peer</format> +    <description>Well-known communities value NOPEER 0xFFFFFF04</description> +</valueHelp> +<multi/> +<constraint> +    <regex>local-as|no-advertise|no-export|internet|graceful-shutdown|accept-own|route-filter-translated-v4|route-filter-v4|route-filter-translated-v6|route-filter-v6|llgr-stale|no-llgr|accept-own-nexthop|blackhole|no-peer</regex> +    <validator name="bgp-regular-community"/> +</constraint> +        <!-- include end --> diff --git a/interface-definitions/include/policy/extended-community-value-list.xml.i b/interface-definitions/include/policy/extended-community-value-list.xml.i new file mode 100644 index 000000000..c79f78c67 --- /dev/null +++ b/interface-definitions/include/policy/extended-community-value-list.xml.i @@ -0,0 +1,15 @@ +<!-- include start from policy/community-value-list.xml.i --> +<valueHelp> +  <format>ASN:NN</format> +  <description>based on autonomous system number in format <0-65535:0-4294967295></description> +</valueHelp> +<valueHelp> +  <format>IP:NN</format> +  <description>Based on a router-id IP address in format <IP:0-65535></description> +</valueHelp> +<constraint> +  <validator name="bgp-extended-community"/> +</constraint> +<constraintErrorMessage>Should be in form: ASN:NN or IPADDR:NN where ASN is autonomous system number</constraintErrorMessage> +<multi/> +        <!-- include end --> diff --git a/interface-definitions/include/policy/large-community-value-list.xml.i b/interface-definitions/include/policy/large-community-value-list.xml.i new file mode 100644 index 000000000..33b1f13a2 --- /dev/null +++ b/interface-definitions/include/policy/large-community-value-list.xml.i @@ -0,0 +1,10 @@ +<!-- include start from policy/community-value-list.xml.i --> +<valueHelp> +    <description>Community in format <0-4294967295:0-4294967295:0-4294967295></description> +    <format><GA:LDP1:LDP2></format> +</valueHelp> +<multi/> +<constraint> +    <validator name="bgp-large-community"/> +</constraint> +        <!-- include end --> diff --git a/interface-definitions/include/policy/route-common-rule-ipv6.xml.i b/interface-definitions/include/policy/route-common-rule-ipv6.xml.i index cfeba1a6c..662206336 100644 --- a/interface-definitions/include/policy/route-common-rule-ipv6.xml.i +++ b/interface-definitions/include/policy/route-common-rule-ipv6.xml.i @@ -198,6 +198,10 @@            <validator name="numeric" argument="--range 1-200"/>            <regex>(main)</regex>          </constraint> +        <completionHelp> +          <list>main</list> +          <path>protocols static table</path> +        </completionHelp>        </properties>      </leafNode>      <leafNode name="tcp-mss"> diff --git a/interface-definitions/include/policy/route-common-rule.xml.i b/interface-definitions/include/policy/route-common-rule.xml.i index 5a17dbc95..35fccca50 100644 --- a/interface-definitions/include/policy/route-common-rule.xml.i +++ b/interface-definitions/include/policy/route-common-rule.xml.i @@ -198,6 +198,10 @@            <validator name="numeric" argument="--range 1-200"/>            <regex>(main)</regex>          </constraint> +        <completionHelp> +          <list>main</list> +          <path>protocols static table</path> +        </completionHelp>        </properties>      </leafNode>      <leafNode name="tcp-mss"> diff --git a/interface-definitions/include/version/policy-version.xml.i b/interface-definitions/include/version/policy-version.xml.i index 426173a19..89bde20c7 100644 --- a/interface-definitions/include/version/policy-version.xml.i +++ b/interface-definitions/include/version/policy-version.xml.i @@ -1,3 +1,3 @@  <!-- include start from include/version/policy-version.xml.i --> -<syntaxVersion component='policy' version='3'></syntaxVersion> +<syntaxVersion component='policy' version='4'></syntaxVersion>  <!-- include end --> diff --git a/interface-definitions/policy.xml.in b/interface-definitions/policy.xml.in index e794c4b90..6c60276d5 100644 --- a/interface-definitions/policy.xml.in +++ b/interface-definitions/policy.xml.in @@ -1118,67 +1118,120 @@                        <valueless/>                      </properties>                    </leafNode> -                  <node name="comm-list"> +                  <node name="community">                      <properties> -                      <help>BGP communities matching a community-list</help> +                      <help>BGP community attribute</help>                      </properties>                      <children> -                      <leafNode name="comm-list"> +                      <leafNode name="add"> +                        <properties> +                          <help>Add communities to a prefix</help> +                          #include <include/policy/community-value-list.xml.i> +                        </properties> +                      </leafNode> +                      <leafNode name="replace"> +                        <properties> +                          <help>Set communities for a prefix</help> +                          #include <include/policy/community-value-list.xml.i> +                        </properties> +                      </leafNode> +                      #include <include/policy/community-clear.xml.i> +                      <leafNode name="delete">                          <properties> -                          <help>BGP communities with a community-list</help> +                          <help>Remove communities defined in a list from a prefix</help>                            <completionHelp>                              <path>policy community-list</path>                            </completionHelp>                            <valueHelp> +                            <description>Community-list</description>                              <format>txt</format> -                            <description>BGP communities with a community-list</description>                            </valueHelp>                          </properties>                        </leafNode> +                    </children> +                  </node> +                  <node name="large-community"> +                    <properties> +                      <help>BGP large community attribute</help> +                    </properties> +                    <children> +                      <leafNode name="add"> +                        <properties> +                          <help>Add large communities to a prefix ;</help> +                          #include <include/policy/large-community-value-list.xml.i> +                        </properties> +                      </leafNode> +                      <leafNode name="replace"> +                        <properties> +                          <help>Set large communities for a prefix</help> +                          #include <include/policy/large-community-value-list.xml.i> +                        </properties> +                      </leafNode> +                      #include <include/policy/community-clear.xml.i>                        <leafNode name="delete">                          <properties> -                          <help>Delete BGP communities matching the community-list</help> -                          <valueless/> +                          <help>Remove communities defined in a list from a prefix</help> +                          <completionHelp> +                            <path>policy large-community-list</path> +                          </completionHelp> +                          <valueHelp> +                            <description>Community-list</description> +                            <format>txt</format> +                          </valueHelp>                          </properties>                        </leafNode>                      </children>                    </node> -                  <leafNode name="community"> +                  <node name="extcommunity">                      <properties> -                      <help>Border Gateway Protocl (BGP) community attribute</help> -                      <completionHelp> -                        <list>local-AS no-advertise no-export internet additive none</list> -                      </completionHelp> -                      <valueHelp> -                        <format><aa:nn></format> -                        <description>Community number in AA:NN format</description> -                      </valueHelp> -                      <valueHelp> -                        <format>local-AS</format> -                        <description>Well-known communities value NO_EXPORT_SUBCONFED 0xFFFFFF03</description> -                      </valueHelp> -                      <valueHelp> -                        <format>no-advertise</format> -                        <description>Well-known communities value NO_ADVERTISE 0xFFFFFF02</description> -                      </valueHelp> -                      <valueHelp> -                        <format>no-export</format> -                        <description>Well-known communities value NO_EXPORT 0xFFFFFF01</description> -                      </valueHelp> -                      <valueHelp> -                        <format>internet</format> -                        <description>Well-known communities value 0</description> -                      </valueHelp> -                      <valueHelp> -                        <format>additive</format> -                        <description>New value is appended to the existing value</description> -                      </valueHelp> -                      <valueHelp> -                        <format>none</format> -                        <description>No community attribute</description> -                      </valueHelp> +                      <help>BGP extended community attribute</help>                      </properties> -                  </leafNode> +                    <children> +                      <leafNode name="bandwidth"> +                        <properties> +                          <help>Bandwidth value in Mbps</help> +                          <completionHelp> +                            <list>cumulative num-multipaths</list> +                          </completionHelp> +                          <valueHelp> +                            <format>u32:1-25600</format> +                            <description>Bandwidth value in Mbps</description> +                          </valueHelp> +                          <valueHelp> +                            <format>cumulative</format> +                            <description>Cumulative bandwidth of all multipaths (outbound-only)</description> +                          </valueHelp> +                          <valueHelp> +                            <format>num-multipaths</format> +                            <description>Internally computed bandwidth based on number of multipaths (outbound-only)</description> +                          </valueHelp> +                          <constraint> +                            <validator name="numeric" argument="--range 1-25600"/> +                            <regex>(cumulative|num-multipaths)</regex> +                          </constraint> +                        </properties> +                      </leafNode> +                      <leafNode name="bandwidth-non-transitive"> +                        <properties> +                          <help>The link bandwidth extended community is encoded as non-transitive</help> +                          <valueless/> +                        </properties> +                      </leafNode> +                      <leafNode name="rt"> +                        <properties> +                          <help>Set route target value</help> +                          #include <include/policy/extended-community-value-list.xml.i> +                        </properties> +                      </leafNode> +                      <leafNode name="soo"> +                        <properties> +                          <help>Set Site of Origin value</help> +                          #include <include/policy/extended-community-value-list.xml.i> +                        </properties> +                      </leafNode> +                      #include <include/policy/community-clear.xml.i> +                    </children> +                  </node>                    <leafNode name="distance">                      <properties>                        <help>Locally significant administrative distance</help> @@ -1229,71 +1282,6 @@                        </node>                      </children>                    </node> -                  <node name="extcommunity"> -                    <properties> -                      <help>BGP extended community attribute</help> -                    </properties> -                    <children> -                      <leafNode name="bandwidth"> -                        <properties> -                          <help>Bandwidth value in Mbps</help> -                          <completionHelp> -                            <list>cumulative num-multipaths</list> -                          </completionHelp> -                          <valueHelp> -                            <format>u32:1-25600</format> -                            <description>Bandwidth value in Mbps</description> -                          </valueHelp> -                          <valueHelp> -                            <format>cumulative</format> -                            <description>Cumulative bandwidth of all multipaths (outbound-only)</description> -                          </valueHelp> -                          <valueHelp> -                            <format>num-multipaths</format> -                            <description>Internally computed bandwidth based on number of multipaths (outbound-only)</description> -                          </valueHelp> -                          <constraint> -                            <validator name="numeric" argument="--range 1-25600"/> -                            <regex>(cumulative|num-multipaths)</regex> -                          </constraint> -                        </properties> -                      </leafNode> -                      <leafNode name="rt"> -                        <properties> -                          <help>Set route target value</help> -                          <valueHelp> -                            <format>ASN:NN</format> -                            <description>based on autonomous system number</description> -                          </valueHelp> -                          <valueHelp> -                            <format>IP:NN</format> -                            <description>Based on a router-id IP address</description> -                          </valueHelp> -                          <constraint> -                            <regex>(((\b(?:(?:2(?:[0-4][0-9]|5[0-5])|[0-1]?[0-9]?[0-9])\.){3}(?:(?:2([0-4][0-9]|5[0-5])|[0-1]?[0-9]?[0-9]))\b)|(\d+)):(\d+) ?)+</regex> -                          </constraint> -                          <constraintErrorMessage>Should be in form: ASN:NN or IPADDR:NN where ASN is autonomous system number</constraintErrorMessage> -                        </properties> -                      </leafNode> -                      <leafNode name="soo"> -                        <properties> -                          <help>Set Site of Origin value</help> -                          <valueHelp> -                            <format>ASN:NN</format> -                            <description>based on autonomous system number</description> -                          </valueHelp> -                          <valueHelp> -                            <format>IP:NN</format> -                            <description>Based on a router-id IP address</description> -                          </valueHelp> -                          <constraint> -                            <regex>((?:[0-9]{1,3}\.){3}[0-9]{1,3}|\d+):\d+</regex> -                          </constraint> -                          <constraintErrorMessage>Should be in form: ASN:NN or IPADDR:NN where ASN is autonomous system number</constraintErrorMessage> -                        </properties> -                      </leafNode> -                    </children> -                  </node>                    <leafNode name="ip-next-hop">                      <properties>                        <help>Nexthop IP address</help> @@ -1368,30 +1356,6 @@                        </leafNode>                      </children>                    </node> -                  <leafNode name="large-community"> -                    <properties> -                      <help>Set BGP large community value</help> -                      <valueHelp> -                        <format>txt</format> -                        <description>ASN:nn:mm BGP large community</description> -                      </valueHelp> -                      <completionHelp> -                        <path>policy large-community-list</path> -                      </completionHelp> -                    </properties> -                  </leafNode> -                  <leafNode name="large-comm-list-delete"> -                    <properties> -                      <help>Delete BGP communities matching the large community-list</help> -                      <completionHelp> -                        <path>policy large-community-list</path> -                      </completionHelp> -                      <valueHelp> -                        <format>txt</format> -                        <description>BGP large community-list</description> -                      </valueHelp> -                    </properties> -                  </leafNode>                    <leafNode name="local-preference">                      <properties>                        <help>BGP local preference attribute</help> diff --git a/interface-definitions/ssh.xml.in b/interface-definitions/ssh.xml.in index 126183162..f3c731fe5 100644 --- a/interface-definitions/ssh.xml.in +++ b/interface-definitions/ssh.xml.in @@ -206,6 +206,37 @@              </properties>              <defaultValue>22</defaultValue>            </leafNode> +          <node name="rekey"> +            <properties> +              <help>SSH session rekey limit</help> +            </properties> +            <children> +              <leafNode name="data"> +                <properties> +                  <help>Threshold data in megabytes</help> +                  <valueHelp> +                    <format>u32:1-65535</format> +                    <description>Megabytes</description> +                  </valueHelp> +                  <constraint> +                    <validator name="numeric" argument="--range 1-65535"/> +                  </constraint> +                </properties> +              </leafNode> +              <leafNode name="time"> +                <properties> +                  <help>Threshold time in minutes</help> +                  <valueHelp> +                    <format>u32:1-65535</format> +                    <description>Minutes</description> +                  </valueHelp> +                  <constraint> +                    <validator name="numeric" argument="--range 1-65535"/> +                  </constraint> +                </properties> +              </leafNode> +            </children> +          </node>            <leafNode name="client-keepalive-interval">              <properties>                <help>Enable transmission of keepalives from server to client</help> diff --git a/interface-definitions/vpn-l2tp.xml.in b/interface-definitions/vpn-l2tp.xml.in index fd70a76dc..cb5900e0d 100644 --- a/interface-definitions/vpn-l2tp.xml.in +++ b/interface-definitions/vpn-l2tp.xml.in @@ -238,29 +238,7 @@                            </leafNode>                          </children>                        </node> -                      <node name="rate-limit"> -                        <properties> -                          <help>Upload/Download speed limits</help> -                        </properties> -                        <children> -                          <leafNode name="attribute"> -                            <properties> -                              <help>Specifies which radius attribute contains rate information</help> -                            </properties> -                          </leafNode> -                          <leafNode name="vendor"> -                            <properties> -                              <help>Specifies the vendor dictionary. (dictionary needs to be in /usr/share/accel-ppp/radius)</help> -                            </properties> -                          </leafNode> -                          <leafNode name="enable"> -                            <properties> -                              <help>Enables Bandwidth shaping via RADIUS</help> -                              <valueless /> -                            </properties> -                          </leafNode> -                        </children> -                      </node> +                      #include <include/accel-ppp/radius-additions-rate-limit.xml.i>                      </children>                    </node>                  </children> | 
