<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.39 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-busi-nmop-simap-rfc8795-applicability-02" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="RFC8795 for SIMAP">Applicability of RFC8795 YANG data model to SIMAP</title>
    <seriesInfo name="Internet-Draft" value="draft-busi-nmop-simap-rfc8795-applicability-02"/>
    <author initials="I." surname="Busi" fullname="Italo Busi">
      <organization>Huawei</organization>
      <address>
        <email>italo.busi@huawei.com</email>
      </address>
    </author>
    <author initials="A." surname="Guo" fullname="Aihua Guo">
      <organization>Futurewei Technologies</organization>
      <address>
        <email>aihuaguo.ietf@gmail.com</email>
      </address>
    </author>
    <author initials="V. P." surname="Beeram" fullname="Vishnu Pavan Beeram">
      <organization>HPE</organization>
      <address>
        <email>vbeeram@hpe.com</email>
      </address>
    </author>
    <author initials="S." surname="Belotti" fullname="Sergio Belotti">
      <organization>Nokia</organization>
      <address>
        <email>sergio.belotti@nokia.com</email>
      </address>
    </author>
    <author initials="T." surname="Saad" fullname="Tarek Saad">
      <organization>Cisco Systems Inc.</organization>
      <address>
        <email>tsaad.net@gmail.com</email>
      </address>
    </author>
    <author initials="J." surname="Meuric" fullname="Julien Meuric">
      <organization>Orange</organization>
      <address>
        <email>julien.meuric@orange.com</email>
      </address>
    </author>
    <date year="2026" month="July" day="06"/>
    <area>Operations and Management</area>
    <workgroup>Network Management Operations</workgroup>
    <keyword>next generation</keyword>
    <keyword>unicorn</keyword>
    <keyword>sparkling distributed ledger</keyword>
    <abstract>
      <?line 56?>

<t>This document analyses the applicability of the RFC 8795 YANG data model to
Service &amp; Infrastructure Maps (SIMAP) and in particular analysis which requirements
can be supported by the existing YANG data model defined in RFC 8795.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://italobusi.github.io/simap-yang/draft-busi-nmop-simap-rfc8795-applicability.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-busi-nmop-simap-rfc8795-applicability/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Network Management Operations Working Group mailing list (<eref target="mailto:nmop@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/nmop/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/nmop/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/italobusi/simap-yang"/>.</t>
    </note>
  </front>
  <middle>
    <?line 62?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The concept of Service &amp; Infrastructure Maps (SIMAP) is being defined in <xref target="I-D.ietf-nmop-simap-concept"/>
together with a set of SIMP requirements and use cases.</t>
      <t>SIMAP is defined in <xref target="I-D.ietf-nmop-simap-concept"/>, as:</t>
      <ul empty="true">
        <li>
          <t>SIMAP is a data model that provides a topological view of the operator's networks and services, including how it is connected to other models (e.g., inventory) and external data sources (e.g., observability data, and operational knowledge). This model represents a multi-layered topology and offers mechanisms to navigate amongst layers and correlate between them. This includes layers from physical topology to service topology. This model is applicable to multiple domains (access, core, data center, etc.) and technologies (Optical, IP, etc.).</t>
        </li>
      </ul>
      <t>It is worth noting that the YANG data model in <xref target="RFC8795"/> defines a topology model which:</t>
      <ul spacing="normal">
        <li>
          <t>represents a multi-layered topology;</t>
        </li>
        <li>
          <t>offers mechanisms to navigate amongst layers and correlate between them;</t>
        </li>
        <li>
          <t>is applicable to multiple domains (access, core, data center, etc.) and technologies (Optical, IP, etc.).</t>
        </li>
      </ul>
      <t><xref target="I-D.ietf-teas-te-topology-profiles"/> clarifies that</t>
      <t>It is therefore worthwhile analyzing the applicability of the YANG data model in <xref target="RFC8795"/> to meet the SIMAP requirements and identify any gaps
that need to be addressed before starting the work on new YANG data models to meet the SIMAP requirements, as outlined in <xref target="I-D.ietf-nmop-simap-concept"/>.</t>
      <t>Understanding the degree of standardization and identifying potential gaps are crucial for supporting
the SIMAP applications while ensuring multi-vendor interoperability and compatibility with other applications
which can run on top of the same network controller.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <!-- {::boilerplate bcp14-tagged} -->

<t>TODO Conventions and Definitions</t>
    </section>
    <section anchor="gap-analysis">
      <name>Gap Analysis</name>
      <section anchor="bidirectional-links">
        <name>Bidirectional Links</name>
        <t>Bidirectional links can be modelled as two unidirectional links, one for each direction,
terminated on the same two termination points, as described in <xref section="4.4.5" sectionFormat="of" target="RFC8345"/>.</t>
        <t>It is worth noting that a bidirectional link can be unambiguously distinguished from two unidirectional links between the same two nodes since the two unidirectional links will be terminated on different termination points, as shown in <xref target="fig-bidir-link"/>.</t>
        <figure anchor="fig-bidir-link">
          <name>Difference between one bidirectional link and two unidirectional links</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="464" width="528" viewBox="0 0 528 464" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,32 L 8,192" fill="none" stroke="black"/>
                <path d="M 8,240 L 8,432" fill="none" stroke="black"/>
                <path d="M 24,48 L 24,176" fill="none" stroke="black"/>
                <path d="M 24,256 L 24,416" fill="none" stroke="black"/>
                <path d="M 128,80 L 128,144" fill="none" stroke="black"/>
                <path d="M 128,288 L 128,320" fill="none" stroke="black"/>
                <path d="M 128,352 L 128,384" fill="none" stroke="black"/>
                <path d="M 136,48 L 136,72" fill="none" stroke="black"/>
                <path d="M 136,152 L 136,176" fill="none" stroke="black"/>
                <path d="M 136,256 L 136,280" fill="none" stroke="black"/>
                <path d="M 136,328 L 136,344" fill="none" stroke="black"/>
                <path d="M 136,392 L 136,416" fill="none" stroke="black"/>
                <path d="M 152,32 L 152,72" fill="none" stroke="black"/>
                <path d="M 152,152 L 152,192" fill="none" stroke="black"/>
                <path d="M 152,240 L 152,280" fill="none" stroke="black"/>
                <path d="M 152,328 L 152,344" fill="none" stroke="black"/>
                <path d="M 152,392 L 152,432" fill="none" stroke="black"/>
                <path d="M 160,80 L 160,144" fill="none" stroke="black"/>
                <path d="M 160,288 L 160,320" fill="none" stroke="black"/>
                <path d="M 160,352 L 160,384" fill="none" stroke="black"/>
                <path d="M 368,80 L 368,144" fill="none" stroke="black"/>
                <path d="M 368,288 L 368,320" fill="none" stroke="black"/>
                <path d="M 368,352 L 368,384" fill="none" stroke="black"/>
                <path d="M 376,32 L 376,72" fill="none" stroke="black"/>
                <path d="M 376,152 L 376,192" fill="none" stroke="black"/>
                <path d="M 376,240 L 376,280" fill="none" stroke="black"/>
                <path d="M 376,328 L 376,344" fill="none" stroke="black"/>
                <path d="M 376,392 L 376,432" fill="none" stroke="black"/>
                <path d="M 392,48 L 392,72" fill="none" stroke="black"/>
                <path d="M 392,152 L 392,176" fill="none" stroke="black"/>
                <path d="M 392,256 L 392,280" fill="none" stroke="black"/>
                <path d="M 392,328 L 392,344" fill="none" stroke="black"/>
                <path d="M 392,392 L 392,416" fill="none" stroke="black"/>
                <path d="M 400,80 L 400,144" fill="none" stroke="black"/>
                <path d="M 400,288 L 400,320" fill="none" stroke="black"/>
                <path d="M 400,352 L 400,384" fill="none" stroke="black"/>
                <path d="M 504,48 L 504,176" fill="none" stroke="black"/>
                <path d="M 504,256 L 504,416" fill="none" stroke="black"/>
                <path d="M 520,32 L 520,192" fill="none" stroke="black"/>
                <path d="M 520,240 L 520,432" fill="none" stroke="black"/>
                <path d="M 8,32 L 152,32" fill="none" stroke="black"/>
                <path d="M 376,32 L 520,32" fill="none" stroke="black"/>
                <path d="M 24,48 L 136,48" fill="none" stroke="black"/>
                <path d="M 392,48 L 504,48" fill="none" stroke="black"/>
                <path d="M 128,80 L 160,80" fill="none" stroke="black"/>
                <path d="M 368,80 L 400,80" fill="none" stroke="black"/>
                <path d="M 160,96 L 360,96" fill="none" stroke="black"/>
                <path d="M 168,128 L 368,128" fill="none" stroke="black"/>
                <path d="M 128,144 L 160,144" fill="none" stroke="black"/>
                <path d="M 368,144 L 400,144" fill="none" stroke="black"/>
                <path d="M 24,176 L 136,176" fill="none" stroke="black"/>
                <path d="M 392,176 L 504,176" fill="none" stroke="black"/>
                <path d="M 8,192 L 152,192" fill="none" stroke="black"/>
                <path d="M 376,192 L 520,192" fill="none" stroke="black"/>
                <path d="M 8,240 L 152,240" fill="none" stroke="black"/>
                <path d="M 376,240 L 520,240" fill="none" stroke="black"/>
                <path d="M 24,256 L 136,256" fill="none" stroke="black"/>
                <path d="M 392,256 L 504,256" fill="none" stroke="black"/>
                <path d="M 128,288 L 160,288" fill="none" stroke="black"/>
                <path d="M 368,288 L 400,288" fill="none" stroke="black"/>
                <path d="M 160,304 L 360,304" fill="none" stroke="black"/>
                <path d="M 128,320 L 160,320" fill="none" stroke="black"/>
                <path d="M 368,320 L 400,320" fill="none" stroke="black"/>
                <path d="M 128,352 L 160,352" fill="none" stroke="black"/>
                <path d="M 368,352 L 400,352" fill="none" stroke="black"/>
                <path d="M 168,368 L 368,368" fill="none" stroke="black"/>
                <path d="M 128,384 L 160,384" fill="none" stroke="black"/>
                <path d="M 368,384 L 400,384" fill="none" stroke="black"/>
                <path d="M 24,416 L 136,416" fill="none" stroke="black"/>
                <path d="M 392,416 L 504,416" fill="none" stroke="black"/>
                <path d="M 8,432 L 152,432" fill="none" stroke="black"/>
                <path d="M 376,432 L 520,432" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="368,304 356,298.4 356,309.6" fill="black" transform="rotate(0,360,304)"/>
                <polygon class="arrowhead" points="368,96 356,90.4 356,101.6" fill="black" transform="rotate(0,360,96)"/>
                <polygon class="arrowhead" points="176,368 164,362.4 164,373.6" fill="black" transform="rotate(180,168,368)"/>
                <polygon class="arrowhead" points="176,128 164,122.4 164,133.6" fill="black" transform="rotate(180,168,128)"/>
                <g class="text">
                  <text x="80" y="116">A</text>
                  <text x="144" y="116">TP1</text>
                  <text x="384" y="116">TP2</text>
                  <text x="448" y="116">B</text>
                  <text x="144" y="308">TP3</text>
                  <text x="384" y="308">TP4</text>
                  <text x="80" y="340">C</text>
                  <text x="448" y="340">D</text>
                  <text x="144" y="372">TP4</text>
                  <text x="384" y="372">TP5</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
    +-----------------+                           +-----------------+
    | +-------------+ |                           | +-------------+ |
    | |             | |                           | |             | |
    | |            +---+                         +---+            | |
    | |            |   +------------------------>|   |            | |
    | |      A     |TP1|                         |TP2|     B      | |
    | |            |   |<------------------------+   |            | |
    | |            +---+                         +---+            | |
    | |             | |                           | |             | |
    | +-------------+ |                           | +-------------+ |
    +-----------------+                           +-----------------+


    +-----------------+                           +-----------------+
    | +-------------+ |                           | +-------------+ |
    | |             | |                           | |             | |
    | |            +---+                         +---+            | |
    | |            |TP3+------------------------>|TP4|            | |
    | |            +---+                         +---+            | |
    | |      C      | |                           | |      D      | |
    | |            +---+                         +---+            | |
    | |            |TP4|<------------------------+TP5|            | |
    | |            +---+                         +---+            | |
    | |             | |                           | |             | |
    | +-------------+ |                           | +-------------+ |
    +-----------------+                           +-----------------+
]]></artwork>
          </artset>
        </figure>
      </section>
      <section anchor="multipoint-links">
        <name>Multipoint Links</name>
        <t>Multipoint links can be modelled as pseudonodes, as described in <xref section="4.4.5" sectionFormat="of" target="RFC8345"/>.</t>
        <t>The type of multipoint link (e.g., point-to-multipoint or multipoint-to-multipoint, as defined in <xref target="I-D.ietf-nmop-simap-concept"/>) and the role of the termination points in the link (e.g., source, destination, hub, spoke, as defined in <xref target="I-D.ietf-nmop-simap-concept"/>) can be unambiguously understood from:</t>
        <ul spacing="normal">
          <li>
            <t>the links entering to or departing from the termination points of the pseudonode, and</t>
          </li>
          <li>
            <t>the 'is-allowed' attribute of the connectivity matrix of the pseudonode, as defined in <xref target="RFC8795"/>.</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>Note: some examples for multipoint links are described in <xref section="2.5" sectionFormat="of" target="I-D.ietf-teas-te-topology-profiles"/>. More examples can be provided in future versions of this document.</t>
          </li>
        </ul>
      </section>
      <section anchor="links-and-nodes-down-in-topology">
        <name>Links and nodes down in topology</name>
        <t><xref target="RFC8795"/> defines the 'oper-status' attribute for nodes, links and termination points, therefore allowing to report links and nodes down in the topology, and to unambiguously distinguishing between nodes and links which are up or down.</t>
      </section>
      <section anchor="multi-layer-topologies">
        <name>Multi-Layer Topologies</name>
        <t>As outlined in <xref section="2" sectionFormat="of" target="I-D.ietf-nmop-simap-concept"/>:</t>
        <ul empty="true">
          <li>
            <t><xref target="RFC8345"/> is flexible and can support both the same network topology instance with multiple layers (e.g., Layer 2 and Layer 3) or separate network topology instances with supporting relations between them (e.g., separate Layer 2 and Layer 3). Therefore, multiple topology layers can be grouped into the same network topology instance, if solution requires.</t>
          </li>
        </ul>
        <t><xref target="RFC8795"/> augments <xref target="RFC8345"/> and therefore provide the same flexibility.</t>
        <t>As described in <xref section="3" sectionFormat="of" target="I-D.havel-nmop-simap-yang"/>:</t>
        <ul empty="true">
          <li>
            <ul spacing="normal">
              <li>
                <t>Layering relationships are expressed solely through the supporting
construct, without additional semantics such as underlay, primary,
backup, load-sharing, path, sequential, or parallel roles.</t>
              </li>
            </ul>
          </li>
        </ul>
        <t>This issue was taken into account when designing the YANG data model in <xref target="RFC8795"/> and the 'underlay' relationship has been properly defined to support navigation between overlay and underlay layers, as described in <xref section="2.3" sectionFormat="of" target="I-D.ietf-teas-te-topology-profiles"/>.</t>
        <t>Some guidelines on how to unambiguously use the supporting relationship, defined in <xref target="RFC8345"/>, and the 'underlay' relationship defined in <xref target="RFC8795"/>, have been clarified in <xref section="2.3.1" sectionFormat="of" target="I-D.ietf-teas-te-topology-profiles"/>.</t>
        <t>As outlined in REQ-BIDIR of <xref target="I-D.ietf-nmop-simap-concept"/>, a bidirectional link can be supported by two unidirectional links in the lower layer. For example, a Ethernet (bidirectional) link can be supported by two physical layer links associated with two unidirectional fibers.</t>
        <t>This relationship can be modelled using the link 'underlay' relationship, as shown in <xref target="fig-unidir-supporting-bidir-link"/>:</t>
        <figure anchor="fig-unidir-supporting-bidir-link">
          <name>Example of two unidirectional links supporting one bidirectional link</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="464" width="528" viewBox="0 0 528 464" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,32 L 8,192" fill="none" stroke="black"/>
                <path d="M 8,240 L 8,432" fill="none" stroke="black"/>
                <path d="M 24,48 L 24,176" fill="none" stroke="black"/>
                <path d="M 24,256 L 24,416" fill="none" stroke="black"/>
                <path d="M 128,80 L 128,144" fill="none" stroke="black"/>
                <path d="M 128,288 L 128,320" fill="none" stroke="black"/>
                <path d="M 128,352 L 128,384" fill="none" stroke="black"/>
                <path d="M 136,48 L 136,72" fill="none" stroke="black"/>
                <path d="M 136,152 L 136,176" fill="none" stroke="black"/>
                <path d="M 136,256 L 136,280" fill="none" stroke="black"/>
                <path d="M 136,328 L 136,344" fill="none" stroke="black"/>
                <path d="M 136,392 L 136,416" fill="none" stroke="black"/>
                <path d="M 152,32 L 152,72" fill="none" stroke="black"/>
                <path d="M 152,152 L 152,192" fill="none" stroke="black"/>
                <path d="M 152,240 L 152,280" fill="none" stroke="black"/>
                <path d="M 152,328 L 152,344" fill="none" stroke="black"/>
                <path d="M 152,392 L 152,432" fill="none" stroke="black"/>
                <path d="M 160,80 L 160,144" fill="none" stroke="black"/>
                <path d="M 160,288 L 160,320" fill="none" stroke="black"/>
                <path d="M 160,352 L 160,384" fill="none" stroke="black"/>
                <path d="M 224,96 L 224,120" fill="none" stroke="black"/>
                <path d="M 224,136 L 224,296" fill="none" stroke="black"/>
                <path d="M 304,128 L 304,296" fill="none" stroke="black"/>
                <path d="M 304,312 L 304,360" fill="none" stroke="black"/>
                <path d="M 368,80 L 368,144" fill="none" stroke="black"/>
                <path d="M 368,288 L 368,320" fill="none" stroke="black"/>
                <path d="M 368,352 L 368,384" fill="none" stroke="black"/>
                <path d="M 376,32 L 376,72" fill="none" stroke="black"/>
                <path d="M 376,152 L 376,192" fill="none" stroke="black"/>
                <path d="M 376,240 L 376,280" fill="none" stroke="black"/>
                <path d="M 376,328 L 376,344" fill="none" stroke="black"/>
                <path d="M 376,392 L 376,432" fill="none" stroke="black"/>
                <path d="M 392,48 L 392,72" fill="none" stroke="black"/>
                <path d="M 392,152 L 392,176" fill="none" stroke="black"/>
                <path d="M 392,256 L 392,280" fill="none" stroke="black"/>
                <path d="M 392,328 L 392,344" fill="none" stroke="black"/>
                <path d="M 392,392 L 392,416" fill="none" stroke="black"/>
                <path d="M 400,80 L 400,144" fill="none" stroke="black"/>
                <path d="M 400,288 L 400,320" fill="none" stroke="black"/>
                <path d="M 400,352 L 400,384" fill="none" stroke="black"/>
                <path d="M 504,48 L 504,176" fill="none" stroke="black"/>
                <path d="M 504,256 L 504,416" fill="none" stroke="black"/>
                <path d="M 520,32 L 520,192" fill="none" stroke="black"/>
                <path d="M 520,240 L 520,432" fill="none" stroke="black"/>
                <path d="M 8,32 L 152,32" fill="none" stroke="black"/>
                <path d="M 376,32 L 520,32" fill="none" stroke="black"/>
                <path d="M 24,48 L 136,48" fill="none" stroke="black"/>
                <path d="M 392,48 L 504,48" fill="none" stroke="black"/>
                <path d="M 128,80 L 160,80" fill="none" stroke="black"/>
                <path d="M 368,80 L 400,80" fill="none" stroke="black"/>
                <path d="M 160,96 L 360,96" fill="none" stroke="black"/>
                <path d="M 168,128 L 368,128" fill="none" stroke="black"/>
                <path d="M 128,144 L 160,144" fill="none" stroke="black"/>
                <path d="M 368,144 L 400,144" fill="none" stroke="black"/>
                <path d="M 24,176 L 136,176" fill="none" stroke="black"/>
                <path d="M 392,176 L 504,176" fill="none" stroke="black"/>
                <path d="M 8,192 L 152,192" fill="none" stroke="black"/>
                <path d="M 376,192 L 520,192" fill="none" stroke="black"/>
                <path d="M 8,240 L 152,240" fill="none" stroke="black"/>
                <path d="M 376,240 L 520,240" fill="none" stroke="black"/>
                <path d="M 24,256 L 136,256" fill="none" stroke="black"/>
                <path d="M 392,256 L 504,256" fill="none" stroke="black"/>
                <path d="M 128,288 L 160,288" fill="none" stroke="black"/>
                <path d="M 368,288 L 400,288" fill="none" stroke="black"/>
                <path d="M 160,304 L 360,304" fill="none" stroke="black"/>
                <path d="M 128,320 L 160,320" fill="none" stroke="black"/>
                <path d="M 368,320 L 400,320" fill="none" stroke="black"/>
                <path d="M 128,352 L 160,352" fill="none" stroke="black"/>
                <path d="M 368,352 L 400,352" fill="none" stroke="black"/>
                <path d="M 168,368 L 368,368" fill="none" stroke="black"/>
                <path d="M 128,384 L 160,384" fill="none" stroke="black"/>
                <path d="M 368,384 L 400,384" fill="none" stroke="black"/>
                <path d="M 24,416 L 136,416" fill="none" stroke="black"/>
                <path d="M 392,416 L 504,416" fill="none" stroke="black"/>
                <path d="M 8,432 L 152,432" fill="none" stroke="black"/>
                <path d="M 376,432 L 520,432" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="368,304 356,298.4 356,309.6" fill="black" transform="rotate(0,360,304)"/>
                <polygon class="arrowhead" points="368,96 356,90.4 356,101.6" fill="black" transform="rotate(0,360,96)"/>
                <polygon class="arrowhead" points="312,360 300,354.4 300,365.6" fill="black" transform="rotate(90,304,360)"/>
                <polygon class="arrowhead" points="232,296 220,290.4 220,301.6" fill="black" transform="rotate(90,224,296)"/>
                <polygon class="arrowhead" points="176,368 164,362.4 164,373.6" fill="black" transform="rotate(180,168,368)"/>
                <polygon class="arrowhead" points="176,128 164,122.4 164,133.6" fill="black" transform="rotate(180,168,128)"/>
                <g class="text">
                  <text x="80" y="116">A</text>
                  <text x="144" y="116">TP1</text>
                  <text x="384" y="116">TP2</text>
                  <text x="448" y="116">B</text>
                  <text x="144" y="308">TP3</text>
                  <text x="384" y="308">TP4</text>
                  <text x="80" y="340">C</text>
                  <text x="448" y="340">D</text>
                  <text x="144" y="372">TP4</text>
                  <text x="384" y="372">TP5</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
    +-----------------+                           +-----------------+
    | +-------------+ |                           | +-------------+ |
    | |             | |                           | |             | |
    | |            +---+                         +---+            | |
    | |            |   +-------+---------------->|   |            | |
    | |      A     |TP1|       |                 |TP2|     B      | |
    | |            |   |<----------------+-------+   |            | |
    | |            +---+       |         |       +---+            | |
    | |             | |        |         |        | |             | |
    | +-------------+ |        |         |        | +-------------+ |
    +-----------------+        |         |        +-----------------+
                               |         |
                               |         |
    +-----------------+        |         |        +-----------------+
    | +-------------+ |        |         |        | +-------------+ |
    | |             | |        |         |        | |             | |
    | |            +---+       V         |       +---+            | |
    | |            |TP3+------------------------>|TP4|            | |
    | |            +---+                 |       +---+            | |
    | |      C      | |                  |        | |      D      | |
    | |            +---+                 V       +---+            | |
    | |            |TP4|<------------------------+TP5|            | |
    | |            +---+                         +---+            | |
    | |             | |                           | |             | |
    | +-------------+ |                           | +-------------+ |
    +-----------------+                           +-----------------+
]]></artwork>
          </artset>
        </figure>
        <t>Note: in this case each link is supported by a primary path composed by a single link.</t>
        <t>It is worth noting that modelling the bidirectional link is modelled as two unidirectional link instances allows also to unambiguously understand which unidirectional underlay link/path supports which direction (forward or reverse) of the overlay bidirectional link.</t>
      </section>
      <section anchor="multi-domain-links">
        <name>Multi-domain Links</name>
        <t>Multi-domain links can be represented as open-ended links on each topology instance and unambiguously associated as multi-domain links using either the remote node ID / link ID attribute or the inter-domain-plug-id, as described in <xref section="4.2" sectionFormat="of" target="RFC8795"/>.</t>
      </section>
    </section>
    <section anchor="design-considerations">
      <name>Design Considerations</name>
      <t>Reusing existing YANG data models to support multiple applications is a key enabler to achieve multi-vendor interoperability.</t>
      <t>A network controller needs to support multiple applications (some of which may not be defined at the time the network controller is defined) and different applications have different requirements on the data model they use internally to perform their tasks.</t>
      <t>Exposing application-specific data models at the northbound of a network controller appears making the application simpler to implement when it is the only application to be implemented on top of a given controller but results in more complex implementations for network controllers and the applications and increase complexity to achieve multi-vendor interoperability and integration.</t>
      <t><xref target="fig-as-dm"/> shows a case where a controller-A is interfacing an Application-1 through the application-specific data model designed for Application-1 (i.e., AS1-DM) and a controller-B is interfacing another Application-2 through the application-specific data model designed for Application-2 (i.e., AS2-DM).</t>
      <figure anchor="fig-as-dm">
        <name>Concerns with defining application-specific data models</name>
        <artset>
          <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="352" width="528" viewBox="0 0 528 352" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
              <path d="M 24,32 L 24,80" fill="none" stroke="black"/>
              <path d="M 24,240 L 24,272" fill="none" stroke="black"/>
              <path d="M 56,88 L 56,160" fill="none" stroke="black"/>
              <path d="M 88,32 L 88,80" fill="none" stroke="black"/>
              <path d="M 128,160 L 128,240" fill="none" stroke="black"/>
              <path d="M 168,32 L 168,80" fill="none" stroke="black"/>
              <path d="M 232,32 L 232,80" fill="none" stroke="black"/>
              <path d="M 232,240 L 232,272" fill="none" stroke="black"/>
              <path d="M 312,32 L 312,80" fill="none" stroke="black"/>
              <path d="M 312,240 L 312,272" fill="none" stroke="black"/>
              <path d="M 376,32 L 376,80" fill="none" stroke="black"/>
              <path d="M 416,160 L 416,240" fill="none" stroke="black"/>
              <path d="M 456,32 L 456,80" fill="none" stroke="black"/>
              <path d="M 488,88 L 488,160" fill="none" stroke="black"/>
              <path d="M 520,32 L 520,80" fill="none" stroke="black"/>
              <path d="M 520,240 L 520,272" fill="none" stroke="black"/>
              <path d="M 24,32 L 88,32" fill="none" stroke="black"/>
              <path d="M 168,32 L 232,32" fill="none" stroke="black"/>
              <path d="M 312,32 L 376,32" fill="none" stroke="black"/>
              <path d="M 456,32 L 520,32" fill="none" stroke="black"/>
              <path d="M 24,80 L 88,80" fill="none" stroke="black"/>
              <path d="M 168,80 L 232,80" fill="none" stroke="black"/>
              <path d="M 312,80 L 376,80" fill="none" stroke="black"/>
              <path d="M 456,80 L 520,80" fill="none" stroke="black"/>
              <path d="M 56,160 L 128,160" fill="none" stroke="black"/>
              <path d="M 416,160 L 488,160" fill="none" stroke="black"/>
              <path d="M 24,240 L 232,240" fill="none" stroke="black"/>
              <path d="M 312,240 L 520,240" fill="none" stroke="black"/>
              <path d="M 24,272 L 232,272" fill="none" stroke="black"/>
              <path d="M 312,272 L 520,272" fill="none" stroke="black"/>
              <path d="M 340,88 L 416,240" fill="none" stroke="black"/>
              <path d="M 128,240 L 204,88" fill="none" stroke="black"/>
              <polygon class="arrowhead" points="496,88 484,82.4 484,93.6" fill="black" transform="rotate(270,488,88)"/>
              <polygon class="arrowhead" points="348,88 336,82.4 336,93.6" fill="black" transform="rotate(243.43494882292202,340,88)"/>
              <polygon class="arrowhead" points="212,88 200,82.4 200,93.6" fill="black" transform="rotate(296.565051177078,204,88)"/>
              <polygon class="arrowhead" points="64,88 52,82.4 52,93.6" fill="black" transform="rotate(270,56,88)"/>
              <g class="text">
                <text x="56" y="52">APP-1</text>
                <text x="200" y="52">APP-2</text>
                <text x="344" y="52">APP-1</text>
                <text x="488" y="52">APP-2</text>
                <text x="52" y="68">(Core)</text>
                <text x="196" y="68">(Core)</text>
                <text x="340" y="68">(Core)</text>
                <text x="484" y="68">(Core)</text>
                <text x="208" y="132">???</text>
                <text x="336" y="132">???</text>
                <text x="92" y="196">AS1-DM</text>
                <text x="452" y="196">AS2-DM</text>
                <text x="132" y="260">Controller-A</text>
                <text x="420" y="260">Controller-B</text>
                <text x="28" y="308">Notes:</text>
                <text x="8" y="324">-</text>
                <text x="48" y="324">AS1-DM:</text>
                <text x="128" y="324">Application</text>
                <text x="184" y="324">1</text>
                <text x="224" y="324">(APP-1)</text>
                <text x="340" y="324">application-specific</text>
                <text x="444" y="324">data</text>
                <text x="488" y="324">model</text>
                <text x="8" y="340">-</text>
                <text x="48" y="340">AS2-DM:</text>
                <text x="128" y="340">Application</text>
                <text x="184" y="340">1</text>
                <text x="224" y="340">(APP-2)</text>
                <text x="340" y="340">application-specific</text>
                <text x="444" y="340">data</text>
                <text x="488" y="340">model</text>
              </g>
            </svg>
          </artwork>
          <artwork type="ascii-art"><![CDATA[
  +-------+         +-------+         +-------+         +-------+
  | APP-1 |         | APP-2 |         | APP-1 |         | APP-2 |
  |(Core) |         |(Core) |         |(Core) |         |(Core) |
  +-------+         +-------+         +-------+         +-------+
      ^                 ^                 ^                 ^
      |                /                   \                |
      |               / ???             ??? \               |
      |              /                       \              |
      +--------+    /                         \    +--------+
               |   /                           \   |
        AS1-DM |  /                             \  | AS2-DM
               | /                               \ |
               |/                                 \|
  +------------+------------+         +------------+------------+
  |       Controller-A      |         |       Controller-B      |
  +-------------------------+         +-------------------------+

Notes:
- AS1-DM: Application 1 (APP-1) application-specific data model
- AS2-DM: Application 1 (APP-2) application-specific data model
]]></artwork>
        </artset>
      </figure>
      <t>The two application-specific data models can provide the same information but with different formatting. For example, Application-1 may need to model bidirectional links as a single entity (link of type bidirectional) while Application-2 may need to model bidirectional links as two unidirectional links.</t>
      <t>This solution works well as long as Application-1 and controller-A are deployed in different silos than Application-2 and controller-B. Otherwise, operational and implementation issues have to be faces when there is the need to run Application-1 over network controller-B or, Application-2 over network controller-A.</t>
      <t>This would require the operator to negotiate with the vendor and controller vendors customized solutions before integrating a new application or a new controller in the network and increased complexity in the application and network controller implementations.</t>
      <t><xref target="fig-common-dm"/> describes an architecture based on a common and standardized data model to support multi-vendor integration.</t>
      <figure anchor="fig-common-dm">
        <name>Use of a common and standardized data model to support multi-vendor integration</name>
        <artset>
          <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="512" width="552" viewBox="0 0 552 512" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
              <path d="M 16,144 L 16,192" fill="none" stroke="black"/>
              <path d="M 24,32 L 24,80" fill="none" stroke="black"/>
              <path d="M 24,320 L 24,352" fill="none" stroke="black"/>
              <path d="M 56,88 L 56,136" fill="none" stroke="black"/>
              <path d="M 56,200 L 56,240" fill="none" stroke="black"/>
              <path d="M 88,32 L 88,80" fill="none" stroke="black"/>
              <path d="M 96,144 L 96,192" fill="none" stroke="black"/>
              <path d="M 128,240 L 128,320" fill="none" stroke="black"/>
              <path d="M 160,144 L 160,192" fill="none" stroke="black"/>
              <path d="M 168,32 L 168,80" fill="none" stroke="black"/>
              <path d="M 200,88 L 200,136" fill="none" stroke="black"/>
              <path d="M 200,200 L 200,240" fill="none" stroke="black"/>
              <path d="M 232,32 L 232,80" fill="none" stroke="black"/>
              <path d="M 232,320 L 232,352" fill="none" stroke="black"/>
              <path d="M 240,144 L 240,192" fill="none" stroke="black"/>
              <path d="M 304,144 L 304,192" fill="none" stroke="black"/>
              <path d="M 312,32 L 312,80" fill="none" stroke="black"/>
              <path d="M 312,320 L 312,352" fill="none" stroke="black"/>
              <path d="M 344,88 L 344,136" fill="none" stroke="black"/>
              <path d="M 344,200 L 344,240" fill="none" stroke="black"/>
              <path d="M 376,32 L 376,80" fill="none" stroke="black"/>
              <path d="M 384,144 L 384,192" fill="none" stroke="black"/>
              <path d="M 416,240 L 416,320" fill="none" stroke="black"/>
              <path d="M 448,144 L 448,192" fill="none" stroke="black"/>
              <path d="M 456,32 L 456,80" fill="none" stroke="black"/>
              <path d="M 488,88 L 488,136" fill="none" stroke="black"/>
              <path d="M 488,200 L 488,240" fill="none" stroke="black"/>
              <path d="M 520,32 L 520,80" fill="none" stroke="black"/>
              <path d="M 520,320 L 520,352" fill="none" stroke="black"/>
              <path d="M 528,144 L 528,192" fill="none" stroke="black"/>
              <path d="M 24,32 L 88,32" fill="none" stroke="black"/>
              <path d="M 168,32 L 232,32" fill="none" stroke="black"/>
              <path d="M 312,32 L 376,32" fill="none" stroke="black"/>
              <path d="M 456,32 L 520,32" fill="none" stroke="black"/>
              <path d="M 24,80 L 88,80" fill="none" stroke="black"/>
              <path d="M 168,80 L 232,80" fill="none" stroke="black"/>
              <path d="M 312,80 L 376,80" fill="none" stroke="black"/>
              <path d="M 456,80 L 520,80" fill="none" stroke="black"/>
              <path d="M 16,144 L 96,144" fill="none" stroke="black"/>
              <path d="M 160,144 L 240,144" fill="none" stroke="black"/>
              <path d="M 304,144 L 384,144" fill="none" stroke="black"/>
              <path d="M 448,144 L 528,144" fill="none" stroke="black"/>
              <path d="M 16,192 L 96,192" fill="none" stroke="black"/>
              <path d="M 160,192 L 240,192" fill="none" stroke="black"/>
              <path d="M 304,192 L 384,192" fill="none" stroke="black"/>
              <path d="M 448,192 L 528,192" fill="none" stroke="black"/>
              <path d="M 232,224 L 312,224" fill="none" stroke="black"/>
              <path d="M 56,240 L 200,240" fill="none" stroke="black"/>
              <path d="M 344,240 L 488,240" fill="none" stroke="black"/>
              <path d="M 232,272 L 312,272" fill="none" stroke="black"/>
              <path d="M 24,320 L 232,320" fill="none" stroke="black"/>
              <path d="M 312,320 L 520,320" fill="none" stroke="black"/>
              <path d="M 24,352 L 232,352" fill="none" stroke="black"/>
              <path d="M 312,352 L 520,352" fill="none" stroke="black"/>
              <path d="M 212,248 L 224,272" fill="none" stroke="black"/>
              <path d="M 320,224 L 332,248" fill="none" stroke="black"/>
              <path d="M 212,248 L 224,224" fill="none" stroke="black"/>
              <path d="M 320,272 L 332,248" fill="none" stroke="black"/>
              <polygon class="arrowhead" points="496,200 484,194.4 484,205.6" fill="black" transform="rotate(270,488,200)"/>
              <polygon class="arrowhead" points="496,88 484,82.4 484,93.6" fill="black" transform="rotate(270,488,88)"/>
              <polygon class="arrowhead" points="352,200 340,194.4 340,205.6" fill="black" transform="rotate(270,344,200)"/>
              <polygon class="arrowhead" points="352,88 340,82.4 340,93.6" fill="black" transform="rotate(270,344,88)"/>
              <polygon class="arrowhead" points="208,200 196,194.4 196,205.6" fill="black" transform="rotate(270,200,200)"/>
              <polygon class="arrowhead" points="208,88 196,82.4 196,93.6" fill="black" transform="rotate(270,200,88)"/>
              <polygon class="arrowhead" points="64,200 52,194.4 52,205.6" fill="black" transform="rotate(270,56,200)"/>
              <polygon class="arrowhead" points="64,88 52,82.4 52,93.6" fill="black" transform="rotate(270,56,88)"/>
              <g class="text">
                <text x="56" y="52">APP-1</text>
                <text x="200" y="52">APP-2</text>
                <text x="344" y="52">APP-1</text>
                <text x="488" y="52">APP-2</text>
                <text x="52" y="68">(Core)</text>
                <text x="196" y="68">(Core)</text>
                <text x="340" y="68">(Core)</text>
                <text x="484" y="68">(Core)</text>
                <text x="92" y="116">AS1-DM</text>
                <text x="164" y="116">AS2-DM</text>
                <text x="380" y="116">AS1-DM</text>
                <text x="452" y="116">AS2-DM</text>
                <text x="56" y="164">APP-1</text>
                <text x="200" y="164">APP-2</text>
                <text x="344" y="164">APP-1</text>
                <text x="488" y="164">APP-2</text>
                <text x="56" y="180">(DM-Map1)</text>
                <text x="204" y="180">(DM-Map)</text>
                <text x="348" y="180">(DM-Map)</text>
                <text x="488" y="180">(DM-Map2)</text>
                <text x="276" y="244">Common</text>
                <text x="276" y="260">Standard</text>
                <text x="76" y="276">NBI-DM</text>
                <text x="380" y="276">NBI-DM</text>
                <text x="132" y="340">Controller-A</text>
                <text x="420" y="340">Controller-B</text>
                <text x="28" y="388">Notes:</text>
                <text x="8" y="404">-</text>
                <text x="48" y="404">AS1-DM:</text>
                <text x="128" y="404">Application</text>
                <text x="184" y="404">1</text>
                <text x="224" y="404">(APP-1)</text>
                <text x="340" y="404">application-specific</text>
                <text x="444" y="404">data</text>
                <text x="488" y="404">model</text>
                <text x="8" y="420">-</text>
                <text x="48" y="420">AS2-DM:</text>
                <text x="128" y="420">Application</text>
                <text x="184" y="420">1</text>
                <text x="224" y="420">(APP-2)</text>
                <text x="340" y="420">application-specific</text>
                <text x="444" y="420">data</text>
                <text x="488" y="420">model</text>
                <text x="8" y="436">-</text>
                <text x="32" y="436">NBI</text>
                <text x="64" y="436">DM:</text>
                <text x="116" y="436">Standard</text>
                <text x="172" y="436">data</text>
                <text x="216" y="436">model</text>
                <text x="272" y="436">exposed</text>
                <text x="316" y="436">by</text>
                <text x="348" y="436">both</text>
                <text x="400" y="436">network</text>
                <text x="480" y="436">controllers</text>
                <text x="8" y="452">-</text>
                <text x="52" y="452">DM-Map1:</text>
                <text x="136" y="452">Application</text>
                <text x="220" y="452">specific</text>
                <text x="276" y="452">data</text>
                <text x="320" y="452">model</text>
                <text x="372" y="452">mapper</text>
                <text x="432" y="452">between</text>
                <text x="480" y="452">the</text>
                <text x="512" y="452">NBI</text>
                <text x="540" y="452">DM</text>
                <text x="32" y="468">and</text>
                <text x="64" y="468">the</text>
                <text x="108" y="468">AS1-DM</text>
                <text x="8" y="484">-</text>
                <text x="52" y="484">DM-Map2:</text>
                <text x="136" y="484">Application</text>
                <text x="220" y="484">specific</text>
                <text x="276" y="484">data</text>
                <text x="320" y="484">model</text>
                <text x="372" y="484">mapper</text>
                <text x="432" y="484">between</text>
                <text x="480" y="484">the</text>
                <text x="512" y="484">NBI</text>
                <text x="540" y="484">DM</text>
                <text x="32" y="500">and</text>
                <text x="64" y="500">the</text>
                <text x="108" y="500">AS2-DM</text>
              </g>
            </svg>
          </artwork>
          <artwork type="ascii-art"><![CDATA[
  +-------+         +-------+         +-------+         +-------+
  | APP-1 |         | APP-2 |         | APP-1 |         | APP-2 |
  |(Core) |         |(Core) |         |(Core) |         |(Core) |
  +-------+         +-------+         +-------+         +-------+
      ^                 ^                 ^                 ^
      | AS1-DM   AS2-DM |                 | AS1-DM   AS2-DM |
      |                 |                 |                 |
 +---------+       +---------+       +---------+       +---------+
 |  APP-1  |       |  APP-2  |       |  APP-1  |       |  APP-2  |
 |(DM-Map1)|       | (DM-Map)|       | (DM-Map)|       |(DM-Map2)|
 +---------+       +---------+       +---------+       +---------+
      ^                 ^                 ^                 ^
      |                 |  /-----------\  |                 |
      +--------+--------+ /    Common   \ +--------+--------+
               |          \   Standard  /          |
      NBI-DM   |           \-----------/    NBI-DM |
               |                                   |
               |                                   |
  +------------+------------+         +------------+------------+
  |       Controller-A      |         |       Controller-B      |
  +-------------------------+         +-------------------------+

Notes:
- AS1-DM: Application 1 (APP-1) application-specific data model
- AS2-DM: Application 1 (APP-2) application-specific data model
- NBI DM: Standard data model exposed by both network controllers
- DM-Map1: Application specific data model mapper between the NBI DM
  and the AS1-DM
- DM-Map2: Application specific data model mapper between the NBI DM
  and the AS2-DM
]]></artwork>
        </artset>
      </figure>
      <t>In this case, the data model exposed by network controllers (e.g., controller-A and controller-B) is the same and each application needs to translate/map the standardized data model exposed by the network controller to its own application-specific data model.</t>
      <t>Following this approach an existing application (e.g., Application-1) can be ported from one controller to another controller (e.g., from controller-A to controller-B) ideally with no change and additional testing.</t>
      <t>Reusing RFC8795 YANG data model for SIMAP applications will allow TE and SIMAP application to co-exist on top of the same network controller, allowing seamless migration from network scenarios supporting only on of these application to network scenarios where both applications are supported at the same time or even scenarios where either or both applications are supported together with new applications not yet defined.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>TODO Security</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC8795">
          <front>
            <title>YANG Data Model for Traffic Engineering (TE) Topologies</title>
            <author fullname="X. Liu" initials="X." surname="Liu"/>
            <author fullname="I. Bryskin" initials="I." surname="Bryskin"/>
            <author fullname="V. Beeram" initials="V." surname="Beeram"/>
            <author fullname="T. Saad" initials="T." surname="Saad"/>
            <author fullname="H. Shah" initials="H." surname="Shah"/>
            <author fullname="O. Gonzalez de Dios" initials="O." surname="Gonzalez de Dios"/>
            <date month="August" year="2020"/>
            <abstract>
              <t>This document defines a YANG data model for representing, retrieving, and manipulating Traffic Engineering (TE) Topologies. The model serves as a base model that other technology-specific TE topology models can augment.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8795"/>
          <seriesInfo name="DOI" value="10.17487/RFC8795"/>
        </reference>
        <reference anchor="RFC8345">
          <front>
            <title>A YANG Data Model for Network Topologies</title>
            <author fullname="A. Clemm" initials="A." surname="Clemm"/>
            <author fullname="J. Medved" initials="J." surname="Medved"/>
            <author fullname="R. Varga" initials="R." surname="Varga"/>
            <author fullname="N. Bahadur" initials="N." surname="Bahadur"/>
            <author fullname="H. Ananthakrishnan" initials="H." surname="Ananthakrishnan"/>
            <author fullname="X. Liu" initials="X." surname="Liu"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>This document defines an abstract (generic, or base) YANG data model for network/service topologies and inventories. The data model serves as a base model that is augmented with technology-specific details in other, more specific topology and inventory data models.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8345"/>
          <seriesInfo name="DOI" value="10.17487/RFC8345"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="I-D.ietf-nmop-simap-concept">
          <front>
            <title>SIMAP: Concept, Requirements, and Use Cases</title>
            <author fullname="Olga Havel" initials="O." surname="Havel">
              <organization>Huawei</organization>
            </author>
            <author fullname="Benoît Claise" initials="B." surname="Claise">
              <organization>Everything OPS</organization>
            </author>
            <author fullname="Oscar Gonzalez de Dios" initials="O. G." surname="de Dios">
              <organization>Telefonica</organization>
            </author>
            <author fullname="Thomas Graf" initials="T." surname="Graf">
              <organization>Swisscom</organization>
            </author>
            <date day="19" month="June" year="2026"/>
            <abstract>
              <t>   This document defines the concept of Service &amp; Infrastructure Maps
   (SIMAP) and identifies a set of SIMAP requirements and use cases.
   The SIMAP was previously known as Digital Map. SIMAP evolves the
   earlier 'Digital Map' concept by making explicit the ties between
   service and infrastructure layers, clarifying expected outcomes for
   operations and automation, and addressing ambiguity associated with
   the term 'digital.'

   The document intends to be used as a reference for the assessment of
   the various topology modules to meet SIMAP requirements.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-nmop-simap-concept-12"/>
        </reference>
        <reference anchor="I-D.ietf-teas-te-topology-profiles">
          <front>
            <title>Profiles for Traffic Engineering (TE) Topology Data Model and Applicability to non-TE-centric Use Cases</title>
            <author fullname="Italo Busi" initials="I." surname="Busi">
              <organization>Huawei</organization>
            </author>
            <author fullname="Xufeng Liu" initials="X." surname="Liu">
              <organization>Individual</organization>
            </author>
            <author fullname="Igor Bryskin" initials="I." surname="Bryskin">
              <organization>Individual</organization>
            </author>
            <author fullname="Tarek Saad" initials="T." surname="Saad">
              <organization>Cisco Systems Inc</organization>
            </author>
            <author fullname="Oscar Gonzalez de Dios" initials="O. G." surname="de Dios">
              <organization>Telefonica</organization>
            </author>
            <date day="5" month="July" year="2026"/>
            <abstract>
              <t>   This document describes how profiles of the Topology YANG data model,
   defined in RFC8795, can be used to address applications in Traffic
   Engineering aware (TE-aware) deployments, irrespective of whether
   they are TE-centric or not.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-teas-te-topology-profiles-06"/>
        </reference>
        <reference anchor="I-D.havel-nmop-simap-yang">
          <front>
            <title>A YANG Data Model for SIMAP</title>
            <author fullname="Olga Havel" initials="O." surname="Havel">
              <organization>Huawei</organization>
            </author>
            <author fullname="Nigel Davis" initials="N." surname="Davis">
              <organization>Ciena</organization>
            </author>
            <author fullname="Benoît Claise" initials="B." surname="Claise">
              <organization>Huawei</organization>
            </author>
            <author fullname="Oscar Gonzalez de Dios" initials="O. G." surname="de Dios">
              <organization>Telefonica</organization>
            </author>
            <author fullname="Thomas Graf" initials="T." surname="Graf">
              <organization>Swisscom</organization>
            </author>
            <date day="19" month="March" year="2026"/>
            <abstract>
              <t>   This document defines a YANG data model for Service &amp; Infrastructure
   Maps (SIMAP).  It extends the RFC8345 YANG modules to support all
   SIMAP requirements.  This document will only focus on modelling
   proposal for each of the requirements not supported by RFC8345.  Any
   related terminology, concepts, use cases and requirements are defined
   outside of this draft and this draft will only refer to them, analyze
   how to model and propose the implementation solutions.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-havel-nmop-simap-yang-02"/>
        </reference>
      </references>
    </references>
    <?line 298?>

<section anchor="example-of-deviation-statements">
      <name>Example of deviation statements</name>
      <t><xref target="I-D.ietf-teas-te-topology-profiles"/> notes that existing implementations of <xref target="RFC8795"/> have described the implemented profiled by manually pruning/profiling the YANG tree generated fom the YANG module defined in <xref target="RFC8795"/> and those pruned/profiled YANG trees provided sufficient input for the implementers to generate proper APIs.</t>
      <t>However, <xref target="I-D.ietf-teas-te-topology-profiles"/> is also exploring the possibility to use the YANG deviation statements to programmatically generate pruned/profiled YANG trees.</t>
      <t>An example of a YANG deviation module for SIMAP applications is provided below.</t>
      <figure anchor="fig-deviation-yang">
        <name>Example of SIMA deviation YANG module</name>
        <sourcecode type="yang" name="ietf-simap-deviation-example@2026-02-12.yang"><![CDATA[
module ietf-simap-deviation-example {
  yang-version 1.1;
  namespace "https://example.com/ns/ietf-simap-deviation-example";
  prefix simapd;

  import ietf-network {
    prefix nw;
    reference
      "RFC 8345: A YANG Data Model for Network Topologies";
  }
  import ietf-network-topology {
    prefix nt;
    reference
      "RFC 8345: A YANG Data Model for Network Topologies";
  }
  import ietf-te-topology {
    prefix tet;
    reference
      "RFC 8795: YANG Data Model for Traffic Engineering (TE)
                 Topologies";
  }

  organization
    "Network Management Operations (NMOP) Working Group";
  contact
    "WG Web:   <https://datatracker.ietf.org/group/nmop/>
     WG List:  <mailto:nmop@ietf.org>

     Editor:   Italo Busi
               <Italo.Busi@huawei.com>";
  description
    "This module defines an example of a YANG data model containing
     the YANG deviation statements to support the implementation of
     the SIMAP YANG data model re-using a sub-set of the TE topology
     model.

     Copyright (c) 2026 IETF Trust and the persons
     identified as authors of the code.  All rights reserved.

     Redistribution and use in source and binary forms, with or
     without modification, is permitted pursuant to, and subject
     to the license terms contained in, the Revised BSD License
     set forth in Section 4.c of the IETF Trust's Legal Provisions
     Relating to IETF Documents
     (https://trustee.ietf.org/license-info).

     This version of this YANG module is part of RFC XXXX; see
     the RFC itself for full legal notices..";

  revision 2026-03-02 {
    description
      "Initial version";
    reference
      "RFC XXXX: Applicability of existing YANG data models to
                 SIMAP";
  }

  /*
   * Deviations
   */

  deviation "/nw:networks/tet:te" {
    description
      "SIMAP implementations are not required to implement TE
       templates.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/tet:te-topology-identifier" {
    description
      "SIMAP implementations are not required to implement TE
       topology identifiers.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/tet:te" {
    description
      "SIMAP implementations are not required to implement the
       augmentation for TE topologies.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te-node-id" {
    description
      "SIMAP implementations are not required to implement TE node
       identifiers.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te" {
    description
      "SIMAP implementations are not required to implement TE node
       identifiers.";
    deviate delete {
      must '../te-node-id';
    }
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:te-node-template" {
    description
      "SIMAP implementations are not required to implement TE node
       templates.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:te-node-attributes/tet:admin-status" {
    description
      "SIMAP implementations are not required to implement the TE
       node administrative status.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:te-node-attributes/tet:connectivity-matrices"
          + "/tet:label-restrictions" {
    description
      "SIMAP implementations are not required to implement the label
       restrictions for the connectivity matrix.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:te-node-attributes/tet:connectivity-matrices"
          + "/tet:underlay" {
    description
      "SIMAP implementations are not required to implement the
       underlay paths for the connectivity matrix.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:te-node-attributes/tet:connectivity-matrices"
          + "/tet:path-constraints" {
    description
      "SIMAP implementations are not required to implement the
       path constraints for the connectivity matrix.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:te-node-attributes/tet:connectivity-matrices"
          + "/tet:optimizations" {
    description
      "SIMAP implementations are not required to implement the
       path optimizations for the connectivity matrix.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:te-node-attributes/tet:connectivity-matrices"
          + "/tet:tiebreaker" {
    description
      "SIMAP implementations are not required to implement the
       tiebreaker for the connectivity matrix.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:te-node-attributes/tet:connectivity-matrices"
          + "/tet:path-properties" {
    description
      "SIMAP implementations are not required to implement the
       path properties for the connectivity matrix.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:te-node-attributes/tet:connectivity-matrices"
          + "/tet:connectivity-matrix/tet:from"
          + "/tet:label-restrictions" {
    description
      "SIMAP implementations are not required to implement the label
       restrictions for the connectivity matrix.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:te-node-attributes/tet:connectivity-matrices"
          + "/tet:connectivity-matrix/tet:to"
          + "/tet:label-restrictions" {
    description
      "SIMAP implementations are not required to implement the label
       restrictions for the connectivity matrix.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:te-node-attributes/tet:connectivity-matrices"
          + "/tet:connectivity-matrix/tet:underlay" {
    description
      "SIMAP implementations are not required to implement the
       underlay paths for the connectivity matrix.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:te-node-attributes/tet:connectivity-matrices"
          + "/tet:connectivity-matrix/tet:path-constraints" {
    description
      "SIMAP implementations are not required to implement the
       path constraints for the connectivity matrix.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:te-node-attributes/tet:connectivity-matrices"
          + "/tet:connectivity-matrix/tet:optimizations" {
    description
      "SIMAP implementations are not required to implement the
       path optimizations for the connectivity matrix.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:te-node-attributes/tet:connectivity-matrices"
          + "/tet:connectivity-matrix/tet:tiebreaker" {
    description
      "SIMAP implementations are not required to implement the
       tiebreaker for the connectivity matrix.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:te-node-attributes/tet:connectivity-matrices"
          + "/tet:connectivity-matrix/tet:path-properties" {
    description
      "SIMAP implementations are not required to implement the
       path properties for the connectivity matrix.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:te-node-attributes/tet:signaling-address" {
    description
      "SIMAP implementations are not required to implement the
       node's signaling address.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:geolocation" {
    description
      "SIMAP implementations are not required to implement the
       node's geolocation.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:is-multi-access-dr" {
    description
      "SIMAP implementations are not required to implement the
       designated router information.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:information-source" {
    description
      "SIMAP implementations are not required to implement the
       node's information source (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:information-source-instance" {
    description
      "SIMAP implementations are not required to implement the
       node's information source (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:information-source-state" {
    description
      "SIMAP implementations are not required to implement the
       node's information source (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:information-source-entry" {
    description
      "SIMAP implementations are not required to implement the
       node's information source (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:statistics" {
    description
      "SIMAP implementations are not required to implement the
       node's statistics (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/tet:te"
          + "/tet:tunnel-termination-point" {
    description
      "SIMAP implementations are not required to implement the
       tunnel termination points (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:bundle-stack-level/tet:component" {
    description
      "SIMAP implementations are not required to implement the
       bundle links as a set of component interfaces.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-template" {
    description
      "SIMAP implementations are not required to implement the
       TE link templates.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:underlay/tet:primary-path"
          + "/tet:path-element/tet:type/tet:label" {
    description
      "SIMAP implementations are not required to implement the
       label hop.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:underlay/tet:primary-path"
          + "/tet:path-element/tet:type/tet:as-number" {
    description
      "SIMAP implementations are not required to implement the
       AS hop.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:underlay/tet:backup-path"
          + "/tet:path-element/tet:type/tet:label" {
    description
      "SIMAP implementations are not required to implement the
       label hop.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:underlay/tet:backup-path"
          + "/tet:path-element/tet:type/tet:as-number" {
    description
      "SIMAP implementations are not required to implement the
       AS hop.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:underlay/"
          + "tet:protection-type" {
    description
      "SIMAP implementations are not required to implement the
       protection type for the backup paths of a link.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:underlay"
          + "/tet:tunnel-termination-points" {
    description
      "SIMAP implementations are not required to implement the
       underlay tunnel termination points of a link
       (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:underlay"
          + "/tet:tunnels" {
    description
      "SIMAP implementations are not required to implement the
       underlay tunnels of a link (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:admin-status" {
    description
      "SIMAP implementations are not required to implement the
       administrative status of a link.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:link-index" {
    description
      "SIMAP implementations are not required to implement the
       link identifier.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:administrative-group" {
    description
      "SIMAP implementations are not required to implement the
       administrative groups of a link.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes"
          + "/tet:interface-switching-capability"
          + "/tet:max-lsp-bandwidth" {
    description
      "SIMAP implementations are not required to implement the
       maximum LSP bandwidth.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:label-restrictions" {
    description
      "SIMAP implementations are not required to implement the
       label restrictions of a link.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:link-protection-type" {
    description
      "SIMAP implementations are not required to implement the
       link protection type.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:max-link-bandwidth" {
    description
      "SIMAP implementations are not required to implement the
       bandwidth information (capacity) of a link.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:max-resv-link-bandwidth" {
    description
      "SIMAP implementations are not required to implement the
       bandwidth information (capacity) of a link.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:unreserved-bandwidth" {
    description
      "SIMAP implementations are not required to implement the
       bandwidth information (capacity) of a link.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:te-default-metric" {
    description
      "SIMAP implementations are not required to implement the
       TE default metric of a link (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:te-delay-metric" {
    description
      "SIMAP implementations are not required to implement the
       delay of a link (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:te-igp-metric" {
    description
      "SIMAP implementations are not required to implement the
       IGP metric of a link (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:te-srlgs" {
    description
      "SIMAP implementations are not required to implement the
       Shared Risk Link Groups (SRLGs) of a link (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:te-link-attributes/tet:te-nsrlgs" {
    description
      "SIMAP implementations are not required to implement the
       Non-Shared Risk Link Groups (NSRLGs) of a link
       (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:information-source" {
    description
      "SIMAP implementations are not required to implement the
       link's information source (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:information-source-instance" {
    description
      "SIMAP implementations are not required to implement the
       link's information source (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:information-source-state" {
    description
      "SIMAP implementations are not required to implement the
       link's information source (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:information-source-entry" {
    description
      "SIMAP implementations are not required to implement the
       link's information source (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:recovery" {
    description
      "SIMAP implementations are not required to report the status
       of the recovery process on a link.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:underlay" {
    description
      "SIMAP implementations are not required to report the state
       attributes for the TE link underlay.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nt:link/tet:te"
          + "/tet:statistics" {
    description
      "SIMAP implementations are not required to implement the
       link's statistics (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/nt:termination-point"
          + "/tet:te-tp-id" {
    description
      "SIMAP implementations are not required to implement TE
       termination point identifier.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/nt:termination-point"
          + "/tet:te" {
    description
      "SIMAP implementations are not required to implement TE
       termination point identifier.";
    deviate delete {
      must '../te-tp-id';
    }
  }

  deviation "/nw:networks/nw:network/nw:node/nt:termination-point"
          + "/tet:te/tet:admin-status" {
    description
      "SIMAP implementations are not required to implement the
       administrative status of a termination point.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/nt:termination-point"
          + "/tet:te/tet:interface-switching-capability" {
    description
      "SIMAP implementations are not required to report the
       'interface-switching-capability' on the termination points.";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/nt:termination-point"
          + "/tet:te/tet:inter-layer-lock-id" {
    description
      "SIMAP implementations are not required to implement the
       inter-layer lock-id (to be confirmed).";
    deviate not-supported;
  }

  deviation "/nw:networks/nw:network/nw:node/nt:termination-point"
          + "/tet:te/tet:geolocation" {
    description
      "SIMAP implementations are not required to implement the
       geolocation of a termination point.";
    deviate not-supported;
  }
}
]]></sourcecode>
      </figure>
      <t>The pruned/profiled YANG tree, generated using 'pyang' tool, is provided below:</t>
      <artwork type="ascii-art"><![CDATA[
module: ietf-network
  +--rw networks
     +--rw network* [network-id]
        +--rw network-id            network-id
        +--rw network-types
        |  +--rw tet:te-topology!
        +--rw supporting-network* [network-ref]
        |  +--rw network-ref    -> /networks/network/network-id
        +--rw node* [node-id]
        |  +--rw node-id                 node-id
        |  +--rw supporting-node* [network-ref node-ref]
        |  |  +--rw network-ref
        |  |  |       -> ../../../supporting-network/network-ref
        |  |  +--rw node-ref       -> /networks/network/node/node-id
        |  +--rw nt:termination-point* [tp-id]
        |  |  +--rw nt:tp-id                           tp-id
        |  |  +--rw nt:supporting-termination-point*
        |  |  |       [network-ref node-ref tp-ref]
        |  |  |  +--rw nt:network-ref
        |  |  |  |       -> ../../../nw:supporting-node/network-ref
        |  |  |  +--rw nt:node-ref
        |  |  |  |       -> ../../../nw:supporting-node/node-ref
        |  |  |  +--rw nt:tp-ref         leafref
        |  |  +--rw tet:te!
        |  |     +--rw tet:name?                   string
        |  |     +--rw tet:inter-domain-plug-id?   binary
        |  |     +--ro tet:oper-status?
        |  |             te-types:te-oper-status
        |  +--rw tet:te!
        |     +--rw tet:te-node-attributes
        |     |  +--rw tet:connectivity-matrices
        |     |  |  +--rw tet:number-of-entries?     uint16
        |     |  |  +--rw tet:is-allowed?            boolean
        |     |  |  +--rw tet:connectivity-matrix* [id]
        |     |  |     +--rw tet:id            uint32
        |     |  |     +--rw tet:from
        |     |  |     |  +--rw tet:tp-ref?   leafref
        |     |  |     +--rw tet:to
        |     |  |     |  +--rw tet:tp-ref?   leafref
        |     |  |     +--rw tet:is-allowed?   boolean
        |     |  +--rw tet:domain-id?               uint32
        |     |  +--rw tet:is-abstract?             empty
        |     |  +--rw tet:name?                    string
        |     |  +--rw tet:underlay-topology {te-topology-hierarchy}?
        |     |     +--rw tet:network-ref?
        |     |             -> /nw:networks/network/network-id
        |     +--ro tet:oper-status?          te-types:te-oper-status
        +--rw nt:link* [link-id]
           +--rw nt:link-id            link-id
           +--rw nt:source
           |  +--rw nt:source-node?   -> ../../../nw:node/node-id
           |  +--rw nt:source-tp?     leafref
           +--rw nt:destination
           |  +--rw nt:dest-node?   -> ../../../nw:node/node-id
           |  +--rw nt:dest-tp?     leafref
           +--rw nt:supporting-link* [network-ref link-ref]
           |  +--rw nt:network-ref
           |  |       -> ../../../nw:supporting-network/network-ref
           |  +--rw nt:link-ref       leafref
           +--rw tet:te!
              +--rw (tet:bundle-stack-level)?
              |  +--:(tet:bundle)
              |     +--rw tet:bundled-links
              |        +--rw tet:bundled-link* [sequence]
              |           +--rw tet:sequence      uint32
              |           +--rw tet:src-tp-ref?   leafref
              |           +--rw tet:des-tp-ref?   leafref
              +--rw tet:te-link-attributes
              |  +--rw tet:access-type?
              |  |       te-types:te-link-access-type
              |  +--rw tet:external-domain
              |  |  +--rw tet:network-ref?
              |  |  |       -> /nw:networks/network/network-id
              |  |  +--rw tet:remote-te-node-id?
              |  |  |       te-types:te-node-id
              |  |  +--rw tet:remote-te-link-tp-id?
              |  |          te-types:te-tp-id
              |  +--rw tet:is-abstract?                      empty
              |  +--rw tet:name?                             string
              |  +--rw tet:underlay {te-topology-hierarchy}?
              |  |  +--rw tet:enabled?        boolean
              |  |  +--rw tet:primary-path
              |  |  |  +--rw tet:network-ref?
              |  |  |  |       -> /nw:networks/network/network-id
              |  |  |  +--rw tet:path-element* [path-element-id]
              |  |  |     +--rw tet:path-element-id
              |  |  |     |       uint32
              |  |  |     +--rw (tet:type)?
              |  |  |        +--:(tet:numbered-node-hop)
              |  |  |        |  +--rw tet:numbered-node-hop
              |  |  |        |     +--rw tet:node-id-uri?
              |  |  |        |     |       nw:node-id
              |  |  |        |     +--rw tet:node-id?
              |  |  |        |     |       te-node-id
              |  |  |        |     +--rw tet:hop-type?
              |  |  |        |             te-hop-type
              |  |  |        +--:(tet:numbered-link-hop)
              |  |  |        |  +--rw tet:numbered-link-hop
              |  |  |        |     +--rw tet:link-tp-id    te-tp-id
              |  |  |        |     +--rw tet:hop-type?
              |  |  |        |     |       te-hop-type
              |  |  |        |     +--rw tet:direction?
              |  |  |        |             te-link-direction
              |  |  |        +--:(tet:unnumbered-link-hop)
              |  |  |           +--rw tet:unnumbered-link-hop
              |  |  |              +--rw tet:link-tp-id-uri?
              |  |  |              |       nt:tp-id
              |  |  |              +--rw tet:link-tp-id?
              |  |  |              |       te-tp-id
              |  |  |              +--rw tet:node-id-uri?
              |  |  |              |       nw:node-id
              |  |  |              +--rw tet:node-id?
              |  |  |              |       te-node-id
              |  |  |              +--rw tet:hop-type?
              |  |  |              |       te-hop-type
              |  |  |              +--rw tet:direction?
              |  |  |                      te-link-direction
              |  |  +--rw tet:backup-path* [index]
              |  |     +--rw tet:index           uint32
              |  |     +--rw tet:network-ref?
              |  |     |       -> /nw:networks/network/network-id
              |  |     +--rw tet:path-element* [path-element-id]
              |  |        +--rw tet:path-element-id
              |  |        |       uint32
              |  |        +--rw (tet:type)?
              |  |           +--:(tet:numbered-node-hop)
              |  |           |  +--rw tet:numbered-node-hop
              |  |           |     +--rw tet:node-id-uri?
              |  |           |     |       nw:node-id
              |  |           |     +--rw tet:node-id?
              |  |           |     |       te-node-id
              |  |           |     +--rw tet:hop-type?
              |  |           |             te-hop-type
              |  |           +--:(tet:numbered-link-hop)
              |  |           |  +--rw tet:numbered-link-hop
              |  |           |     +--rw tet:link-tp-id    te-tp-id
              |  |           |     +--rw tet:hop-type?
              |  |           |     |       te-hop-type
              |  |           |     +--rw tet:direction?
              |  |           |             te-link-direction
              |  |           +--:(tet:unnumbered-link-hop)
              |  |              +--rw tet:unnumbered-link-hop
              |  |                 +--rw tet:link-tp-id-uri?
              |  |                 |       nt:tp-id
              |  |                 +--rw tet:link-tp-id?
              |  |                 |       te-tp-id
              |  |                 +--rw tet:node-id-uri?
              |  |                 |       nw:node-id
              |  |                 +--rw tet:node-id?
              |  |                 |       te-node-id
              |  |                 +--rw tet:hop-type?
              |  |                 |       te-hop-type
              |  |                 +--rw tet:direction?
              |  |                         te-link-direction
              |  +--rw tet:interface-switching-capability*
              |          [switching-capability encoding]
              |     +--rw tet:switching-capability    identityref
              |     +--rw tet:encoding                identityref
              +--ro tet:oper-status?
              |       te-types:te-oper-status
              +--ro tet:is-transitional?       empty

]]></artwork>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>TODO acknowledge.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
OazOYbVXTrtAHs1kYk4cbt4WHV9Cu/YIG0YFdPsa02i/vBDcA6sBHViFgbCr
fcxhahVApINVSAZbkBkhschdXNUMuOOA7W9IiHZr6/Zcf7V5FvfN/l7EhrwE
+rwix8O+2xOf2UNdYfqdCDAFGc3MJHfb0vNw/U7kV0gxygW/2HjA6QivxvE7
ERpZrU5MFphy2a7a1Yh+J+JrV/xA5biAcTdA37DQi/RO5Dcs8rtYaaPivIuh
tiTYu9hqSy73LubasPXfxWINseLpJY5r/IG53nh7ckH09/F6V4PRXqh8g0KY
iDRO9WLS1vl0cN0gh1Lpq+4CfaF3EG3Rdeizb7QRJE9Bo3L3JMdN8lxjDfTq
4tY71z2yYhY0d/WhCLDyscxnItr7ohII7NnrO1FQfvtODiIAuvMtziVupxyw
83FxObyBka1C9UU5LkqIM+LAuSAyoAsitxhDEsaue0S3KIfiiC7H6JfDCCa3
MVl/eBHE4lLEJj6cZWkitikPjdk7cah36lS4q1Pom1wFXCoRiAGxxrbWOR0J
nL/Q13NsYa1zZS4bka5NdejJgL4wJsBYvTdxKzRfGuhVJuqE1/YER+DZNM1+
NwLjKtBf0Nue0I7f30KJ6ZtB7zRs6/L6/6hgjTbaQtNCb1MMUDRbzG9UiPSJ
eZvf0B1oMsm0WZYumro1QlsnVtpisFil3Pujpkp4ts2XDKOuLdWbk6Ejsdso
qu3usrJ0dO6uuk12SGX44d0PWxzc6BK+aoPhl2fa75WADjvcmA4QttuiA91J
CjMLCtRcFiF+XSAIeWZ2hne1mPEPQayyYMSTaC4jiBW2JkxAJWfljL16f8Yq
dF9eo25ixd2PFb0V99uhTLVDubGwh1xLI/b58jIge8DyGzCICoWX49tFgw3B
XPduk26gXEBvL++E0xm72eNad5LxJQPFkRjzMi6CmUCnt9UUmUHFNKrbHcSS
ZCDk3rpcCMutl4WcZFuXxOnLs9+Kaqg8nmwxDnk/5fj6nVQXdE21PnOMH6B/
9+ql2rv14km2LJ83EP30yuhNU0i3Iatwk2v2SMqNL0xeQwI3sGb/mxHFltfs
fzNy2PKa/e2UQy5CvP1zM3ybzx+aG66KUlmE5iC/RYZzO9wypS/JvOFwdKM7
vRsc19mhalyqcvZ2ndbiv0GWb2JjhlHvG92YkSDDza0X3dFCkW3jsLjF1VpY
2EpidG2ubwW/Cw6aU6f8imPmq0vidiwOtMT2BXVjlaTwZj2kJeP+Yqz37UdL
2qt1t0JcAX1pMYjT8GLzLsURk4OMGWS3yqUe3NgubwfJ9e3os38HaSUS+tJt
x0e1kGZHcM7lPzsDHbfhzUwB3tn2x51F97I91ff6HAYPD4eIy17i33tD3b5z
65++gup+hg3vg4DSeL99AV31IU0VShnwvDC30B15F7AN6ILcfG5vlDTBmVf2
Dfur+Qu07e9Vt3t1UA+dpy7tqY7J+yoQxGt+9Ws7Lpubb75utHa+fdamLRfj
v7chOm+xPHjMDmpNt2reSy10JmLQV590QddvWPMx5e0GLgcGuEMgNWvy0cVK
4729Jhm4gzFU/9OW1UE/AIcbI6heWZE/6GOvy1EAjzSk9zAFLbIuEdYPve9r
7LDZxtwjpk6ZI5oO0bu4FnZAVx+A/2x0+II+8DAZoq6PpheAK/a6ryFUF3zc
pxjaLL9uvGPua3R5/gd79IMrl/Zuvu6WXV+LQ0j6crrulim1xBNeJnJ70q5n
H/Qn6G3QsTgt+pyPxyVrOKbGCa5GVQ9S53m5dgOvjd5GF6RjSjtIobRESxDR
wz8saStVQHcOi8jrhhGMDoInSxp3nNkDs23YbE/3eaaLpD46XN4KbxDoq+V3
CGkpstShoN2wnSvrNgzZl3GvaOsGRqtl1DSNPjn5uEY4YQgLv7GYZcXVopZ9
pthhi82mNg3hXI/qXno3hZkcftXk6vOTNhRPUo6b665qHxpk3Oizf0xeZP41
wGXmXvk/zE2AkutdUY6mN+s0BidT1Fldh4Duq0+tt+RDnrCWB+8cWLshFJnm
t6m3LikR3YvOnYC7BQ2r/BpqqP0qtDiDkxG6OwCTQL2Rt4Gna8hkqw6GC0Kf
BhpLh+3nPoaaw4T7bpc2UrfOvew9adTWeI+c6s2rgpsGpWtFJEDVWbe3Oshb
wWwKrwL9e19Lr7GtrcsbrmphwzwM+t3qopagS0tbeiNxY6GvU76mtjmJi16h
ox8sPa7f0MDrZougiw/6i6kmgulEsMQvulUdlV7VL3Zj0p/rDeqbGxfjc9nv
sPuFCPSZpqwXB+vA4Qf1HXLtHf+qxx8IO0D0DoTV0xgRO2BUO52XDoTdUtKf
GK7H/2bQ0N3KPe3T123rKdWv1CufOucoCDgX92dzJGU+/m4YC5CymvI+P9QA
vmvPpnQ5XVcfKweso25wlqT30zTr8MVuw46Q3Wm8tK0nBmNqQZnLJeT6wjBD
9GLJ9eNbC9cSj9CLC4SxwOk2mtmnICH2eN3F3Udu6LrdZxuvx2Lt+QztPW5t
Y2Jy+mQ1MTWxVd/CXLdXiNWq9Yp9Uybr9g7zne+a/dMEUPfPChbmM24TU9dF
uBay1TSniWx159FgbUXn0YNvXc6uhWtFq2ghW80qmthWtQr/Wc0qnKC8PmGJ
2RU8idM9WHq0UT2nyoJxkK0VFTiCu2ZUwH5tVMAWwFiA1KF8sTTYqlEBc6qv
FRW4P9eNCtyfbC3DbrRc0bCX4VsL1xLD7sW12LAbzeyzzLCrZ92owP25blTQ
y+IaUcFmxLSq/+vFtsT/NdrZZzX/Vz3rRwXMb71mVMD6AKwSFbBWIT0Lo4IV
EK6FbDXNaSJb3Xk0WFvRefTgW5eza+Fa0SpayFaziia2Va3Cf1awisbiV++u
l2/aTe3z1676TCRhGkFZd57PSdR1NWb20yDFVV/azs1raExN7vshLFm38zlc
lsVvgpQqoA+qms+C2nSLThHpTR6De+w4vEjSeSwi+jaNGnysPP0fd8Y8VoK2
YeBHKHlVUwwH/wdClz0Vb7UAAA==

-->

</rfc>
