<?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.43 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-nmop-network-incident-yang-15" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.1 -->
  <front>
    <title abbrev="Network Incident Management">A YANG Data Model for Network Incident Management</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-nmop-network-incident-yang-15"/>
    <author fullname="Tong Hu">
      <organization>CMCC</organization>
      <address>
        <postal>
          <street>Building A01, 1600 Yuhangtang Road, Wuchang Street, Yuhang District</street>
          <city>Hangzhou</city>
          <code>311121</code>
          <country>China</country>
        </postal>
        <email>hutong@cmhi.chinamobile.com</email>
      </address>
    </author>
    <author fullname="Luis M. Contreras">
      <organization>Telefonica</organization>
      <address>
        <postal>
          <city>Madrid</city>
          <country>Spain</country>
        </postal>
        <email>luismiguel.contrerasmurillo@telefonica.com</email>
      </address>
    </author>
    <author fullname="Qin Wu">
      <organization>Huawei</organization>
      <address>
        <postal>
          <street>101 Software Avenue, Yuhua District</street>
          <city>Nanjing</city>
          <code>210012</code>
          <country>China</country>
        </postal>
        <email>bill.wu@huawei.com</email>
      </address>
    </author>
    <author fullname="Nigel Davis">
      <organization>Ciena</organization>
      <address>
        <email>ndavis@ciena.com</email>
      </address>
    </author>
    <author fullname="Chong Feng">
      <organization/>
      <address>
        <email>fengchongllly@gmail.com</email>
      </address>
    </author>
    <date year="2026" month="September" day="20"/>
    <area>Operations and Management</area>
    <workgroup>NMOP Working Group</workgroup>
    <keyword>Network Incident Management</keyword>
    <keyword>yang data model</keyword>
    <abstract>
      <?line 97?>

<t>This document defines a YANG data model for the network incident lifecycle
management.  This YANG module provides a standard way to
report, diagnose, and help reduce troubleshooting tickets and resolve
network incidents for the sake of network service health and probable
root cause analysis.</t>
    </abstract>
  </front>
  <middle>
    <?line 105?>

<section anchor="introduction">
      <name>Introduction</name>
      <t><xref target="RFC8969"/> defines a framework for Automating Service and Network
Management with YANG <xref target="RFC7950"/> for full life cycle network management.
A set of YANG data models have already been developed in IETF for network
performance monitoring and fault monitoring, e.g., a YANG
data model for alarm management <xref target="RFC8632"/> defines a standard
interface for alarm management.  A data model for Network and VPN
Service Performance Monitoring <xref target="RFC9375"/> defines a standard interface
for network performance management.  In addition, distributed tracing
mechanism defined in <xref target="W3C-Trace-Context"/> can be used to analyze
and debug operations, such as configuration transactions, across
multiple distributed systems.</t>
      <t>However, these YANG data models for network maintenance are based on
specific data source information and manage alarms and performance
metrics data separately at different layers in various separate
management systems.  In addition, the frequency and quantity of
alarms and performance metrics data reported to Operating Support
System (OSS) have increased dramatically (in many cases multiple
orders of magnitude) with the growth of service types and complexity
and greatly overwhelm OSS platforms <xref target="TMF724A"/>; with existing known dependency
relationships between metric, alarm, and events at each layer (e.g., packet
layer or optical layer), it is possible to compress series of alarms
(see Section 3.5.3 of <xref target="RFC8632"/>) into fewer network incidents and there are
many solutions in the market when this document was written that essentially do this to some degree.
However, conventional solutions such as data compression are time-consuming
and labor-intensive, usually rely on maintenance engineers' experience for data
analysis, which, in many cases, result in low processing efficiency, inaccurate
Probable Root Cause identification and duplicated tickets. It is also difficult to
assess the impact of alarms, performance metrics and other anomaly data on network
services without known relation across layers of the entire network topology data
or the relation with other network topology data.</t>
      <t>To address these challenges, this document specifies a network-wide,
incident-centric solution to establish the global view on dependency
relationships with both network service and network topology at various different
layers, which not only can be used at a specific layer in one domain but also can be used to
span across layers for multi-layer network troubleshooting.</t>
      <t>As described in <xref target="RFC9940"/>, a network incident refers
to an undesired Occurrence such as an unexpected interruption of a network service,
degradation of the quality of a network service, or the below-target performance of
a network service. Different data sources, including alarms, metrics, and other anomaly
information, can be correlated and combined into one or a few network
incidents, regardless of layer, informed by correlation analysis and service
impact assessment. For example, if the protocol-related interface fails to work
properly, a large amount of alarms may be reported to the upper-layer management
system. Although a lot of network services may be affected by the interface, only
one aggregated network incident pertaining to the abnormal interface will be reported.
A network incident may also be raised through the analysis of some network
performance metrics, for example, as described in SAIN <xref target="RFC9417"/>, network services
can be decomposed to several sub-services, specific metrics can be monitored for each
sub-service. Therefore symptoms will occur if services/sub-services are unhealthy
(after analyzing metrics), in addition, these symptoms may give rise to a network
incident when it causes degradation of the network services.</t>
      <t>In addition, Artificial Intelligence (AI) and Machine Learning (ML)
are key technologies in the processing of large amounts of data with
complex data correlations (see <xref section="6.1" sectionFormat="of" target="I-D.irtf-nmrg-ai-challenges"/>).
For example, Neural Network Algorithm or Hierarchy Aggregation Algorithm
<xref target="BERT"/> can be used to replace manual alarm data correlation. Through online
and offline self-learning, these algorithms can be continuously optimized to
improve the efficiency of fault diagnosis.</t>
      <t>This document defines a YANG data model for network incident lifecycle
management, which improves troubleshooting efficiency, and improves
network automation <xref target="RFC8969"/> with remote process call (RPC) operations in this YANG module.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

<t>The following terms are defined in <xref target="RFC9543"/>,<xref target="RFC9940"/>
and are not redefined here:</t>
      <ul spacing="normal">
        <li>
          <t>Alarm</t>
        </li>
        <li>
          <t>Resource</t>
        </li>
        <li>
          <t>Fault</t>
        </li>
        <li>
          <t>Event</t>
        </li>
        <li>
          <t>Problem</t>
        </li>
        <li>
          <t>Incident</t>
        </li>
        <li>
          <t>Anomaly</t>
        </li>
        <li>
          <t>Cause</t>
        </li>
        <li>
          <t>Symptom</t>
        </li>
        <li>
          <t>Characteristic</t>
        </li>
        <li>
          <t>Occurrence</t>
        </li>
        <li>
          <t>SLA (Service Level Agreement)</t>
        </li>
        <li>
          <t>SLO (Service Level Objective)</t>
        </li>
      </ul>
      <t>The following terms are defined in this document:</t>
      <dl>
        <dt>Service Impact Assessment:</dt>
        <dd>
          <t>A process that uses algorithmic techniques (e.g., machine learning, automated
reasoning, conformance checking, graph traversal, among others) to evaluate
whether the network service has been impacted by the network incident and map
the network incident to one or a set of network services. This process can reduce the volume of
fault/alarms reporting, facilitate troubleshooting, and assure network service
performance and availability.</t>
        </dd>
        <dt>Network Incident Management:</dt>
        <dd>
          <t>Lifecycle management of network incidents, including network incident
identification, reporting, acknowledgement, diagnosis, and resolution.
Unlike previous fault management, it takes various different
data sources including alarms, metrics, and other anomaly information and aggregates
them into one or a few network incidents irrespective of layer
through data correlation analysis and the Service Impact Assessment. A network
incident might impact one or a set of network services. The network incident can also been
seen as customer incident <xref target="TMF724A"/> when the service SLA <xref target="RFC9543"/> associated with one specific
network service and network incident has been affected. How a customer incident is
translated from the network incident is beyond the scope of this document. Note that
a customer incident specifically arises when an issue or problem identified by a customer
(or derived from a service-level threshold/SLO violation) impacts their service experience.</t>
        </dd>
        <dt>Incident Management System:</dt>
        <dd>
          <t>An entity that implements network Incident
Management. It includes (but not limited to) Incident Server
and Incident Client.</t>
        </dd>
        <dt>Incident Server:</dt>
        <dd>
          <t>An entity that is responsible for detecting and reporting
one network incident, performing network incident diagnosis, resolution and prediction in specific domain, etc.</t>
        </dd>
        <dt>Incident Client:</dt>
        <dd>
          <t>An entity that can manage network incidents based on global view on network topology data correlation.
For example, it can receive network incident notifications, query the
information of network incidents, instruct an Incident Server
to diagnose, help resolve, etc. In addition, it can trigger issue tickets and involve repair crew to fix the problem.</t>
        </dd>
        <dt>Incident Handler:</dt>
        <dd>
          <t>An entity that can receive network incident notifications, store and query the information of
network incidents for data analysis. Unlike the Incident Client, it does not control the incident
server and cannot instruct it to perform network incident diagnosis or resolution.</t>
        </dd>
        <dt>Incident Process:</dt>
        <dd>
          <t>A multi-step workflow used by network operation teams to identify, analyze, and  unexpected
service disruptions or quality reductions, with the primary goal of restoring normal operations as
quickly as possible while minimizing service impact.</t>
        </dd>
        <dt>Probable Root Cause:</dt>
        <dd>
          <t>If removing a fault condition completely s the ongoing incident (specifically, regarding network
outage or service impairments and their associated subsequent failures and symptoms) and prevents
the problem from recurring, then such fault condition is considered as a Probable Root Cause of a problem.</t>
        </dd>
        <dt/>
        <dd>
          <t>Since one fault may give rise to another fault or problem, a Probable Root Cause is commonly meant
to describe the original event or combination of circumstances that is the foundation of all
related faults.</t>
        </dd>
        <dt/>
        <dd>
          <t>Conversely, a causal fault condition is a contributing action that influences the outcome of the incident or
event, but is not the Probable Root Cause.</t>
        </dd>
      </dl>
    </section>
    <section anchor="sample-use-cases">
      <name>Sample Use Cases</name>
      <section anchor="incident-based-trouble-tickets-dispatching">
        <name>Incident-Based Trouble Tickets Dispatching</name>
        <t>Usually, the dispatching of trouble tickets in a network is mostly
based on alarm data analysis and often requires operators' maintenance
engineers.  These operators' maintenance engineers are responsible for
monitoring, detecting and correlating alarms, e.g., that alarms at
both endpoints of a specific tunnel or at both optical and IP layers
which are associated with the same network fault.  Therefore, they can
correlate these alarms to the same trouble ticket, which offers a low
level of automation. If there are more alarms, then the human costs for
network maintenance are increased accordingly.</t>
        <t>Some operators preconfigure accept-lists and adopt some coarse
granularity data correlation rules for the alarm management. This approach
seems to improve fault management automation.  However, some trouble
tickets might be missed if the filtering conditions are too restrictive.
If the filtering conditions are not restrictive, it might end up with
multiple trouble tickets being dispatched for the same network fault.
It is hard to achieve a perfect balance between the network
management automation and duplicated trouble tickets under the
conventional working situations.</t>
        <t>With the help of the Network Incident Management, massive sets of
alarms can be aggregated into a few network incidents based on
Service Impact Assessment, so the number of trouble tickets will
be reduced. At the same time, the efficiency of network troubleshooting
can be largely improved, which addresses the pain points of trouble
ticket dispatching.</t>
      </section>
      <section anchor="incident-derivation-from-l3vpn-service-unavailability">
        <name>Incident Derivation from L3VPN Service Unavailability</name>
        <t>The Service Attachment Points (SAPs) defined in <xref target="RFC9408"/> represent the
network reference points where network services can be delivered or are
being delivered to customers.</t>
        <t>SLOs <xref target="RFC9543"/> can be used to characterize the ability of a particular set of
nodes to communicate according to certain measurable expectations
<xref target="RFC9544"/>.  For example, an SLA might state that any given
SLO applies to at least a certain percentage of packets, allowing for
a certain level of packet loss and exceeding packet delay threshold
to take place.  For example, an SLA might establish a multi-tiered SLO
of end-to-end latency as follows:</t>
        <ul spacing="normal">
          <li>
            <t>Not to exceed 30 ms for any packet.</t>
          </li>
          <li>
            <t>Not to exceed 25 ms for 99.999% of packets.</t>
          </li>
          <li>
            <t>Not to exceed 20 ms for 99% of packets.</t>
          </li>
        </ul>
        <t>This SLA information can be bound with two SAPs or multiple SAPs defined in <xref target="RFC9408"/>,
so that the service orchestration layer can use these interfaces to commit the
delivery of a service on specific point-to-point service topology or point to
multi-point topology. When a given SLO threshold is violated, a network incident
(or customer incident <xref target="TMF724A"/> associated with an L3VPN service) may be derived.</t>
      </section>
      <section anchor="multi-layer-fault-demarcation">
        <name>Multi-layer Fault Demarcation</name>
        <t>When a fault occurs in a network that contains both packet layer
devices and optical-layer devices, it may cause correlative faults in
both layers, i.e., packet layer and optical layer.  Specifically,
fault propagation could be classified into three typical types.
First, faults occurring at a packet layer device might further cause fault
at an optical-layer device (e.g., Wavelength Division Multiplexing (WDM) client fault).
Second, faults occurring at an optical-layer device might further cause faults
at a packet layer device (e.g., Layer 3 link down).  Third, faults occurring at
the inter-layer link between a packet layer device and an optical-layer device
might further cause faults at both devices.  Multiple operation teams are usually
needed to first analyse a large amount of alarms (triggered by the
above-mentioned faults) from single network layer (either packet layer or
optical layer) independently, then cooperate to locate the Probable Root Cause
through manually analyzing multi-layer topology data and service data,
thus fault demarcation becomes more complex and time-consuming in
multi-layer scenario than in single-layer scenario.</t>
        <t>With the help of Network Incident Management, the management systems first
automatically analyze Probable Root Cause of the alarms at each layer
and report corresponding network incidents to the multi-layer, multi-domain
management system, then such management system comprehensively analyzes the
topology relationship and service relationship between the Probable Root Causes of
both layers. The inner relationship among the alarms will be identified
and finally the Probable Root Cause will be located among multiple layers.
By cooperating with a test tool that checks fiber optic cables (e.g.,the
integrated Optical time-domain reflectometer (OTDR)) embedded within the
network device, we can determine the target optical exchange station before
site visits. Therefore, the overall fault demarcation process is simplified
and automated, the analysis result could be reported and visualized in time.
In this case, operation teams only have to confirm the analyzed result and
dispatch site engineers to perform relevant maintenance actions (e.g., splice
fiber) based on the Probable Root Cause.</t>
      </section>
    </section>
    <section anchor="network-incident-management-architecture">
      <name>Network Incident Management Architecture</name>
      <figure anchor="arch">
        <name>Network Incident Management Architecture</name>
        <artwork align="center"><![CDATA[
    +-------------------------------------------------+
    |                                                 |
    |                                                 |
    |               Incident  Client                  |
    |                                                 |
    |                                                 |
    +----^------------+------------+------------+-----+
         |            |            |            |
         |Incident    |Incident    |Incident    |Incident
         |Notification|  Ack       |Diagnose    |Resolve
         |            |            |            |
         |            |            |            |
         |            |            |            |
    +----+------------V------------V------------V-----+
    |                                                 |
    |                                                 |
    |                                                 |
    |                                                 |
    |                                                 |
    |                                                 |
    |                Incident Server                  |
    |                                                 |
    |                                                 |
    |                                                 |
    |                                                 |
    |                                                 |
    |                                                 |
    +----^-----------^-------------^------------^-----+
         |           |             |            |
         |           |             |            |
         |Alarm      |Abnormal     |Network     |Network
         |Report     |Operation    |Performance |Diagnosis
         |           | Report      |Metrics/    |using
         |           |             |Telemetry   |OAM Test
         |           |             |            |
         |           |             |            |
+--------+-----------+-------------|------------V-------+
|                                                       |
|                                                       |
|          Network in the Autonomous Domain             |
|                                                       |
+-------------------------------------------------------+
]]></artwork>
      </figure>
      <t><xref target="arch"/> illustrates the Network Incident Management architecture.  Two key
components for the Network Incident Management are the Incident Client
and the Incident Server.</t>
      <t>The Incident Server can be deployed in network operation platforms, network analytic
platforms, controllers <xref target="RFC8969"/> in each domain and provides functionality such as network
incident identification, report, diagnosis, resolution, or querying for the network
incident lifecycle management.</t>
      <t>The Incident Client can be deployed within a single domain as the Incident Server or across domains
with the global view of network data. It can be deployed either in the same network operation
platforms, network analytic platforms, controllers as the Incident Server within a single domain, or
at the upper-layer network operation platforms, network analytic platforms or controllers
(i.e., multi-domain controllers), to invoke the functionalities provided by the Incident Server in
each domain to meet business requirements of the fault management.</t>
      <t>A typical workflow of network incident lifecycle management is as follows:</t>
      <ul spacing="normal">
        <li>
          <t>Some alarm or abnormal operations, network performance metrics, network diagnosis information
<xref target="I-D.ietf-opsawg-scheduling-oam-tests"/> are reported from the network to the Incident Server.
The Incident Server receives these alarms/abnormal operations/metrics and try to analyze the
correlation of them, e.g., generate a symptom if some metrics are evaluated as unhealthy, the
Probable Root Cause can be detected based on the data correlation analysis. If a network incident
is identified, the "incident-notification" notification will be reported to the Incident Client. The
impact of network services will be further analyzed and will update the network incident if
the network service is impacted.</t>
        </li>
        <li>
          <t>Incident Client receives the network incident from the "incident-notification" notification
reported by Incident Server, and acknowledges it with the subsequent 'incident-acknowledge' RPC operation.
The Incident Client may further invoke the 'incident-diagnose' RPC to diagnose this network
incident to find the Probable Root Causes.</t>
        </li>
        <li>
          <t>If the Probable Root Causes have been found, the Incident Client can resolve this
network incident by invoking the 'incident-resolve' RPC operation to ask the Incident Server to resolve it,
 or dispatching a troubleshooting ticket or using other network functions (routing calculation,
configuration, etc.) without being known by the Incident Server.</t>
        </li>
        <li>
          <t>In case of the 'incident-resolve' RPC operation invoked by the Incident Client, the Incident Server
will monitor the status of the network incident and update the status of network incident to 'cleared'
if the incident can be fixed. For more detailed workflow, please refer to section 5.3.</t>
        </li>
      </ul>
    </section>
    <section anchor="functional-interface-requirements-between-the-client-and-the-server">
      <name>Functional Interface Requirements between the Client and the Server</name>
      <section anchor="incident-identification">
        <name>Incident Identification</name>
        <t>As depicted in <xref target="ident"/>, multiple alarms, metrics, or hybrid can be
aggregated into a network incident after analysis.</t>
        <figure anchor="ident">
          <name>Incident Identification</name>
          <artwork align="center"><![CDATA[
   +--------------+
+--|  Incident1   |
|  +--+-----------+
|     |  +-----------+
|     +--+  alarm1   |
|     |  +-----------+
|     |
|     |  +-----------+
|     +--+  alarm2   |
|     |  +-----------+
|     |
|     |  +-----------+
|     +--+  alarm3   |
|        +-----------+
|  +--------------+
+--|  Incident2   |
|  +--+-----------+
|     |  +-----------+
|     +--+  metric1  |
|     |  +-----------+
|     |  +-----------+
|     +--+  metric2  |
|        +-----------+
|
|  +--------------+
+--|  Incident3   |
|  +--+-----------+
|     |  +-----------+
|     +--+ alarm1    |
|     |  +-----------+
|     |  +-----------+
|     +--| metric1   |
|        +-----------+
]]></artwork>
        </figure>
        <t>The Incident Server is capable of identifying
network incidents.  Multiple alarms, metrics and other information are
reported to the Incident Server, and the server needs to analyze it and find
out the correlations of them, if the correlation match the network incident
rules, network incident is identified, and reported to the client.
If the network incident is repeated many times, the problem needs to be
raised based on the incident and the operator's policy.
Service Impact Assessment <bcp14>SHOULD</bcp14> be performed if a network incident is identified,
and the content of network incident <bcp14>SHOULD</bcp14> be updated if impacted network
services are detected.</t>
        <t>AI/ML may be used to identify the network incident.  Expert system and online
learning can help AI to identify the correlation of alarms, metrics
and other information by time-base correlation algorithm, topology-based
correlation algorithm, etc.  For example, if the interface is down, then
many protocol alarms will be reported, AI may find some correlations within the
raised alarms.  These new correlations will be put into the knowledge base
<xref target="I-D.mackey-nmop-kg-for-netops"/>, and the network incident will be identified
faster according to knowledge base next time.</t>
        <figure anchor="exam1">
          <name>Example 1 of Network Incident Identification</name>
          <artwork align="center"><![CDATA[
        +----------------------+
        |                      |
        |     Orchestrator     |
        |                      |
        +--------^-------------+
                 |VPN A Unavailable
                 |
         +-------+------------+
         |                    |
         |     Controller     |
         |                    |
         |                    |
         +-^-^------------^---+
           | |            |
       IGP | |Interface   |IGP Peer
      Down | |Down        | Abnormal
           | |            |
VPN A      | |            |
+----------+-+------------+-------------------------+
| \  +---+       ++-++         +-+-+        +---+  /|
|  \ |   |       |   |         |   |        |   | / |
|   \|PE1+-------| P1+X--------|P2 +--------|PE2|/  |
|    +---+       +---+         +---+        +---+   |
+---------------------------------------------------+
]]></artwork>
        </figure>
        <t>As described in <xref target="exam1"/>, VPN A a is deployed from PE1 to PE2, if an
interface of P1 is going down, many alarms are triggered, such as
interface down, IGP down, and IGP peer abnormal from P2.</t>
        <t>These alarms are aggregated and analyzed by the controller/Incident
Server, and then the network incident 'VPN unavailable' is triggered
by the controller/Incident Server. If the network incident 'VPN unavailable'
is repeated, the problem can be raised.</t>
        <t>Note that Incident Server within the controller can rely on data correlation
technology such as Service Impact Assessment and data analytic component to evaluate
the real effect on the relevant service and understand whether lower level or
device level network anomaly has impact on the service (e.g., IGP down).</t>
        <figure anchor="exam2">
          <name>Example 2 of Network Incident Identification</name>
          <artwork align="center"><![CDATA[
         +----------------------+
         |                      |
         |     Orchestrator     |
         |                      |
        +----------+-----------+
                   |VPN A Degradation
                   |
         +---------+----------+
         |                    |
         |     controller     |
         |                    |
         |                    |
         +--^------------^----+
            |            |
            |Packet      |Path Delay
            |Loss        |
            |            |
VPN A       |            |
+-----------+------------+---------------------------+
| \  +---+       ++-++         +-+-+        +---+  / |
|  \ |   |       |   |         |   |        |   | /  |
|   \|PE1+-------|P1 +---------|P2 +--------|PE2|/   |
|    +---+       +---+         +---+        +---+    |
+----------------------------------------------------+
]]></artwork>
        </figure>
        <t>As described in <xref target="exam2"/>, controller collect the network metrics from
network elements, it finds the packet loss of P1 and the path delay
of P2 exceed the thresholds, a network incident 'VPN A degradation' may be
triggered after the Service Impact Assessment.</t>
      </section>
      <section anchor="incident-diagnosis">
        <name>Incident Diagnosis</name>
        <t>After a network incident is reported to the network Incident Client, the
Incident Client may diagnose the incident to determine the Probable Root Cause.
Some diagnosis operations may affect the running network services.  The
Incident Client can choose not to perform that diagnosis operation after
determining the impact is not trivial.  The Incident Server can also perform
self-diagnosis.  However, the self-diagnosis <bcp14>MUST NOT</bcp14> affect the running
network services.  Possible diagnosis methods include link reachability
detection, link quality detection, alarm/log analysis, and short-term
fine-grained monitoring of network quality metrics, etc.</t>
      </section>
      <section anchor="incident-resolution">
        <name>Incident Resolution</name>
        <t>After the Probable Root Cause is diagnosed, the Incident Client may resolve the
network incident.  The Incident Client may choose to resolve the network
incident by invoking other functions, such as routing calculation function,
configuration function, dispatching a ticket or asking the server to resolve it.
Generally, the Incident Client would attempt to directly resolve the Probable
Root Cause.  If the Probable Root Cause cannot be resolved, an alternative
solution <bcp14>SHOULD</bcp14> be sought.  For example, if a network incident caused by a
physical component failure and cannot be automatically resolved, the standby
link can be used to bypass the faulty component.</t>
        <t>Incident Server monitors the status of the network incident, if the faults
are fixed, the Incident Server will update the status of network incident to
'cleared', and report the updated network incident to the client. Please refer
to Section 6.2 for the Incident Lifecycle and its status.</t>
        <t>Network incident resolution may affect the running network services. The
client can choose not to perform those operations based on operator's policy
after determining the impact is not trivial.</t>
      </section>
    </section>
    <section anchor="incident-data-model-concepts">
      <name>Incident Data Model Concepts</name>
      <section anchor="identifying-the-incident-instance">
        <name>Identifying the Incident Instance</name>
        <t>An 'incident-no' is used as an identifier of an incident instance, if
an incident instance is identified, a new 'incident-no' is created.
The 'incident-no' <bcp14>MUST</bcp14> be unique in the whole system.</t>
      </section>
      <section anchor="the-incident-lifecycle">
        <name>The Incident Lifecycle</name>
        <t>The network incident model clearly separates network incident instance lifecycle
from operator incident lifecycle:</t>
        <ul spacing="normal">
          <li>
            <t>Network incident instance lifecycle: The network incident instrumentation
that controls whether a network incident is 'raised', 'updated', or 'cleared'.</t>
          </li>
          <li>
            <t>Operator incident lifecycle: Operators acting upon the network incident with RPCs
like 'incident-acknowledge', 'incident-diagnose' and 'incident-resolve'.</t>
          </li>
        </ul>
        <section anchor="network-incident-instance-lifecycle">
          <name>Network Incident Instance Lifecycle</name>
          <t>From a network incident instance perspective, a network incident can have the
following lifecycle: 'raised', 'updated', 'cleared'.  When a network
incident instance is first generated, the status is 'raised'.  If the
status changes after the network incident instance is generated, (for example,
self-diagnosis, diagnosis command issued by the client, or any other
condition causes the status to change but does not reach the 'cleared'
level) , the status changes to 'updated'.  When a network incident is successfully
resolved, the status changes to 'cleared'.</t>
        </section>
        <section anchor="operator-incident-lifecycle">
          <name>Operator Incident Lifecycle</name>
          <t>Operators can act upon network incident with network incident RPCs. From an operator
perspective, the lifecycle of a network incident instance includes 'acknowledged',
'diagnosed', and 'resolved'.</t>
          <t>When a network incident instance is generated, the operator <bcp14>SHOULD</bcp14> acknowledge the
network incident with 'incident-acknowledge' RPC. And then the operator attempts to
diagnose the network incident with 'incident-diagnose' PRC (for example, find out the
Probable Root Cause and affected components). Diagnosis is not mandatory. If the Probable
Root Cause and affected components are known when the network incident is generated,
diagnosis is not required.  After locating the Probable Root Cause and affected components,
operator can try to resolve the network incident by invoking 'incident-resolve' RPC.</t>
        </section>
      </section>
    </section>
    <section anchor="incident-data-model-design">
      <name>Incident Data Model Design</name>
      <section anchor="overview">
        <name>Overview</name>
        <t>There is one YANG module in the "ietf-incident" model, which defines
technology independent abstraction of network incident construct for
alarm, log, performance metrics, etc.  The information reported in
the network incident include Probable Root Cause, priority, impact,
suggestion, etc.</t>
        <t>At the top of "ietf-incident" module is the Network Incident.
Network incident is represented as a list and indexed by "name type incident-qualifier".
Each Network Incident is associated with a network service instance, domain and
sources.  Under sources, there is one or more sources.  Each source
corresponds to a node defined in the network topology model and network
resource in the network device, e.g., interface.  In addition, "ietf-incident"
supports one general notification to report network incident state changes and
three RPCs to manage the network incidents.</t>
        <figure anchor="incident-tree">
          <name>Incident YANG Tree Diagram</name>
          <artwork align="center"><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

module: ietf-incident
  +--ro incidents
     +--ro incident* [name type incident-qualifier]
        +--ro incident-no           uint64
        +--ro name                  string
        +--ro type                  identityref
        +--ro incident-qualifier    string
        +--ro service-instance*     string
        +--ro domain                identityref
        +--ro priority              incident-priority
        +--ro status?               enumeration
        +--ro ack-status?           enumeration
        +--ro category              identityref
        +--ro detail?               string
        +--ro resolve-advice?       string
        +--ro sources
        |  +--ro source* [node-ref]
        |     +--ro node-ref       -> /nw:networks/network[nw:\
                    network-id=current()/../network-ref]/node/node-id
        |     +--ro network-ref?   -> /nw:networks/network/network-id
        |     +--ro resource* [name]
        |        +--ro name    al:resource
        +--ro probable-causes
        |  +--ro probable-cause* [node-ref]
        |     +--ro node-ref       -> /nw:networks/network[nw:\
                    network-id=current()/../network-ref]/node/node-id
        |     +--ro network-ref?   -> /nw:networks/network/network-id
        |     +--ro resource* [name]
        |     |  +--ro name          al:resource
        |     |  +--ro cause-name?   string
        |     |  +--ro detail?       string
        |     +--ro cause-name?    string
        |     +--ro detail?        string
        +--ro probable-events
        |  +--ro probable-event* [type event-id]
        |     +--ro type        -> ../../../events/event/type
        |     +--ro event-id    -> ../../../events/event[type = \
                                          current()/../type]/event-id
        +--ro events
        |  +--ro event* [type event-id]
        |     +--ro type                  identityref
        |     +--ro event-id              string
        |     +--ro (event-type-info)?
        |        +--:(alarm)
        |        |  +--ro alarm
        |        |     +--ro resource?               -> /al:alarms/\
                                            alarm-list/alarm/resource
        |        |     +--ro alarm-type-id?          -> /al:alarms/\
  alarm-list/alarm[al:resource = current()/../resource]/alarm-type-id
        |        |     +--ro alarm-type-qualifier?   -> /al:alarms/\
alarm-list/alarm[al:resource = current()/../resource][al:alarm-type-\
             id = current()/../alarm-type-id]/al:alarm-type-qualifier
        |        +--:(metric)
        |        |  +--ro metric
        |        |     +--ro resource?          al:resource
        |        |     +--ro metric-name?       string
        |        |     +--ro threshold-value?   decimal64
        |        |     +--ro observed-value?    decimal64
        |        +--:(notification)
        |           +--ro notification
        |              +--ro event-time?        yang:date-and-time
        |              +--ro hostname?          inet:host
        |              +--ro sequence-number?   yang:counter32
        +--ro raise-time?           yang:date-and-time
        +--ro occur-time?           yang:date-and-time
        +--ro clear-time?           yang:date-and-time
        +--ro ack-time?             yang:date-and-time
        +--ro last-updated?         yang:date-and-time

  rpcs:
    +---x incident-acknowledge
    |  +---w input
    |     +---w incident-no*   incident-ref
    +---x incident-diagnose
    |  +---w input
    |     +---w incident-no*   incident-ref
    +---x incident-resolve
       +---w input
          +---w incident-no*   incident-ref

  notifications:
    +---n incident-notification
       +--ro incident-no           incident-ref
       +--ro name?                 string
       +--ro type?                 identityref
       +--ro incident-qualifier?   string
       +--ro service-instance*     string
       +--ro domain                identityref
       +--ro priority              incident-priority
       +--ro status?               enumeration
       +--ro ack-status?           enumeration
       +--ro category              identityref
       +--ro detail?               string
       +--ro resolve-advice?       string
       +--ro sources
       |  +--ro source* [node-ref]
       |     +--ro node-ref       -> /nw:networks/network[nw:network\
                           -id=current()/../network-ref]/node/node-id
       |     +--ro network-ref?   -> /nw:networks/network/network-id
       |     +--ro resource* [name]
       |        +--ro name    al:resource
       +--ro probable-causes
       |  +--ro probable-cause* [node-ref]
       |     +--ro node-ref       -> /nw:networks/network[nw:network\
                           -id=current()/../network-ref]/node/node-id
       |     +--ro network-ref?   -> /nw:networks/network/network-id
       |     +--ro resource* [name]
       |     |  +--ro name          al:resource
       |     |  +--ro cause-name?   string
       |     |  +--ro detail?       string
       |     +--ro cause-name?    string
       |     +--ro detail?        string
       +--ro probable-events
       |  +--ro probable-event* [type event-id]
       |     +--ro type        -> ../../../events/event/type
       |     +--ro event-id    -> ../../../events/event[type = \
                                          current()/../type]/event-id
       +--ro events
       |  +--ro event* [type event-id]
       |     +--ro type                  identityref
       |     +--ro event-id              string
       |     +--ro (event-type-info)?
       |        +--:(alarm)
       |        |  +--ro alarm
       |        |     +--ro resource?               -> /al:alarms/\
                                            alarm-list/alarm/resource
       |        |     +--ro alarm-type-id?          -> /al:alarms/\
  alarm-list/alarm[al:resource = current()/../resource]/alarm-type-id
       |        |     +--ro alarm-type-qualifier?   -> /al:alarms/\
alarm-list/alarm[al:resource = current()/../resource][al:alarm-type-\
             id = current()/../alarm-type-id]/al:alarm-type-qualifier
       |        +--:(metric)
       |        |  +--ro metric
       |        |     +--ro resource?          al:resource
       |        |     +--ro metric-name?       string
       |        |     +--ro threshold-value?   decimal64
       |        |     +--ro observed-value?    decimal64
       |        +--:(notification)
       |           +--ro notification
       |              +--ro event-time?        yang:date-and-time
       |              +--ro hostname?          inet:host
       |              +--ro sequence-number?   yang:counter32
       +--ro time?                 yang:date-and-time
]]></artwork>
        </figure>
      </section>
      <section anchor="incident-notifications">
        <name>Incident Notifications</name>
        <artwork><![CDATA[
  notifications:
    +---n incident-notification
       +--ro incident-no           incident-ref
       +--ro name?                 string
       +--ro type?                 identityref
       +--ro incident-qualifier?   string
       +--ro service-instance*     string
       +--ro domain                identityref
       +--ro priority              incident-priority
       +--ro status?               enumeration
       +--ro ack-status?           enumeration
       +--ro category              identityref
       +--ro detail?               string
       +--ro resolve-advice?       string
       +--ro sources
       |  +--ro source* [node-ref]
       |     +--ro node-ref       leafref
       |     +--ro network-ref?   leafref
       |     +--ro resource* [name]
       |        +--ro name    al:resource
       +--ro probable-causes
       |  +--ro probable-cause* [node-ref]
       |     +--ro node-ref       leafref
       |     +--ro network-ref?   leafref
       |     +--ro resource* [name]
       |     |  +--ro name          al:resource
       |     |  +--ro cause-name?   string
       |     |  +--ro detail?       string
       |     +--ro cause-name?    string
       |     +--ro detail?        string
       +--ro probable-events
       |  +--ro probable-event* [type event-id]
       |     +--ro type        leafref
       |     +--ro event-id    leafref
       +--ro events
       |  +--ro event* [type event-id]
       |     +--ro type                  identityref
       |     +--ro event-id              string
       |     +--ro (event-type-info)?
       |        +--:(alarm)
       |        |  +--ro alarm
       |        |     +--ro resource?               leafref
       |        |     +--ro alarm-type-id?          leafref
       |        |     +--ro alarm-type-qualifier?   leafref
       |        +--:(metric)
       |        |  +--ro metric
       |        |     +--ro resource?          al:resource
       |        |     +--ro metric-name?       string
       |        |     +--ro threshold-value?   decimal64
       |        |     +--ro observed-value?    decimal64
       |        +--:(notification)
       |           +--ro notification
       |              +--ro event-time?        yang:date-and-time
       |              +--ro hostname?          inet:host
       |              +--ro sequence-number?   yang:counter32
       +--ro time?                 yang:date-and-time
]]></artwork>
        <t>A general notification, "incident-notification", is provided here.
When a network incident instance is identified, the notification is
sent from the incident server to the incident client .  After a notification
is generated, if the incident server performs self diagnosis or the Incident
Client uses the interfaces provided by the Incident Server to deliver
diagnosis and resolution actions, the notification update behavior is triggered,
for example, the Probable Root Cause objects and affected objects are updated.
When a network incident is successfully resolved, the status of the network
incident would be set to 'cleared'.</t>
      </section>
      <section anchor="incident-acknowledge">
        <name>Incident Acknowledge</name>
        <artwork><![CDATA[
rpcs:
+---x incident-acknowledge
|  +---w input
|  |  +---w incident-no*   incident-ref
]]></artwork>
        <t>After an incident is generated, updated, or cleared, the operator
confirms the incident to ensure that the client knows the incident.</t>
        <t>In some scenarios where automatic diagnosis and resolution are supported, the
status of an incident may be updated multiple times or even automatically
resolved. Therefore the 'incident-acknowledge' RPC can confirm multiple incidents
at a time.</t>
      </section>
      <section anchor="incident-diagnose">
        <name>Incident Diagnose</name>
        <artwork><![CDATA[
rpcs:
+---x incident-diagnose
|  +---w input
|  |  +---w incident-no*   incident-ref
]]></artwork>
        <t>After a network incident is generated, 'incident-diagnose' RPC can be used to
diagnose the network incident and locate the Probable Root Causes.  On-demand
Diagnosis can be performed on some detection tasks, such as bfd detection,
flow detection, telemetry collection, short-term threshold alarm,
configuration error check, or test packet injection.</t>
        <t>After the on-demand diagnosis is performed successfully, a separate network
incident update notification will be triggered to report the latest status of
the network incident asynchronously.</t>
      </section>
      <section anchor="incident-resolution-1">
        <name>Incident Resolution</name>
        <artwork><![CDATA[
rpcs:
+---x incident-resolve
   +---w input
   |  +---w incident-no*   incident-ref
]]></artwork>
        <t>After the Probable Root Causes and impacts are determined, incident-resolve
RPC can be used to resolve the incident (if the server can resolve
it).  How to resolve an incident instance is out of the scope of this
document.</t>
        <t>'incident-resolve' RPC allows multiple network incident instances to be
resolved at a time.  If a network incident instance is successfully
resolved, a separate notification is triggered to update the network incident
status to 'cleared'.  If the network incident content is changed during this
process, a notification update will be triggered.</t>
      </section>
      <section anchor="rpc-failure">
        <name>RPC Failure</name>
        <t>If the RPC fails, the RPC error response <bcp14>MUST</bcp14> indicate the reason for the
failure. The structures defined in this document <bcp14>MUST</bcp14> encode specific errors
and be inserted in the error response to indicate the reason for the failure.</t>
        <t>The tree diagram <xref target="RFC8340"/> for structures is defined as follows:</t>
        <artwork><![CDATA[
  structure incident-acknowledge-error-info:
    +-- incident-acknowledge-error-info
       +-- incident-no?   uint64
       +-- reason?        identityref
       +-- description?   string
  structure incident-diagnose-error-info:
    +-- incident-diagnose-error-info
       +-- incident-no?   uint64
       +-- reason?        identityref
       +-- description?   string
  structure incident-resolve-error-info:
    +-- incident-resolve-error-info
       +-- incident-no?   uint64
       +-- reason?        identityref
       +-- description?   string
]]></artwork>
        <t>Valid errors that can occur for each structure defined in this document
are described as follows:</t>
        <artwork><![CDATA[
incident-acknowledge-error-info
-----------------------------------
repeated-acknowledge
incident-not-found

incident-diagnose-error-info
-----------------------------------
probable-cause-unlocated
permission-denied
operation-timeout
resource-unavailable
incident-not-found

incident-resolve-error-info
-----------------------------------
probable-cause-unresolved
permission-denied
operation-timeout
resource-unavailable
incident-not-found
]]></artwork>
      </section>
    </section>
    <section anchor="network-incident-management-yang-module">
      <name>Network Incident Management YANG Module</name>
      <t>This module imports types from <xref target="RFC9911"/>, <xref target="RFC8632"/>, <xref target="RFC8345"/>, <xref target="RFC8791"/>
and uses types defined in <xref target="RFC9376"/>, <xref target="RFC1136"/>, <xref target="RFC6373"/>, <xref target="RFC8348"/>,
<xref target="RFC8632"/>, <xref target="RFC5277"/>, <xref target="RFC9940"/>, <xref target="RFC9375"/>, <xref target="RFC5277"/>, <xref target="RFC8639"/>,
<xref target="RFC8641"/>, <xref target="I-D.ietf-netconf-notif-envelope"/>.</t>
      <sourcecode markers="true" name="ietf-incident@2026-07-30.yang"><![CDATA[
module ietf-incident {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-incident";
  prefix inc;
  
  import ietf-yang-types {
    prefix yang;
    reference
      "RFC 9911: Common YANG Data Types, Section 3";
  }
  import ietf-inet-types {
    prefix inet;
    reference
      "RFC 9911: Common YANG Data Types, Section 4";
  }
  import ietf-alarms {
    prefix al;
    reference
      "RFC 8632: A YANG Data Model for Alarm Management";
  }
  import ietf-network {
    prefix nw;
    reference
      "RFC 8345: A YANG Data Model for Network Topologies";
  }
  import ietf-yang-structure-ext {
    prefix sx;
    reference
      "RFC 8791: YANG Data Structure Extensions";
  }

  organization
    "IETF NMOP Working Group";
  contact
    "WG Web:   https://datatracker.ietf.org/wg/nmop/;
     WG List:  NMOP <mailto:nmop@ietf.org>

     Author:   Chong Feng
               <mailto:fengchongllly@gmail.com>
     Author:   Tong Hu
               <mailto:hutong@cmhi.chinamobile.com>
     Author:   Luis Miguel Contreras Murillo
               <mailto:luismiguel.contrerasmurillo@telefonica.com>
     Author:  Qin Wu
               <mailto:bill.wu@huawei.com>
     Author:   Nigel Davis
               <mailto:ndavis@ciena.com>";
  description
    "This module defines the interfaces for incident management
     lifecycle.

     This module is intended for the following use cases:
     * incident lifecycle management:
       - incident report: report incident instance to client
                          when an incident instance is detected.
       - incident acknowledge: acknowledge an incident instance.
       - incident diagnose: diagnose an incident instance.
       - incident resolve: resolve an incident instance.

     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).

     All revisions of IETF and IANA published modules can be found
     at the YANG Parameters registry group
     (https://www.iana.org/assignments/yang-parameters).

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

     The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL
     NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED',
     'MAY', and 'OPTIONAL' in this document are to be interpreted as
     described in BCP 14 (RFC 2119) (RFC 8174) when, and only when,
     they appear in all capitals, as shown here.";

  revision 2026-07-30 {
    description
      "Initial version.";
    reference
      "RFC XXXX: A YANG Data Model for Network Incident Management.";
  }

  // Identities

  identity incident-domain {
    description
      "The base identity to indicate the domain of
       an incident.";
  }

  identity single-domain {
    base incident-domain;
    description
      "Indicates single domain.";
  }

  identity access {
    base single-domain;
    description
      "Indicates access domain.";
  }

  identity ran {
    base access;
    description
      "Indicates a radio access network domain.";
  }

  identity transport {
    base single-domain;
    description
      "Indicates a transport domain.";
  }

  identity otn {
    base transport;
    description
      "Indicates an optical transport network domain.";
    reference
      "RFC 9376: Applicability of GMPLS for beyond 100 Gbit/s Optical
                Transport Network";
  }

  identity ip {
    base single-domain;
    description
      "Indicates an IP domain.";
    reference
      "RFC 1136: Administrative Domains and Routing Domains A Model
                 for Routing in the Internet";
  }

  identity ptn {
    base ip;
    description
      "Indicates a packet transport network domain.";
    reference
      "RFC 6373: MPLS Transport Profile (MPLS-TP) Control Plane
                 Framework";
  }

  identity cross-domain {
    base incident-domain;
    description
      "Indicates a cross domain.";
  }

  identity incident-category {
    description
      "The abstract identity for incident category.";
  }

  identity device {
    base incident-category;
    description
      "Device category.";
    reference
      "RFC 8348: A YANG Data Model for Hardware Management";
  }

  identity power-environment {
    base device;
    description
      "Power environment category.";
    reference
      "RFC 8348: A YANG Data Model for Hardware Management";
  }

  identity device-hardware {
    base device;
    description
      "Device hardware category.";
    reference
      "RFC 8348: A YANG Data Model for Hardware Management";
  }

  identity device-software {
    base device;
    description
      "Device software category.";
    reference
      "RFC 8348: A YANG Data Model for Hardware Management";
  }

  identity line-card {
    base device-hardware;
    description
      "Line card category.";
    reference
      "RFC 8348: A YANG Data Model for Hardware Management";
  }

  identity maintenance {
    base incident-category;
    description
      "Maintenance category.";
  }

  identity network {
    base incident-category;
    description
      "Network category.";
  }

  identity protocol {
    base incident-category;
    description
      "Protocol category.";
  }

  identity overlay {
    base incident-category;
    description
      "Overlay category.";
  }

  identity vm {
    base incident-category;
    description
      "Virtual Machine category.";
  }

  identity event-type {
    description
      "The abstract identity for Event type.";
    reference
      "RFC 9940: Some Key Terms for Network Fault and Problem
       Management";
  }

  identity alarm {
    base event-type;
    description
      "Alarm event type.";
    reference
      "RFC 8632: A YANG Data Model for Alarm Management";
  }

  identity notif {
    base event-type;
    description
      "Notification event type.";
    reference
      "RFC 5277: NETCONF Event Notifications and
       RFC 8639: Subscription to YANG Notifications and
       RFC 8641: Subscription to YANG Notifications for
                 Datastore Updates and
       I-D.ietf-netconf-notif-envelope: Extensible YANG
                     Model for YANG-Push Notifications";
  }

  identity metric {
    base event-type;
    description
      "Metric event type.";
    reference
      "RFC 9375: A YANG Data Model for Network and VPN
                 Service Performance Monitoring";
  }

  identity unknown {
    base event-type;
    description
      "Unknown event type.";
  }

  identity incident-type {
    description
      "The abstract identity for Incident type.";
  }

  identity problem {
    base incident-type;
    description
      "It indicates the class of the incident is a problem
       (i.e., cause of the incident) for example an interface
       fails to work.";
    reference
      "RFC 9940: Some Key Terms for Network Fault and Problem
                 Management";
  }

  identity sla-violation {
    base incident-type;
    description
      "It indicates the class of the incident is an SLA
       violation, for example high CPU rate may cause
       a fault in the future.";
  }

  identity acknowledge-error {
    description
      "Base identity for the problem found while attempting
       to fulfill an 'incident-acknowledge' RPC request.";
  }

  identity diagnose-error {
    description
      "Base identity for the problem found while attempting
       to fulfill an 'incident-diagnose' RPC request.";
  }

  identity resolve-error {
    description
      "Base identity for the problem found while attempting
       to fulfill an 'incident-resolve' RPC request.";
  }

  identity repeated-acknowledge {
    base acknowledge-error;
    description
      "The incident referred to has already been acknowledged.";
  }

  identity incident-not-found {
    base acknowledge-error;
    base diagnose-error;
    base resolve-error;
    description
      "The incident is triggered when the incident does not
       exist in the datastore and a Client performs the RPCs.";
  }

  identity probable-cause-unlocated {
    base diagnose-error;
    description
      "Fail to locate the Probable Root Causes when performing the
       diagnosis operation. The detailed reason MUST be included
       in the 'description'.";
  }

  identity probable-cause-unresolved {
    base resolve-error;
    description
      "Fail to resolve the Probable Root Causes when performing the
       resolution operation. The detailed reason MUST be included
       in the 'description'.";
  }

  identity permission-denied {
    base diagnose-error;
    base resolve-error;
    description
      "The permission required for performing specific
       detection/resolution task is not granted.";
  }

  identity operation-timeout {
    base diagnose-error;
    base resolve-error;
    description
      "The diagnosis/resolution time exceeds the preset time.";
  }

  identity resource-unavailable {
    base diagnose-error;
    base resolve-error;
    description
      "The resource is unavailable to perform
       the diagnosis/resolution operation.";
  }

  // Typedefs

  typedef incident-priority {
    type enumeration {
      enum critical {
        description
          "The 'critical' priority level indicates that a service-
          affecting condition has occurred and an immediate
          corrective action is required.  Such a priority can be
          reported, for example, when a resource becomes totally out
          of service and its capability must be restored.";
      }
      enum high {
        description
          "The 'high' priority level indicates that a service-
          affecting condition has developed and an urgent corrective
          action is required.  Such a priority can be reported, for
          example, when there is a severe degradation in the
          capability of the resource and its full capability must be
          restored.";
      }
      enum medium {
        description
          "The 'medium' severity level indicates the existence of a
          non-service-affecting fault condition and that corrective
          action should be taken in order to prevent a more serious
          (for example, service-affecting) fault.  Such a priority
          can be reported, for example, when the detected alarm
          condition is not currently degrading the capacity of the
          resource.";
      }
      enum low {
        description
          "The 'low' priority level indicates the detection of a
          potential or impending service-affecting fault, before any
          significant effects have been felt.  Action should be
          taken to further diagnose (if necessary) and correct the
          problem in order to prevent it from becoming a more
          serious service-affecting fault.";
      }
    }
    description
      "Defines the priority of incident.";
  }

  typedef incident-ref {
    type leafref {
      path "/inc:incidents/inc:incident/inc:incident-no";
      require-instance false;
    }
    description
      "Provides a reference to a network incident using incident-no
       note that incident no is unique but not incident list key.
       The incident-ref is used for correlation between incident no
       and incident list key in the RPCs and Notification.";
  }

  // Groupings

  grouping probable-cause-info {
    description
      "The information of Probable Root Cause.";
    leaf cause-name {
      type string;
      description
        "Specifies the cause name.";
    }
    leaf detail {
      type string;
      description
        "The detail information of the cause.";
    }
  }

  grouping resources-info {
    description
      "The grouping which defines the network
       resources of a node.";
    uses nw:node-ref;
    list resource {
      key "name";
      description
        "The resources of a network node.";
      leaf name {
        type al:resource;
        description
          "Network resource name.";
      }
    }
  }

  grouping incident-time-info {
    description
      "The grouping defines incident time information.";
    leaf raise-time {
      type yang:date-and-time;
      description
        "The time when an incident instance is raised.";
    }
    leaf occur-time {
      type yang:date-and-time;
      mandatory true;
      description
        "The time when an incident instance occurs.
         It's the occur time of the first event during
         incident detection.";
    }
    leaf clear-time {
      type yang:date-and-time;
      description
        "The time when an incident instance is
         resolved.";
    }
    leaf ack-time {
      type yang:date-and-time;
      description
        "The time when an incident instance is
         acknowledged.";
    }
    leaf last-updated {
      type yang:date-and-time;
      description
        "The latest time when an incident instance is
         updated.";
    }
  }

  grouping incident-info {
    description
      "The grouping defines the information of an
       incident.";
    leaf name {
      type string;
      description
        "The name of an incident.";
    }
    leaf type {
      type identityref {
        base incident-type;
      }
      description
        "The type of an incident.";
    }
    leaf incident-qualifier {
      type string;
      description
        "The unique qualifier of an incident instance type.
         This leaf is used when the 'type' leaf cannot
         uniquely identify the incident instance type.  Normally,
         this is not the case, and this leaf is the empty
         string.";
    }
    leaf-list service-instance {
      type string;
      description
        "The related network service instances of
         the incident instance.";
    }
    leaf domain {
      type identityref {
        base incident-domain;
      }
      mandatory true;
      description
        "The domain of an incident.";
    }
    leaf priority {
      type incident-priority;
      mandatory true;
      description
        "The priority of an incident instance.";
    }
    leaf status {
      type enumeration {
        enum raised {
          description
            "An incident instance is raised.";
        }
        enum updated {
          description
            "The information of an incident instance
             is updated.";
        }
        enum cleared {
          description
            "An incident is cleared.";
        }
      }
      description
        "The status of an incident instance.";
    }
    leaf ack-status {
      type enumeration {
        enum acknowledged {
          description
            "The incident has been acknowledged by user.";
        }
        enum unacknowledged {
          description
            "The incident hasn't been acknowledged.";
        }
      }
      description
        "The acknowledge status of an incident.";
    }
    leaf category {
      type identityref {
        base incident-category;
      }
      mandatory true;
      description
        "The category of an incident.";
    }
    leaf detail {
      type string;
      description
        "Detailed information of this incident.";
    }
    leaf resolve-advice {
      type string;
      description
        "The advice to resolve this incident.";
    }
    container sources {
      description
        "The source components.";
      list source {
        key "node-ref";
        description
          "The source components of incident. An Incident might
           be created even if we don't know yet the sources
           (hence we can not populate source list in the sources
           container). Therefore the min-elements for the source
           list is set to 0 which is default value. Once the Incident
           is diagnosed, the source(s) will be populated.";
        uses resources-info;
      }
    }
    container probable-causes {
      description
        "The Probable Root Cause objects.";
      list probable-cause {
        key "node-ref";
        description
          "The Probable Root Causes of incident.";
        uses resources-info {
          augment "resource" {
            description
              "Augment Probable Root Cause information.";
            //if Probable Root Cause object is a resource of a node
            uses probable-cause-info;
          }
        }
        //if Probable Root Cause object is a node
        uses probable-cause-info;
      }
    }
    container probable-events {
      description
        "The Probable Root Cause related events of the incident.";
      list probable-event {
        key "type event-id";
        description
          "The Probable Root Cause related event of the incident.";
        leaf type {
          type leafref {
            path "../../../events/event/type";
          }
          description
            "The event type.";
        }
        leaf event-id {
          type leafref {
            path "../../../events/event[type = current()/../type]"
               + "/event-id";
          }
          description
            "The event identifier, such as uuid,
             sequence number, etc.";
        }
      }
    }
    container events {
      description
        "Related events.";
      list event {
        key "type event-id";
        description
          "Related events.";
        leaf type {
          type identityref {
            base event-type;
          }
          description
            "Event type.";
        }
        leaf event-id {
          type string;
          description
            "The event identifier, such as uuid,
             sequence number, etc.";
        }
        choice event-type-info {
          description
            "Various different event type information.";
          case alarm {
            when "derived-from-or-self(type, 'alarm')" {
              description
                "Only applies when type is alarm.";
            }
            container alarm {
              description
                "Alarm type event.";
              leaf resource {
                type leafref {
                  path "/al:alarms/al:alarm-list/al:alarm"
                     + "/al:resource";
                  require-instance false;
                }
                description
                  "This is an identification of the alarming
                   resource.";
                reference
                  "RFC 8632: A YANG Data Model for Alarm
                   Management";
              }
              leaf alarm-type-id {
                type leafref {
                  path "/al:alarms/al:alarm-list/al:alarm"
                     + "[al:resource = current()/../resource]"
                     + "/al:alarm-type-id";
                  require-instance false;
                }
                description
                  "Alarm type id.";
                reference
                  "RFC 8632: A YANG Data Model for Alarm
                             Management";
              }
              leaf alarm-type-qualifier {
                type leafref {
                  path "/al:alarms/al:alarm-list/al:alarm"
                     + "[al:resource = current()/../resource]"
                     + "[al:alarm-type-id = current()/.."
                     + "/alarm-type-id]/al:alarm-type-qualifier";
                  require-instance false;
                }
                description
                  "Alarm type qualifier.";
                reference
                  "RFC 8632: A YANG Data Model for Alarm
                             Management";
              }
            }
          }
          case metric {
            when "derived-from-or-self(type, 'metric')" {
              description
                "Only applies when type is metric.";
            }
            container metric {
              description
                "Metric type event. Performance metrics
                 exceeding SLO thresholds.";
              leaf resource {
                type al:resource;
                description
                  "This is an identification of the network
                   resource such as interface, where the metric
                   can be collected or measured.";
                reference
                  "RFC 8632: A YANG Data Model for Alarm
                             Management";
              }
              leaf metric-name {
                type string;
                description
                  "Metric Name.";
              }
              leaf threshold-value {
                type decimal64 {
                  fraction-digits 2;
                }
                description
                  "Threshold value for the specific metric.";
              }
              leaf observed-value {
                type decimal64 {
                  fraction-digits 2;
                }
                description
                  "Observed value for the specific metric.";
              }
            }
          }
          case notification {
            when "derived-from-or-self(type, 'notif')" {
              description
                "Only applies when type is notification.";
            }
            container notification {
              description
                "Notification type event.";
              leaf event-time {
                type yang:date-and-time;
                description
                  "The date and time the event was generated by
                   the network node.";
                reference
                  "I-D.ietf-netconf-notif-envelope: Extensible YANG
                   Model for YANG-Push Notifications";
              }
              leaf hostname {
                type inet:host;
                description
                  "The hostname of the network node. This value
                   is usually configured on the node by the
                   administrator to identify the node in the
                   network uniquely.";
                reference
                  "I-D.ietf-netconf-notif-envelope: Extensible YANG
                   Model for YANG-Push Notifications";
              }
              leaf sequence-number {
                type yang:counter32;
                description
                  "Unique sequence number for each published
                   message by the publisher process. The initial
                   number is 1 and counts up by 1 at every
                   published notification message until it reaches
                   4294967295. Then, it wraps around and restarts
                   at 0. The value 0 is used to detect wrap
                   arounds.";
                reference
                  "I-D.ietf-netconf-notif-envelope: Extensible YANG
                   Model for YANG-Push Notifications";
              }
              anydata contents {
                description
                  "This contains the values defined by the
                   'notification' statement unchanged.";
              }
            }
          }
        }
      }
    }
  }

  // RPCs

  rpc incident-acknowledge {
    description
      "This rpc can be used to acknowledge the specified
       incidents.";
    input {
      leaf-list incident-no {
        type incident-ref;
        min-elements 1;
        description
          "The unique number of an incident instance
           based on the incident-no which is corresponding
           to the name type incident-id keys.";
      }
    }
  }

  rpc incident-diagnose {
    description
      "This rpc can be used to diagnose the specified
       incidents. The result of diagnosis will be reported
       by incident notification.";
    input {
      leaf-list incident-no {
        type incident-ref;
        min-elements 1;
        description
          "The unique number of an incident instance
           based on the incident-no which is corresponding
           to the name type incident-id keys.";
      }
    }
  }

  rpc incident-resolve {
    description
      "This rpc can be used to resolve the specified
       incidents. The result of resolution will be reported
       by incident notification.";
    input {
      leaf-list incident-no {
        type incident-ref;
        min-elements 1;
        description
          "The unique number of an incident instance
           based on the incident-no which is corresponding
           to the name type incident-id keys.";
      }
    }
  }

  sx:structure incident-acknowledge-error-info {
    container incident-acknowledge-error-info {
      description
        "This structure data must be inserted in the RPC error
         response to indicate the reason for the
         incident acknowledge failure.";
      leaf incident-no {
        type uint64;
        description
          "Indicate the incident instance identifier that
           fails the operation.";
      }
      leaf reason {
        type identityref {
          base acknowledge-error;
        }
        description
          "Indicates the reason why the operation
           is failed.";
      }
      leaf description {
        type string;
        description
          "Indicates the detailed description about
           the failure.";
      }
    }
  }
  sx:structure incident-diagnose-error-info {
    container incident-diagnose-error-info {
      description
        "This structure data must be inserted in
         the RPC error response to indicate the
         reason for the incident diagnose failure.";
      leaf incident-no {
        type uint64;
        description
          "Indicate the incident instance identifier that
           fails the operation.";
      }
      leaf reason {
        type identityref {
          base diagnose-error;
        }
        description
          "Indicates the reason why the operation
           is failed.";
      }
      leaf description {
        type string;
        description
          "Indicates the detailed description about
           the failure.";
      }
    }
  }
  sx:structure incident-resolve-error-info {
    container incident-resolve-error-info {
      description
        "This structure data must be inserted in
         the RPC error response to indicate the
         reason for the incident resolution failure.";
      leaf incident-no {
        type uint64;
        description
          "Indicate the incident instance identifier that
           fails the operation.";
      }
      leaf reason {
        type identityref {
          base resolve-error;
        }
        description
          "Indicates the reason why the operation is failed.";
      }
      leaf description {
        type string;
        description
          "Indicates the detailed description about the failure.";
      }
    }
  }

  // Notifications

  notification incident-notification {
    description
      "Incident notification. It will be triggered when
       the incident is raised, updated or cleared.";
    leaf incident-no {
      type incident-ref;
      mandatory true;
      description
        "The identifier of an incident instance. With incident-no
         used in both incident-notification and RPCs, an Incident
         Client know which notification is the result of a given
         RPC.";
    }
    uses incident-info;
    leaf time {
      type yang:date-and-time;
      description
        " The time when an incident instance occurs.
         It is the occur time of the first event during
         incident detection.";
    }
  }

  // Data definitions

  container incidents {
    config false;
    description
      "The information of incidents.";
    list incident {
      key "name type incident-qualifier";
      unique "incident-no";
      description
        "The information of incident.";
      leaf incident-no {
        type uint64;
        mandatory true;
        description
          "The unique identifier of the incident
           instance based on the name type incident-qualifier keys.";
      }
      uses incident-info;
      uses incident-time-info;
    }
  }
}
]]></sourcecode>
    </section>
    <section anchor="operational-considerations">
      <name>Operational Considerations</name>
      <t>The "ietf-incident" YANG module introduces an incident-centric
architecture designed to overcome the structural silo of management
systems that handle alarms and performance metrics separately at
different network layers. Operators need to ensure that the underlying management
system feeding this model maintains continuous, real-time read access to
diverse end to end network topology data spanning multiple layers.</t>
      <t>Because accurate multi-layer troubleshooting depends on establishing a global view
of cross-layer dependency relationships, any disruption or stale state in the
underlying network topology discovery mechanisms will directly degrade the accuracy
of the Incident Process's probable root cause identification and service impact
analysis.</t>
      <t>In addition, the YANG module defined in this document is intended to automate and
streamline incident dispatching at the network layer so that integration with
trouble-ticketing management system at the OSS layer is required. Operators should
implement a deterministic translation layer between the "ietf-incident" model
states (e.g., raised, cleared, acknowledged) and external ticket states (e.g., Open,
Assigned, In-Progress, Resolved) to prevent split-brain visibility scenarios where
an incident is closed in the network layer but remains active in the ticketing
system, or vice versa.</t>
      <t>This incident data model states that the tuple (name, type and incident-qualifier)
corresponds to a single incident instance. This means that incident notifications
for the same name and same type and incident-qualifier are matched to update the
same incident instance.  These three leafs are therefore used as the key in
the incident list:</t>
      <artwork><![CDATA[
 list incident {
   key "name type incident-qualifier";
   ...
 }
]]></artwork>
      <t>In the meanwhile, in order to improve processing efficiency, this incident data
model also allows using the unique sequence number 'incident-no' to identify each
incident instance, this means that incident RPCs or notifications for the same
incident-no are matched to update the same incident instance.</t>
      <section anchor="interworking-with-alarm-management">
        <name>Interworking with Alarm Management</name>
        <figure anchor="alarm">
          <name>Interworking with Alarm Management</name>
          <artwork align="center"><![CDATA[
            +-----------------------------+
            |         OSS                 |
            | +--------+    +-----------+ |
            | |Alarm   |    | Incident  | |
            | |handler |    |  handler  | |
            | +--------+    +-----------+ |
            +---^---------------^---------+
                |               |
                |alarm          |incident
            +---|---------------|---------+
            |   |  controller   |         |
            |   |               |         |
            |+--+----+      +-----------+ |
            ||Alarm  |      |  Incident | |
            ||process+----->|   Process | |
            ||       |alarm |           | |
            |+-------+      +-----------+ |
            |   ^              ^          |
            +---|--------------|----------+
                |alarm         | metrics/trace/etc.
                |              |
        +-------+--------------+---------------+
        |                                      |
        |   Network in the Autonomous Domain   |
        |                                      |
        +--------------------------------------+
]]></artwork>
        </figure>
        <t>A YANG model for the alarm management <xref target="RFC8632"/> defines a standard
interface to manage the lifecycle of alarms.  Alarms represent the
undesirable state of network resources <xref target="RFC9940"/>,
The alarm data model also defines the Probable Root Causes and impacted
services fields, but there may be insufficient information to determine them
at lower layer system (mainly in devices level), so alarms do not always tell
the status of network services or necessarily point to the Probable Root Causes
of problems. As described in <xref target="RFC8632"/>, the alarm management acts as a
starting point for high-level fault management. While Network Incident
Management often works at the network level, so it is possible to have enough
information to perform data correlation and Service Impact Assessment.  Alarms
can work as one of data sources of Network Incident Management and may be
aggregated into a few network incidents by the correlation analysis, network
service impact and Probable Root Causes may be determined during the Incident
Process.</t>
        <t>Network Incident also contains some related alarms, if needed users can query
the information of alarms by alarm management interface <xref target="RFC8632"/>.
In some cases, e.g., cutover scenario, the Incident Server may use alarm
management interface <xref target="RFC8632"/> to shelve some alarms.</t>
        <t>Alarm management may keep the original process, alarms are reported
from network to network controller or network analytic platform and
then reported to upper-layer system (e.g., the alarm handler within
the OSS).</t>
        <t>Similarly, the network incident is reported from the network to the network
controller or network analytic platform and then reported to the upper-layer
system (e.g., Incident Handler within the OSS). Upper-layer system may store
these network incidents and provide the information for fault analysis (e.g.,
deeper customer incident analysis based on network incident).</t>
        <t>Different from alarm management, Incident Process within the controller comprising
both Incident Client and Incident Server functionalities provides not only network
incident reporting but also diagnosis and resolution functions, it's possible to
support self-healing and may be helpful for single-domain closed-loop control.</t>
        <t>Network Incident Management is not a substitute for alarm management.
Instead, they can work together to implement fault management.</t>
      </section>
      <section anchor="interworking-with-sain">
        <name>Interworking with SAIN</name>
        <t>SAIN <xref target="RFC9417"/> defines an architecture of network service assurance.</t>
        <figure anchor="sain">
          <name>Interworking with SAIN</name>
          <artwork align="center"><![CDATA[
      +----------------+
      |Incident Handler|
      +----------------+
              ^
              |incident
      +-------+--------+
      |Incident Process|
       +----------------+
               ^
               |symptoms
       +-------+--------+
       |     SAIN       |
       |                |
       +----------------+
                ^
                |metrics
+---------------+-----------------+
|                                 |
|Network in the Autonomous Domain |
|                                 |
+---------------------------------+
]]></artwork>
        </figure>
        <t>A network service can be decomposed into some sub-services, and specific
metrics can be monitored for sub-services.  For example, a tunnel
service can be decomposed into some peer tunnel interface sub-
services and IP connectivity sub-service.  If some metrics are
evaluated to indicate unhealthy for specific sub-service, some
symptoms will be present.  Incident Process comprising both Incident Client and
Incident Server functionalities may identify the network incident
based on symptoms, and then report it to Incident Handler within the
Operation Support System (OSS).  So, SAIN can be one way to identify
network incident, services, sub-services and metrics can be preconfigured via
APIs defined by service assurance YANG model <xref target="RFC9418"/> and the network incident
will be reported if symptoms match certain condition or characteristic considered
as an indication of a problem or potential problem.</t>
      </section>
      <section anchor="relationship-with-rfc8969">
        <name>Relationship with RFC8969</name>
        <t><xref target="RFC8969"/> defines a framework for network automation using YANG, this
framework breaks down YANG modules into three layers, service layer,
network layer and device layer, and contains service deployment,
service optimization/assurance, and service diagnosis.  Network incident
works at the network layer and aggregates alarms, metrics and other
information from device layer, it's helpful to provide service
assurance.  And the network incident diagnosis may be one way of service
diagnosis.</t>
      </section>
      <section anchor="relationship-with-trace-context">
        <name>Relationship with Trace Context</name>
        <t>W3C defines a common trace context <xref target="W3C-Trace-Context"/> for distributed
system tracing, <xref target="I-D.ietf-netconf-trace-ctx-extension"/> defines a
netconf extension for <xref target="W3C-Trace-Context"/> and
<xref target="I-D.ietf-netconf-configuration-tracing"/> defines a mechanism for
configuration tracing.  If some errors occur when services are
deploying, it's very easy to identify these errors by distributed
system tracing, and a network incident <bcp14>SHOULD</bcp14> be reported.</t>
      </section>
      <section anchor="relationship-with-network-anomaly-detection-architecture">
        <name>Relationship with Network Anomaly Detection Architecture</name>
        <t><xref target="I-D.ietf-nmop-network-anomaly-architecture"/> and related network anomaly
detection documents describe how anomaly detection is applied to detect service
interruption in IP networks by performing outlier detection on all 3 network
planes, preserve relationships among them and score the result with a concern and
with a confidence score. Section 3 of <xref target="I-D.ietf-nmop-network-anomaly-architecture"/>
describes the elements of the system architecture where the "Alarm Management System"
maps to the "Incident Server" in Section 4 of this document. The "relevant-state"
YANG notification defined in Section 8.2 of <xref target="I-D.ietf-nmop-network-anomaly-lifecycle"/>
defines an "id" which <bcp14>SHOULD</bcp14> be mapped to "event-id" in the 'ietf-incident' YANG module
described in this document on the "Incident Server".
<xref target="I-D.ietf-nmop-network-anomaly-semantics"/> augments relevant-state YANG notification
with 'ietf-network-anomaly-symptom' YANG module symptom semantics described in Section
4.2 and service and network relationships with 'ietf-network-anomaly-service-topology'
YANG module in Section 4.3. "hostname" in "vpn-node-termination" grouping of
'ietf-network-anomaly-service-topology' YANG module maps to "node-ref" in "node-ref"
grouping respectively the "vpn-id" in the "vpn-service" list of the "vpn-service"
grouping maps to the "service-instance" leaf-list of the "incident-info" grouping in
'ietf-incident' YANG module. Thus, preserving the mapping between relevant-state
notification id, service id and hostname in the network where the outlier was detected.</t>
      </section>
    </section>
    <section anchor="implementation-status">
      <name>Implementation Status</name>
      <t>This section records the status of known implementations of the YANG
module defined by this specification at the time of posting of this
document and is based on a proposal described in <xref target="RFC7942"/>.  The
description of implementations in this section is intended to assist
the IETF in its decision processes in progressing drafts to RFCs.
Please note that the listing of any individual implementation here
does not imply endorsement by the IETF.  Furthermore, no effort has
been spent to verify the information presented here that was supplied
by IETF contributors.  This is not intended as, and <bcp14>MUST NOT</bcp14> be
construed to be, a catalog of available implementations or their
features.  Readers are advised to note that other implementations may
exist.</t>
      <t>According to <xref target="RFC7942"/>, "this will allow reviewers and working groups
to assign due consideration to documents that have the benefit of
running code, which may serve as evidence of valuable experimentation
and feedback that have made the implemented protocols more mature.
It is up to the individual working groups to use this information as
they see fit".</t>
      <t>Note to the RFC Editor: As per <xref target="RFC7942"/> guidelines, please remove
this Implementation Status Section prior to publication.</t>
      <section anchor="huawei-implementation">
        <name>Huawei Implementation</name>
        <t>Huawei iMaster NCE has implemented incident model with the intent management framework
and AI tools to support intelligent Network Incident Management.</t>
        <t>The Huawei Implementation of Incident model covers the following
a) RESTCONF support
b) Incident Lifecycle management including incident instance lifecycle
   and operator incident lifecycle.
c) Incident Notification
d) Incident List Query</t>
        <t>Contact information: Qin Wu
   (bill.wu@huawei.com)</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The YANG module specified in this document defines a data model that is
designed to be accessed via YANG-based management protocols, such as
NETCONF <xref target="RFC6241"/> and RESTCONF <xref target="RFC8040"/>. These YANG-based management
protocols (1) <bcp14>MUST</bcp14> use a secure transport layer (e.g., SSH Transport Layer
<xref target="RFC4253"/>) and (2) <bcp14>MUST</bcp14> use mutual authentication (e.g., SSH <xref target="RFC4252"/>,
TLS <xref target="RFC8446"/>, and QUIC <xref target="RFC9000"/>).</t>
      <t>The Network Configuration Access Control Model (NACM) <xref target="RFC8341"/>
provides the means to restrict access for particular NETCONF or
RESTCONF users to a preconfigured subset of all available NETCONF or
RESTCONF protocol operations and content.</t>
      <t>Some of the readable data nodes in this YANG module may be considered
sensitive or vulnerable in some network environments.  It is thus
important to control read access (e.g., via get, get-config, or
notification) to these data nodes.  These are the subtrees and data
nodes and their sensitivity/vulnerability:</t>
      <t>'/incidents/incident': This list specifies the network incident entries,
such as the service-instance leaf-list and the sources/probable-causes
containers may reveal customer-identifiable information (e.g., which VPN services
are affected, which customer endpoints are involved). Unauthorized read access
of this list can allow intruders to access network incident information and
potentially get a picture of the broken state of the network. Intruders may
exploit the vulnerabilities of the network to lead to further negative impact
on the network. Care must be taken to ensure that this list is accessed only
by authorized users.</t>
      <t>Some of the RPC operations in this YANG module may be considered
sensitive or vulnerable in some network environments.  It is thus
important to control access to these operations.  These are the
operations and their sensitivity/vulnerability:</t>
      <t>"incident-diagnose": This RPC operation performs network incident
diagnosis and Probable Root Cause locating. If a malicious or buggy client
performs an unexpectedly large number of this operation, the result
might be an excessive use of system resources <xref target="RFC9940"/>
on the server side as well as network resources.  Servers <bcp14>MUST</bcp14>
ensure they have sufficient resources to fulfill this request; otherwise,
they can choose to block the connection (e.g., block abusive IP address)
to this client and/or reject the request using rpc errors defined in
section 7.6.</t>
      <t>"incident-resolve": This RPC operation is used to resolve the network
incident. If a malicious or buggy client performs an unexpectedly large
number of this operation, the result might be an excessive use of system
resources on the server side as well as network resources.  Servers <bcp14>MUST</bcp14>
ensure they have sufficient resources to fulfill this request;
otherwise, they can choose to reject the request without compromise on security of
data-at-rest in the server.</t>
      <t>"incident-acknowledge": This RPC operation is used to confirm the incident
to ensure that the client knows the incident. If a malicious or buggy client
repeatedly confirms multiple incidents at a time, the result might be an
excessive use of system resources on the server side as well as network resources.
Servers <bcp14>MUST</bcp14> ensure they have sufficient resources to fulfill this request;
otherwise, they can choose to block connection (e.g., block abusive IP address)
to this client and/or reject the request using rpc errors defined in
section 7.6.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="the-ietf-xml-registry">
        <name>The "IETF XML" Registry</name>
        <t>IANA is requested to register the following URI in the "ns"
registry within the "IETF XML Registry" group <xref target="RFC3688"/>:</t>
        <artwork><![CDATA[
URI: urn:ietf:params:xml:ns:yang:ietf-incident
Registrant Contact: The IESG.
XML: N/A, the requested URIs are XML namespaces.
]]></artwork>
      </section>
      <section anchor="the-yang-module-names-registry">
        <name>The "YANG Module Names" Registry</name>
        <t>IANA is requested to register the following YANG module in the "YANG
Module Names" registry <xref target="RFC6020"/> within the "YANG Parameters"
registry group.</t>
        <artwork><![CDATA[
Name: ietf-incident
Maintained by IANA?  N
Namespace: urn:ietf:params:xml:ns:yang:ietf-incident
Prefix: inc
Reference:  RFC XXXX
]]></artwork>
        <t>// RFC Ed.: Replace RFC xxxx with this RFC id, when published and remove this comment</t>
      </section>
    </section>
    <section numbered="false" anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>The authors would like to thank Mohamed Boucadair, Robert Wilton,
Benoit Claise, Oscar Gonzalez de Dios, Adrian Farrel, Mahesh
Jethanandani, Paul Aitken, Balazs Lengyel, Dhruv Dhody,Bo Wu, Qiufang Ma,
Haomian Zheng, YuanYao, Wei Wang, Peng Liu, Zongpeng Du, Zhengqiang Li,
Andrew Liu, Joe Clark, Roland Scott, Alex Huang Feng, Kai Gao, Jensen Zhang,
Ziyang Xing, Mingshuang Jin, Aihua Guo, Zhidong Yin, Guoxiang Liu, Kaichun Wu
for their valuable comments and great input to this work.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC7950">
          <front>
            <title>The YANG 1.1 Data Modeling Language</title>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <date month="August" year="2016"/>
            <abstract>
              <t>YANG is a data modeling language used to model configuration data, state data, Remote Procedure Calls, and notifications for network management protocols. This document describes the syntax and semantics of version 1.1 of the YANG language. YANG version 1.1 is a maintenance release of the YANG language, addressing ambiguities and defects in the original specification. There are a small number of backward incompatibilities from YANG version 1. This document also specifies the YANG mappings to the Network Configuration Protocol (NETCONF).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7950"/>
          <seriesInfo name="DOI" value="10.17487/RFC7950"/>
        </reference>
        <reference anchor="RFC8632">
          <front>
            <title>A YANG Data Model for Alarm Management</title>
            <author fullname="S. Vallin" initials="S." surname="Vallin"/>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <date month="September" year="2019"/>
            <abstract>
              <t>This document defines a YANG module for alarm management. It includes functions for alarm-list management, alarm shelving, and notifications to inform management systems. There are also operations to manage the operator state of an alarm and administrative alarm procedures. The module carefully maps to relevant alarm standards.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8632"/>
          <seriesInfo name="DOI" value="10.17487/RFC8632"/>
        </reference>
        <reference anchor="RFC9375">
          <front>
            <title>A YANG Data Model for Network and VPN Service Performance Monitoring</title>
            <author fullname="B. Wu" initials="B." role="editor" surname="Wu"/>
            <author fullname="Q. Wu" initials="Q." role="editor" surname="Wu"/>
            <author fullname="M. Boucadair" initials="M." role="editor" surname="Boucadair"/>
            <author fullname="O. Gonzalez de Dios" initials="O." surname="Gonzalez de Dios"/>
            <author fullname="B. Wen" initials="B." surname="Wen"/>
            <date month="April" year="2023"/>
            <abstract>
              <t>The data model for network topologies defined in RFC 8345 introduces vertical layering relationships between networks that can be augmented to cover network and service topologies. This document defines a YANG module for performance monitoring (PM) of both underlay networks and overlay VPN services that can be used to monitor and manage network performance on the topology of both layers.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9375"/>
          <seriesInfo name="DOI" value="10.17487/RFC9375"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC9543">
          <front>
            <title>A Framework for Network Slices in Networks Built from IETF Technologies</title>
            <author fullname="A. Farrel" initials="A." role="editor" surname="Farrel"/>
            <author fullname="J. Drake" initials="J." role="editor" surname="Drake"/>
            <author fullname="R. Rokui" initials="R." surname="Rokui"/>
            <author fullname="S. Homma" initials="S." surname="Homma"/>
            <author fullname="K. Makhijani" initials="K." surname="Makhijani"/>
            <author fullname="L. Contreras" initials="L." surname="Contreras"/>
            <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>
            <date month="March" year="2024"/>
            <abstract>
              <t>This document describes network slicing in the context of networks built from IETF technologies. It defines the term "IETF Network Slice" to describe this type of network slice and establishes the general principles of network slicing in the IETF context.</t>
              <t>The document discusses the general framework for requesting and operating IETF Network Slices, the characteristics of an IETF Network Slice, the necessary system components and interfaces, and the mapping of abstract requests to more specific technologies. The document also discusses related considerations with monitoring and security.</t>
              <t>This document also provides definitions of related terms to enable consistent usage in other IETF documents that describe or use aspects of IETF Network Slices.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9543"/>
          <seriesInfo name="DOI" value="10.17487/RFC9543"/>
        </reference>
        <reference anchor="RFC8340">
          <front>
            <title>YANG Tree Diagrams</title>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="L. Berger" initials="L." role="editor" surname="Berger"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>This document captures the current syntax used in YANG module tree diagrams. The purpose of this document is to provide a single location for this definition. This syntax may be updated from time to time based on the evolution of the YANG language.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="215"/>
          <seriesInfo name="RFC" value="8340"/>
          <seriesInfo name="DOI" value="10.17487/RFC8340"/>
        </reference>
        <reference anchor="RFC9911">
          <front>
            <title>Common YANG Data Types</title>
            <author fullname="J. Schönwälder" initials="J." role="editor" surname="Schönwälder"/>
            <date month="December" year="2025"/>
            <abstract>
              <t>This document defines a collection of common data types to be used with the YANG data modeling language. It includes several new type definitions and obsoletes RFC 6991.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9911"/>
          <seriesInfo name="DOI" value="10.17487/RFC9911"/>
        </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>
        <reference anchor="RFC8791">
          <front>
            <title>YANG Data Structure Extensions</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Björklund" initials="M." surname="Björklund"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <date month="June" year="2020"/>
            <abstract>
              <t>This document describes YANG mechanisms for defining abstract data structures with YANG.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8791"/>
          <seriesInfo name="DOI" value="10.17487/RFC8791"/>
        </reference>
        <reference anchor="RFC6241">
          <front>
            <title>Network Configuration Protocol (NETCONF)</title>
            <author fullname="R. Enns" initials="R." role="editor" surname="Enns"/>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <author fullname="J. Schoenwaelder" initials="J." role="editor" surname="Schoenwaelder"/>
            <author fullname="A. Bierman" initials="A." role="editor" surname="Bierman"/>
            <date month="June" year="2011"/>
            <abstract>
              <t>The Network Configuration Protocol (NETCONF) defined in this document provides mechanisms to install, manipulate, and delete the configuration of network devices. It uses an Extensible Markup Language (XML)-based data encoding for the configuration data as well as the protocol messages. The NETCONF protocol operations are realized as remote procedure calls (RPCs). This document obsoletes RFC 4741. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6241"/>
          <seriesInfo name="DOI" value="10.17487/RFC6241"/>
        </reference>
        <reference anchor="RFC8040">
          <front>
            <title>RESTCONF Protocol</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <date month="January" year="2017"/>
            <abstract>
              <t>This document describes an HTTP-based protocol that provides a programmatic interface for accessing data defined in YANG, using the datastore concepts defined in the Network Configuration Protocol (NETCONF).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8040"/>
          <seriesInfo name="DOI" value="10.17487/RFC8040"/>
        </reference>
        <reference anchor="RFC4253">
          <front>
            <title>The Secure Shell (SSH) Transport Layer Protocol</title>
            <author fullname="T. Ylonen" initials="T." surname="Ylonen"/>
            <author fullname="C. Lonvick" initials="C." role="editor" surname="Lonvick"/>
            <date month="January" year="2006"/>
            <abstract>
              <t>The Secure Shell (SSH) is a protocol for secure remote login and other secure network services over an insecure network.</t>
              <t>This document describes the SSH transport layer protocol, which typically runs on top of TCP/IP. The protocol can be used as a basis for a number of secure network services. It provides strong encryption, server authentication, and integrity protection. It may also provide compression.</t>
              <t>Key exchange method, public key algorithm, symmetric encryption algorithm, message authentication algorithm, and hash algorithm are all negotiated.</t>
              <t>This document also describes the Diffie-Hellman key exchange method and the minimal set of algorithms that are needed to implement the SSH transport layer protocol. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4253"/>
          <seriesInfo name="DOI" value="10.17487/RFC4253"/>
        </reference>
        <reference anchor="RFC4252">
          <front>
            <title>The Secure Shell (SSH) Authentication Protocol</title>
            <author fullname="T. Ylonen" initials="T." surname="Ylonen"/>
            <author fullname="C. Lonvick" initials="C." role="editor" surname="Lonvick"/>
            <date month="January" year="2006"/>
            <abstract>
              <t>The Secure Shell Protocol (SSH) is a protocol for secure remote login and other secure network services over an insecure network. This document describes the SSH authentication protocol framework and public key, password, and host-based client authentication methods. Additional authentication methods are described in separate documents. The SSH authentication protocol runs on top of the SSH transport layer protocol and provides a single authenticated tunnel for the SSH connection protocol. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4252"/>
          <seriesInfo name="DOI" value="10.17487/RFC4252"/>
        </reference>
        <reference anchor="RFC8446">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961. This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
        <reference anchor="RFC9000">
          <front>
            <title>QUIC: A UDP-Based Multiplexed and Secure Transport</title>
            <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar"/>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson"/>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document defines the core of the QUIC transport protocol. QUIC provides applications with flow-controlled streams for structured communication, low-latency connection establishment, and network path migration. QUIC includes security measures that ensure confidentiality, integrity, and availability in a range of deployment circumstances. Accompanying documents describe the integration of TLS for key negotiation, loss detection, and an exemplary congestion control algorithm.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9000"/>
          <seriesInfo name="DOI" value="10.17487/RFC9000"/>
        </reference>
        <reference anchor="RFC8341">
          <front>
            <title>Network Configuration Access Control Model</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>The standardization of network configuration interfaces for use with the Network Configuration Protocol (NETCONF) or the RESTCONF protocol requires a structured and secure operating environment that promotes human usability and multi-vendor interoperability. There is a need for standard mechanisms to restrict NETCONF or RESTCONF protocol access for particular users to a preconfigured subset of all available NETCONF or RESTCONF protocol operations and content. This document defines such an access control model.</t>
              <t>This document obsoletes RFC 6536.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="91"/>
          <seriesInfo name="RFC" value="8341"/>
          <seriesInfo name="DOI" value="10.17487/RFC8341"/>
        </reference>
        <reference anchor="RFC3688">
          <front>
            <title>The IETF XML Registry</title>
            <author fullname="M. Mealling" initials="M." surname="Mealling"/>
            <date month="January" year="2004"/>
            <abstract>
              <t>This document describes an IANA maintained registry for IETF standards which use Extensible Markup Language (XML) related items such as Namespaces, Document Type Declarations (DTDs), Schemas, and Resource Description Framework (RDF) Schemas.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="81"/>
          <seriesInfo name="RFC" value="3688"/>
          <seriesInfo name="DOI" value="10.17487/RFC3688"/>
        </reference>
        <reference anchor="RFC6020">
          <front>
            <title>YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)</title>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <date month="October" year="2010"/>
            <abstract>
              <t>YANG is a data modeling language used to model configuration and state data manipulated by the Network Configuration Protocol (NETCONF), NETCONF remote procedure calls, and NETCONF notifications. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6020"/>
          <seriesInfo name="DOI" value="10.17487/RFC6020"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="BERT" target="https://aclanthology.org/N19-1423/">
          <front>
            <title>Pre-training of Deep Bidirectional Transformers for Language Understanding</title>
            <author>
              <organization/>
            </author>
            <date year="2019"/>
          </front>
        </reference>
        <reference anchor="TMF724A" target="https://www.tmforum.org/resources/standard/tmf724a-incident-management-api-profile-v1-0-0/">
          <front>
            <title>Incident Management API Profile v1.0.0</title>
            <author>
              <organization/>
            </author>
            <date year="2023"/>
          </front>
        </reference>
        <reference anchor="W3C-Trace-Context" target="https://www.w3.org/TR/2021/REC-trace-context-1-20211123/">
          <front>
            <title>W3C Recommendation on Trace Context</title>
            <author>
              <organization/>
            </author>
            <date year="2021"/>
          </front>
        </reference>
        <reference anchor="RFC8969">
          <front>
            <title>A Framework for Automating Service and Network Management with YANG</title>
            <author fullname="Q. Wu" initials="Q." role="editor" surname="Wu"/>
            <author fullname="M. Boucadair" initials="M." role="editor" surname="Boucadair"/>
            <author fullname="D. Lopez" initials="D." surname="Lopez"/>
            <author fullname="C. Xie" initials="C." surname="Xie"/>
            <author fullname="L. Geng" initials="L." surname="Geng"/>
            <date month="January" year="2021"/>
            <abstract>
              <t>Data models provide a programmatic approach to represent services and networks. Concretely, they can be used to derive configuration information for network and service components, and state information that will be monitored and tracked. Data models can be used during the service and network management life cycle (e.g., service instantiation, service provisioning, service optimization, service monitoring, service diagnosing, and service assurance). Data models are also instrumental in the automation of network management, and they can provide closed-loop control for adaptive and deterministic service creation, delivery, and maintenance.</t>
              <t>This document describes a framework for service and network management automation that takes advantage of YANG modeling technologies. This framework is drawn from a network operator perspective irrespective of the origin of a data model; thus, it can accommodate YANG modules that are developed outside the IETF.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8969"/>
          <seriesInfo name="DOI" value="10.17487/RFC8969"/>
        </reference>
        <reference anchor="RFC9940">
          <front>
            <title>Some Key Terms for Network Fault and Problem Management</title>
            <author fullname="N. Davis" initials="N." role="editor" surname="Davis"/>
            <author fullname="A. Farrel" initials="A." role="editor" surname="Farrel"/>
            <author fullname="T. Graf" initials="T." surname="Graf"/>
            <author fullname="Q. Wu" initials="Q." surname="Wu"/>
            <author fullname="C. Yu" initials="C." surname="Yu"/>
            <date month="April" year="2026"/>
            <abstract>
              <t>This document sets out some terms that are fundamental to a common understanding of network fault and problem management within the IETF.</t>
              <t>The purpose of this document is to bring clarity to discussions and other work related to network fault and problem management -- in particular, to YANG data models and management protocols that report, make visible, or manage network faults and problems.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9940"/>
          <seriesInfo name="DOI" value="10.17487/RFC9940"/>
        </reference>
        <reference anchor="RFC9417">
          <front>
            <title>Service Assurance for Intent-Based Networking Architecture</title>
            <author fullname="B. Claise" initials="B." surname="Claise"/>
            <author fullname="J. Quilbeuf" initials="J." surname="Quilbeuf"/>
            <author fullname="D. Lopez" initials="D." surname="Lopez"/>
            <author fullname="D. Voyer" initials="D." surname="Voyer"/>
            <author fullname="T. Arumugam" initials="T." surname="Arumugam"/>
            <date month="July" year="2023"/>
            <abstract>
              <t>This document describes an architecture that provides some assurance that service instances are running as expected. As services rely upon multiple subservices provided by a variety of elements, including the underlying network devices and functions, getting the assurance of a healthy service is only possible with a holistic view of all involved elements. This architecture not only helps to correlate the service degradation with symptoms of a specific network component but, it also lists the services impacted by the failure or degradation of a specific network component.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9417"/>
          <seriesInfo name="DOI" value="10.17487/RFC9417"/>
        </reference>
        <reference anchor="I-D.irtf-nmrg-ai-challenges">
          <front>
            <title>Research Challenges in Coupling Artificial Intelligence and Network Management</title>
            <author fullname="Jérôme François" initials="J." surname="François">
              <organization>University of Luxembourg and Inria</organization>
            </author>
            <author fullname="Alexander Clemm" initials="A." surname="Clemm">
              <organization>Independent</organization>
            </author>
            <author fullname="Dimitri Papadimitriou" initials="D." surname="Papadimitriou">
              <organization>3NLab Belgium Research Center</organization>
            </author>
            <author fullname="Stenio Fernandes" initials="S." surname="Fernandes">
              <organization>Canada Post</organization>
            </author>
            <author fullname="Stefan Schneider" initials="S." surname="Schneider">
              <organization>Digital Railway (DSD) at Deutsche Bahn</organization>
            </author>
            <date day="6" month="July" year="2026"/>
            <abstract>
              <t>   This document is intended to introduce the challenges to overcome
   when Network Management (NM) problems may require coupling with
   Artificial Intelligence (AI) solutions.  On the one hand, many
   difficult NM problems still lack good solutions, or existing
   approaches come with significant limitations.  Artificial
   Intelligence may help produce novel solutions to those problems.  On
   the other hand, due to the high computational costs of AI solutions
   and stringent data privacy constraints, the distributed execution of
   AI workloads has become paramount.  Consequently, networks must be
   operated efficiently to sustain these distributed processing
   requirements.

   To identify the right set of challenges, the document defines a
   method based on the evolution and nature of NM problems.  This will
   be done in parallel with advances and the nature of existing
   solutions in AI in order to highlight where AI and NM have already
   been coupled together or could benefit from a closer integration.
   So, the method aims at evaluating the gap between NM problems and AI
   solutions.  Challenges are derived accordingly, assuming that solving
   these challenges will help to reduce the gap between NM and AI.

   This document is a product of the Network Management Research Group
   (NMRG) of the Internet Research Task Force (IRTF).  This document
   reflects the consensus of the research group.  It is not a candidate
   for any level of Internet Standard and is published for informational
   purposes.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-irtf-nmrg-ai-challenges-06"/>
        </reference>
        <reference anchor="RFC9408">
          <front>
            <title>A YANG Network Data Model for Service Attachment Points (SAPs)</title>
            <author fullname="M. Boucadair" initials="M." role="editor" surname="Boucadair"/>
            <author fullname="O. Gonzalez de Dios" initials="O." surname="Gonzalez de Dios"/>
            <author fullname="S. Barguil" initials="S." surname="Barguil"/>
            <author fullname="Q. Wu" initials="Q." surname="Wu"/>
            <author fullname="V. Lopez" initials="V." surname="Lopez"/>
            <date month="June" year="2023"/>
            <abstract>
              <t>This document defines a YANG data model for representing an abstract view of the provider network topology that contains the points from which its services can be attached (e.g., basic connectivity, VPN, network slices). Also, the model can be used to retrieve the points where the services are actually being delivered to customers (including peer networks).</t>
              <t>This document augments the 'ietf-network' data model defined in RFC 8345 by adding the concept of Service Attachment Points (SAPs). The SAPs are the network reference points to which network services, such as Layer 3 Virtual Private Network (L3VPN) or Layer 2 Virtual Private Network (L2VPN), can be attached. One or multiple services can be bound to the same SAP. Both User-to-Network Interface (UNI) and Network-to-Network Interface (NNI) are supported in the SAP data model.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9408"/>
          <seriesInfo name="DOI" value="10.17487/RFC9408"/>
        </reference>
        <reference anchor="RFC9544">
          <front>
            <title>Precision Availability Metrics (PAMs) for Services Governed by Service Level Objectives (SLOs)</title>
            <author fullname="G. Mirsky" initials="G." surname="Mirsky"/>
            <author fullname="J. Halpern" initials="J." surname="Halpern"/>
            <author fullname="X. Min" initials="X." surname="Min"/>
            <author fullname="A. Clemm" initials="A." surname="Clemm"/>
            <author fullname="J. Strassner" initials="J." surname="Strassner"/>
            <author fullname="J. François" initials="J." surname="François"/>
            <date month="March" year="2024"/>
            <abstract>
              <t>This document defines a set of metrics for networking services with
performance requirements expressed as Service Level Objectives
(SLOs). These metrics, referred to as "Precision Availability Metrics
(PAMs)", are useful for defining and monitoring SLOs. For example,
PAMs can be used by providers and/or customers of an RFC 9543 Network
Slice Service to assess whether the service is provided in compliance
with its defined SLOs.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9544"/>
          <seriesInfo name="DOI" value="10.17487/RFC9544"/>
        </reference>
        <reference anchor="I-D.ietf-opsawg-scheduling-oam-tests">
          <front>
            <title>A YANG Data Model for Network Diagnosis using Scheduled Sequences of OAM Tests</title>
            <author fullname="Luis M. Contreras" initials="L. M." surname="Contreras">
              <organization>Telefonica</organization>
            </author>
            <author fullname="Victor Lopez" initials="V." surname="Lopez">
              <organization>Nokia</organization>
            </author>
            <author fullname="Qin Wu" initials="Q." surname="Wu">
              <organization>Huawei</organization>
            </author>
            <date day="14" month="September" year="2026"/>
            <abstract>
              <t>   This document defines two YANG data models to support scheduled
   network diagnosis using Operations, Administration, and Maintenance
   (OAM) tests.  This document defines both 'oam-unitary-test' and 'oam-
   test-sequence' YANG modules to manage the lifecycle of network
   diagnosis procedures, intended for use by external management and
   orchestration systems (including SDN controllers and network
   orchestrators), rather than by individual network nodes.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-opsawg-scheduling-oam-tests-09"/>
        </reference>
        <reference anchor="I-D.mackey-nmop-kg-for-netops">
          <front>
            <title>Knowledge Graph Framework for Network Operations</title>
            <author fullname="Michael Mackey" initials="M." surname="Mackey">
              <organization>Huawei</organization>
            </author>
            <author fullname="Benoît Claise" initials="B." surname="Claise">
              <organization>Everything-Ops</organization>
            </author>
            <author fullname="Thomas Graf" initials="T." surname="Graf">
              <organization>Swisscom</organization>
            </author>
            <author fullname="Holger Keller" initials="H." surname="Keller">
              <organization>Deutsche Telekom</organization>
            </author>
            <author fullname="Daniel Voyer" initials="D." surname="Voyer">
              <organization>Bell Canada</organization>
            </author>
            <author fullname="Paolo Lucente" initials="P." surname="Lucente">
              <organization>NTT</organization>
            </author>
            <author fullname="Ignacio Dominguez Martinez-Casanueva" initials="I. D." surname="Martinez-Casanueva">
              <organization>Telefonica</organization>
            </author>
            <date day="7" month="April" year="2026"/>
            <abstract>
              <t>   This document describes some of the problems in modern operations and
   management systems and how knowledge graphs and RDF can be used to
   solve closed loop system, in an automatic way.

   Discussion Venues

   This note is to be removed before publishing as an RFC.

   Source for this draft and an issue tracker can be found at
   https://github.com/mike-mackey.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-mackey-nmop-kg-for-netops-04"/>
        </reference>
        <reference anchor="RFC9376">
          <front>
            <title>Applicability of GMPLS for beyond 100 Gbit/s Optical Transport Network</title>
            <author fullname="Q. Wang" initials="Q." role="editor" surname="Wang"/>
            <author fullname="R. Valiveti" initials="R." role="editor" surname="Valiveti"/>
            <author fullname="H. Zheng" initials="H." role="editor" surname="Zheng"/>
            <author fullname="H. van Helvoort" initials="H." surname="van Helvoort"/>
            <author fullname="S. Belotti" initials="S." surname="Belotti"/>
            <date month="March" year="2023"/>
            <abstract>
              <t>This document examines the applicability of using existing GMPLS routing and signaling mechanisms to set up Optical Data Unit-k (ODUk) Label Switched Paths (LSPs) over Optical Data Unit-Cn (ODUCn) links as defined in the 2020 version of ITU-T Recommendation G.709.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9376"/>
          <seriesInfo name="DOI" value="10.17487/RFC9376"/>
        </reference>
        <reference anchor="RFC1136">
          <front>
            <title>Administrative Domains and Routing Domains: A model for routing in the Internet</title>
            <author fullname="S. Hares" initials="S." surname="Hares"/>
            <author fullname="D. Katz" initials="D." surname="Katz"/>
            <date month="December" year="1989"/>
            <abstract>
              <t>This RFC proposes a model for describing routing within the Internet. The model is an adaptation of the "OSI Routeing Framework". This memo does not specify an Internet standard.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="1136"/>
          <seriesInfo name="DOI" value="10.17487/RFC1136"/>
        </reference>
        <reference anchor="RFC6373">
          <front>
            <title>MPLS Transport Profile (MPLS-TP) Control Plane Framework</title>
            <author fullname="L. Andersson" initials="L." role="editor" surname="Andersson"/>
            <author fullname="L. Berger" initials="L." role="editor" surname="Berger"/>
            <author fullname="L. Fang" initials="L." role="editor" surname="Fang"/>
            <author fullname="N. Bitar" initials="N." role="editor" surname="Bitar"/>
            <author fullname="E. Gray" initials="E." role="editor" surname="Gray"/>
            <date month="September" year="2011"/>
            <abstract>
              <t>The MPLS Transport Profile (MPLS-TP) supports static provisioning of transport paths via a Network Management System (NMS) and dynamic provisioning of transport paths via a control plane. This document provides the framework for MPLS-TP dynamic provisioning and covers control-plane addressing, routing, path computation, signaling, traffic engineering, and path recovery. MPLS-TP uses GMPLS as the control plane for MPLS-TP Label Switched Paths (LSPs). MPLS-TP also uses the pseudowire (PW) control plane for pseudowires. Management-plane functions are out of scope of this document.</t>
              <t>This document is a product of a joint Internet Engineering Task Force (IETF) / International Telecommunication Union Telecommunication Standardization Sector (ITU-T) effort to include an MPLS Transport Profile within the IETF MPLS and Pseudowire Emulation Edge-to-Edge (PWE3) architectures to support the capabilities and functionalities of a packet transport network as defined by the ITU-T.</t>
              <t>This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6373"/>
          <seriesInfo name="DOI" value="10.17487/RFC6373"/>
        </reference>
        <reference anchor="RFC8348">
          <front>
            <title>A YANG Data Model for Hardware Management</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="J. Dong" initials="J." surname="Dong"/>
            <author fullname="D. Romascanu" initials="D." surname="Romascanu"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>This document defines a YANG data model for the management of hardware on a single server.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8348"/>
          <seriesInfo name="DOI" value="10.17487/RFC8348"/>
        </reference>
        <reference anchor="RFC5277">
          <front>
            <title>NETCONF Event Notifications</title>
            <author fullname="S. Chisholm" initials="S." surname="Chisholm"/>
            <author fullname="H. Trevino" initials="H." surname="Trevino"/>
            <date month="July" year="2008"/>
            <abstract>
              <t>This document defines mechanisms that provide an asynchronous message notification delivery service for the Network Configuration protocol (NETCONF). This is an optional capability built on top of the base NETCONF definition. This document defines the capabilities and operations necessary to support this service. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5277"/>
          <seriesInfo name="DOI" value="10.17487/RFC5277"/>
        </reference>
        <reference anchor="RFC8639">
          <front>
            <title>Subscription to YANG Notifications</title>
            <author fullname="E. Voit" initials="E." surname="Voit"/>
            <author fullname="A. Clemm" initials="A." surname="Clemm"/>
            <author fullname="A. Gonzalez Prieto" initials="A." surname="Gonzalez Prieto"/>
            <author fullname="E. Nilsen-Nygaard" initials="E." surname="Nilsen-Nygaard"/>
            <author fullname="A. Tripathy" initials="A." surname="Tripathy"/>
            <date month="September" year="2019"/>
            <abstract>
              <t>This document defines a YANG data model and associated mechanisms enabling subscriber-specific subscriptions to a publisher's event streams. Applying these elements allows a subscriber to request and receive a continuous, customized feed of publisher-generated information.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8639"/>
          <seriesInfo name="DOI" value="10.17487/RFC8639"/>
        </reference>
        <reference anchor="RFC8641">
          <front>
            <title>Subscription to YANG Notifications for Datastore Updates</title>
            <author fullname="A. Clemm" initials="A." surname="Clemm"/>
            <author fullname="E. Voit" initials="E." surname="Voit"/>
            <date month="September" year="2019"/>
            <abstract>
              <t>This document describes a mechanism that allows subscriber applications to request a continuous and customized stream of updates from a YANG datastore. Providing such visibility into updates enables new capabilities based on the remote mirroring and monitoring of configuration and operational state.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8641"/>
          <seriesInfo name="DOI" value="10.17487/RFC8641"/>
        </reference>
        <reference anchor="I-D.ietf-netconf-notif-envelope">
          <front>
            <title>Extensible YANG Model for YANG-Push Notifications</title>
            <author fullname="Alex Huang Feng" initials="A. H." surname="Feng">
              <organization>Deutsche Telekom</organization>
            </author>
            <author fullname="Pierre Francois" initials="P." surname="Francois">
              <organization>INSA-Lyon</organization>
            </author>
            <author fullname="Thomas Graf" initials="T." surname="Graf">
              <organization>Swisscom</organization>
            </author>
            <author fullname="Benoît Claise" initials="B." surname="Claise">
              <organization>Everything OPS and Arrcus</organization>
            </author>
            <date day="14" month="September" year="2026"/>
            <abstract>
              <t>   This document defines a new extensible Notification structure,
   defined in YANG, for use in YANG-Push Notification messages, both for
   NETCONF and RESTCONF, enabling any YANG-compatible encodings such as
   XML, JSON, or CBOR.  Additionally, it defines two essential
   extensions to this structure, the support of a hostname and a
   sequence number and the support of a timestamp characterizing the
   moment when the data was observed.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-netconf-notif-envelope-06"/>
        </reference>
        <reference anchor="RFC9418">
          <front>
            <title>A YANG Data Model for Service Assurance</title>
            <author fullname="B. Claise" initials="B." surname="Claise"/>
            <author fullname="J. Quilbeuf" initials="J." surname="Quilbeuf"/>
            <author fullname="P. Lucente" initials="P." surname="Lucente"/>
            <author fullname="P. Fasano" initials="P." surname="Fasano"/>
            <author fullname="T. Arumugam" initials="T." surname="Arumugam"/>
            <date month="July" year="2023"/>
            <abstract>
              <t>This document specifies YANG modules for representing assurance graphs. These graphs represent the assurance of a given service by decomposing it into atomic assurance elements called subservices. The companion document, "Service Assurance for Intent-Based Networking Architecture" (RFC 9417), presents an architecture for implementing the assurance of such services.</t>
              <t>The YANG data models in this document conform to the Network Management Datastore Architecture (NMDA) defined in RFC 8342.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9418"/>
          <seriesInfo name="DOI" value="10.17487/RFC9418"/>
        </reference>
        <reference anchor="I-D.ietf-netconf-trace-ctx-extension">
          <front>
            <title>NETCONF Extension to support Trace Context propagation</title>
            <author fullname="Roque Gagliano" initials="R." surname="Gagliano">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Christian Rennerskog" initials="C." surname="Rennerskog">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Kristian Larsson" initials="K." surname="Larsson">
              <organization>Deutsche Telekom AG</organization>
            </author>
            <author fullname="Jan Lindblad" initials="J." surname="Lindblad">
              <organization>All For Eco</organization>
            </author>
            <date day="17" month="September" year="2026"/>
            <abstract>
              <t>   This document defines how to propagate trace context information
   across the Network Configuration Protocol (NETCONF), enabling
   distributed tracing scenarios.  It is an adaptation of the HTTP-based
   W3C specification and defines three YANG modules.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-netconf-trace-ctx-extension-09"/>
        </reference>
        <reference anchor="I-D.ietf-netconf-configuration-tracing">
          <front>
            <title>External Trace ID for Configuration Tracing</title>
            <author fullname="Jean Quilbeuf" initials="J." surname="Quilbeuf">
              <organization>Huawei</organization>
            </author>
            <author fullname="Benoît Claise" initials="B." surname="Claise">
              <organization>Everything OPS</organization>
            </author>
            <author fullname="Thomas Graf" initials="T." surname="Graf">
              <organization>Swisscom</organization>
            </author>
            <author fullname="Diego Lopez" initials="D." surname="Lopez">
              <organization>Telefonica I+D</organization>
            </author>
            <author fullname="Sun Qiong" initials="S." surname="Qiong">
              <organization>China Telecom</organization>
            </author>
            <date day="3" month="November" year="2025"/>
            <abstract>
              <t>   Network equipment are often configured by a variety of network
   management systems (NMS), protocols, and teams.  If a network issue
   arises (e.g., because of a wrong configuration change), it is
   important to quickly identify the root cause and obtain the reason
   for pushing that modification.  Another potential network issue can
   stem from concurrent NMSes with overlapping intents, each having
   their own tasks to perform.  In such a case, it is important to map
   the respective modifications to its originating NMS.

   This document specifies a NETCONF mechanism to automatically map the
   configuration modifications to their source, up to a specific NMS
   change request.  Such a mechanism is required, in particular, for
   autonomous networks to trace the source of a particular configuration
   change that led to an anomaly detection.  This mechanism facilitates
   the troubleshooting, the post-mortem analysis, and in the end the
   closed loop automation required for self-healing networks.  The
   specification also includes a YANG module that is meant to map a
   local configuration change to the corresponding trace id, up to the
   controller or even the orchestrator.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-netconf-configuration-tracing-06"/>
        </reference>
        <reference anchor="I-D.ietf-nmop-network-anomaly-architecture">
          <front>
            <title>A Framework for a Network Anomaly Detection Architecture</title>
            <author fullname="Thomas Graf" initials="T." surname="Graf">
              <organization>Swisscom</organization>
            </author>
            <author fullname="Wanting Du" initials="W." surname="Du">
              <organization>Swisscom</organization>
            </author>
            <author fullname="Pierre Francois" initials="P." surname="Francois">
              <organization>INSA-Lyon</organization>
            </author>
            <author fullname="Alex Huang Feng" initials="A. H." surname="Feng">
              <organization>Deutsche Telekom</organization>
            </author>
            <date day="6" month="July" year="2026"/>
            <abstract>
              <t>   This document describes the motivation and architecture of a Network
   Anomaly Detection Framework and the relationship to other documents
   describing network Symptom semantics and network incident lifecycle.

   The described architecture for detecting IP network service
   interruption is designed to be generic applicable and extensible.
   Different applications are described and examples are referenced with
   open-source running code.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-nmop-network-anomaly-architecture-08"/>
        </reference>
        <reference anchor="I-D.ietf-nmop-network-anomaly-lifecycle">
          <front>
            <title>An Experiment: Network Anomaly Detection Lifecycle</title>
            <author fullname="Vincenzo Riccobene" initials="V." surname="Riccobene">
              <organization>Huawei</organization>
            </author>
            <author fullname="Thomas Graf" initials="T." surname="Graf">
              <organization>Swisscom</organization>
            </author>
            <author fullname="Wanting Du" initials="W." surname="Du">
              <organization>Swisscom</organization>
            </author>
            <author fullname="Alex Huang Feng" initials="A. H." surname="Feng">
              <organization>Deutsche Telekom</organization>
            </author>
            <date day="6" month="September" year="2026"/>
            <abstract>
              <t>   This document defines a structured, iterative lifecycle for network
   anomaly detection systems to enable "human-in-the-loop" refinements.
   Key contributions include defining three lifecycle stages, a state
   machine for anomaly annotations, and YANG data models for
   standardized labeling and exchange.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-nmop-network-anomaly-lifecycle-07"/>
        </reference>
        <reference anchor="I-D.ietf-nmop-network-anomaly-semantics">
          <front>
            <title>Semantic Metadata Annotation for Network Anomaly Detection</title>
            <author fullname="Thomas Graf" initials="T." surname="Graf">
              <organization>Swisscom</organization>
            </author>
            <author fullname="Wanting Du" initials="W." surname="Du">
              <organization>Swisscom</organization>
            </author>
            <author fullname="Alex Huang Feng" initials="A. H." surname="Feng">
              <organization>Deutsche Telekom</organization>
            </author>
            <author fullname="Vincenzo Riccobene" initials="V." surname="Riccobene">
              <organization>Huawei</organization>
            </author>
            <date day="6" month="July" year="2026"/>
            <abstract>
              <t>   The document proposes a unified symptoms vocabulary for network
   anomaly metadata to improve data sharing and analysis among human
   network operators, network analytics implementers, and AI systems to
   improve accuracy of Service Disruption Detection.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-nmop-network-anomaly-semantics-06"/>
        </reference>
        <reference anchor="RFC7942">
          <front>
            <title>Improving Awareness of Running Code: The Implementation Status Section</title>
            <author fullname="Y. Sheffer" initials="Y." surname="Sheffer"/>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <date month="July" year="2016"/>
            <abstract>
              <t>This document describes a simple process that allows authors of Internet-Drafts to record the status of known implementations by including an Implementation Status section. This will allow reviewers and working groups to assign due consideration to documents that have the benefit of running code, which may serve as evidence of valuable experimentation and feedback that have made the implemented protocols more mature.</t>
              <t>This process is not mandatory. Authors of Internet-Drafts are encouraged to consider using the process for their documents, and working groups are invited to think about applying the process to all of their protocol specifications. This document obsoletes RFC 6982, advancing it to a Best Current Practice.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="205"/>
          <seriesInfo name="RFC" value="7942"/>
          <seriesInfo name="DOI" value="10.17487/RFC7942"/>
        </reference>
      </references>
    </references>
    <?line 2385?>

<section anchor="examples-of-network-incident-format-representation">
      <name>Examples of Network Incident Format Representation</name>
      <section anchor="network-incident-correlated-with-specific-network-topology-and-the-network-service">
        <name>Network Incident Correlated with Specific Network Topology and the Network Service</name>
        <t>In this example, we show a network incident that are associated with the
service-instance "optical-svc-A", the node 'D1', the network topology 'L2-Topo'
and the domain 'PTN'. The Probable Root Cause is also analysed.</t>
        <artwork><![CDATA[
{
  "ietf-incident:incidents": {
    "incident": [
      {
        "name": "line fault",
        "type": "ietf-incident:problem",
        "incident-qualifier": "line fault",
        "incident-no": 56433218,
        "service-instance": [
          "optical-svc-A"
        ],
        "domain": "ptn",
        "priority": "critical",
        "occur-time": "2026-03-10T04:01:12Z",
        "clear-time": "2026-03-10T06:01:12Z",
        "ack-time": "2026-03-10T05:01:12Z",
        "last-updated": "2026-03-10T05:31:12Z",
        "ack-status": "unacknowledged",
        "category": "ietf-incident:network",
        "sources": {
          "source": [
            {
              "node-ref": "example:D1",
              "network-ref": "example:L2-topo",
              "resource": [
                {
                  "name": "7985e01a-5aad-11ea-b214-286ed488cf99"
                }
              ]
            }
          ]
        },
        "probable-causes": {
          "probable-cause": [
            {
              "name": "Feeder fiber great loss change",
              "detail-information": "The connector of the optical fiber is\
                                     contaminated, Or the optical fiber is\
                                     bent too much.",
              "probable-cause": {
                "network-ref": "example:L2-topo",
                "node-ref": "example:D1",
                "resource": [
                  {
                    "name": "7985e01a-5aad-11ea-b214-286ed488cf99",
                    "cause-name": "ltp",
                    "detail": "Frame=0, Slot=6, Subslot=65535, Port=7,\
                               ODF= ODF001,Level1Splitter= splitter0025"
                  }
                ]
              }
            }
          ]
        },
        "probable-events": {
          "probable-event": [
            {
              "event-id": "8921834",
              "type": "alarm"
            }
          ]
        },
        "events": {
          "event": [
            {
              "event-id": "8921832",
              "type": "alarm"
            },
            {
              "event-id": "8921833",
              "type": "alarm"
            },
            {
              "event-id": "8921834",
              "type": "alarm"
            }
          ]
        }
      }
    ]
  }
}
]]></artwork>
      </section>
      <section anchor="json-example-on-incident-notifications">
        <name>JSON Example on Incident Notifications</name>
        <t>In this example, we show an example of the Incident notification in
JSON encoding for the incident base model.</t>
        <artwork><![CDATA[
{
  "example-incident-module:incident-notification": {
    "incident-no": "INC-2026-98765",
    "name": "Link Failure Core Router",
    "type": "example-types:hardware-fault",
    "incident-qualifier": "interface-down",
    "service-instance": [
      "srv-mpls-vpn-01",
      "srv-voip-05"
    ],
    "domain": "example-types:transport-network",
    "priority": "critical",
    "status": "active",
    "ack-status": "unacknowledged",
    "category": "example-types:network-infrastructure",
    "detail": "Interface GigabitEthernet0/0/1 reports a Link Down state due\
               to loss of signal.",
    "resolve-advice": "Check physical fiber connections and optics transceiver\
                       at local node.",
    "sources": {
      "source": [
        {
          "node-ref": "router-core-01",
          "network-ref": "backbone-east",
          "resource": [
            {
              "name": "GigabitEthernet0/0/1"
            }
          ]
        }
      ]
    },
    "probable-causes": {
      "probable-cause": [
        {
          "node-ref": "router-core-01",
          "network-ref": "backbone-east",
          "resource": [
            {
              "name": "GigabitEthernet0/0/1",
              "cause-name": "example-types:los-of-signal",
              "detail": "Laser rx power below operational threshold."
            }
          ],
          "cause-name": "example-types:interface-hardware-failure",
          "detail": "SFP module may need replacement."
        }
      ]
    },
    "probable-events": {
      "probable-event": [
        {
          "type": "example-types:link-down-event",
          "event-id": "EV-10293"
        }
      ]
    },
    "events": {
      "event": [
        {
          "type": "example-types:alarm-event",
          "event-id": "AL-55443",
          "alarm": {
            "resource": "GigabitEthernet0/0/1",
            "alarm-type-id": "link-down",
            "alarm-type-qualifier": "port-failure"
          }
        }
      ]
    },
    "time": "2026-09-12T08:47:00Z"
  }
}
]]></artwork>
      </section>
      <section anchor="network-incident-correlated-with-trouble-tickets">
        <name>Network Incident Correlated with Trouble Tickets</name>
        <t>In this document, the objective of the Incident Management is to identify
Probable Root Causes and reduce duplicated tickets.</t>
        <t>Previously, a troubleshooting ticket was created upon receipt of a
critical alert by the OSS system, e.g., due to excessive BGP flaps on
a particular device. Such troubleshooting ticket will trigger
Network Incident Management in the network controller. Therefore
normally troubleshooting tickets and network incident are managed
by the OSS and the network controller respectively. However
Network troubleshooting is sometimes complicated and requires data
gathering and analysis from many different tools from the controllers,
therefore correlation between troubleshooting ticket and network incident
becomes necessary.</t>
        <figure anchor="exam3">
          <name>Correlation with troubleshooting tickets</name>
          <artwork align="center"><![CDATA[
+------------------------------------------------+
|OSS +---------------------------------------+   |
|    |           Ticket System               |   |
|    +----------------+----------------------+   |
|                     |1.Ticket                  |
|                     |  Creation                |
|    +----------------V----------------------+   |
|    |           Incident Handler            |   |
|    +------+-------+------------+---------^-+   |
+-----------+-------+------------+---------+-----+
     2.Incident   3.Incident   4.|Incident |5.Incident
     Ack with     Diagnosis      |Resolve  |Update
     Ticket-no    with           |with     |Notification
            |     ticket-no      |Ticket-no|with Ticket-no
+-----------+-------+------------+---------+-----+
|Controller |       |            |         |     |
|   +-------V-------V------------V---------+-+   |
|   |           Incident Process             |   |
|   +----------------------------------------+   |
+------------------------------------------------+
]]></artwork>
        </figure>
        <t>In order to manage the correlation between network incidents and
trouble tickets in the YANG data model, three RPCs to manage the
network incidents and one notification to report on network incident
state changes defined in "ietf-incident" module can be further
extended to include "ticket-no" attribute so that such correlation
can be carried in the incident update notification and report the
upper-layer OSS system. Such correlation can be used by the incident
handler in the upper-layer OSS system for
further fault demarcation, e.g., identify whether the fault is on the
user side or on the network side.</t>
        <artwork><![CDATA[
rpcs:
 +---x incident-acknowledge
 | +---w input
 |     +---w incident-no* incident-ref
 |     +---w ticket-no? string
 +---x incident-diagnose
 | +---w input
 | |   +---w incident-no* incident-ref
 | |   +---w ticket-no? string
 | +--ro output
 | |   +--ro task-id? string
 +---x incident-resolve
 | +---w input
 |     +---w incident-no* incident-ref
 |     +---w ticket-no? string

 notifications:
 +---n incident-notification
 |   +--ro incident-no? incident-ref
 |   +--ro ticket-no? string
 +--
...
]]></artwork>
      </section>
      <section anchor="intent-based-networking-with-incident-diagnosis-task-list">
        <name>Intent Based Networking with Incident Diagnosis Task List</name>
        <t>In this document, the incident-diagnosis RPC defined in "ietf-
incident" module can be used to identify Probable Root Causes; and an
incident update notification can be triggered to report the diagnosis
status if successful.</t>
        <t>In some cases, workflows may span a long duration or involve multiple steps
task. In such case, intent based networking concept can be used to support
such multiple step task and provide more detailed network diagnosis
information.</t>
        <figure anchor="exam4">
          <name>Diagnosis Task Management</name>
          <artwork align="center"><![CDATA[
+------------------------------------------------+
| OSS                                            |
|    +---------------------------------------+   |
|    |           Incident Handler            |   |
|    +------+-----------^-----------+--------+   |
+-----------+-----------+-------------+----------+
            |Diagnosis  |Diagnosis    |NETCONF
            |Task       |Task         |<get-config>
            |Creation   |Notification |
+-----------+-----------+-------------+----------+
|Controller |           |           |            |
|   +-------V-----------------------V--------+   |
|   |           Incident Process             |   |
|   +----------------------------------------+   |
+------------------------------------------------+
]]></artwork>
        </figure>
        <t>To do so, the new "diagnosis task creation" RPC can be further defined to
support "task-id" attribute in the output parameters and other auxiliary
attributes in the input parameters. such RPC can be used to return task-id
from the controller. The controller is responsible for task-id allocation
and maintaining task-id list.</t>
        <artwork><![CDATA[
    +---x diagnose-task-creation
    |  +---w input
    |  |  +---w incident-no?       string
    |  |  +---w ticket-no?         string
    |  |  +---w occur-time?        yang:date-and-time
    |  |  +---w context?           string
    |  |  +---w related-events
    |  |  |  +---w probable-event* []
    |  |  |     +---w type?       leafref
    |  |  |     +---w event-id?   leafref
    |  |  +---w related-objects
    |  |     +---w source* [node-ref]
    |  |        +---w node-ref       leafref
    |  |        +---w network-ref?   leafref
    |  |        +---w resource* [name]
    |  |           +---w name    al:resource
    |  +--ro output
    |     +--ro task-id?   string
]]></artwork>
        <t>"ietf-incident" module can be further
extended to include "incident-diagnosis-task" list with the following diagnosis
information:</t>
        <ul spacing="normal">
          <li>
            <t>The current status (e.g., created, diagnosing, diagnosed, finished) of each
diagnosis task.</t>
          </li>
          <li>
            <t>Task start time, end time, diagnosis result (succeeded, failed), failure
description, etc.</t>
          </li>
          <li>
            <t>Probable Root Causes, probable events, repair recommendations, etc.</t>
          </li>
        </ul>
        <t>so that OSS system can use NETCONF &lt;get-config&gt; operation to look up
the diagnosis task detailed information based on such module extension.</t>
        <artwork><![CDATA[
    augment /inc:incidents/inc:incident:
    +--ro incident-diagnosis-tasks
    |   +--ro incident-diagnosis-task* [task-id]
    |   +--ro task-id? string
    |   +--ro incident-no* incident-ref
    |   +--ro ticket-no? string
    |   +--ro start-time? yang:date-and-time
    |   +--ro end-time? yang:date-and-time
    |   +--ro task-state? enumeration
    |   +--ro diagnosis-result? enumeration
    |   +--ro diagnosis-result-description? string
    |   +--ro probable-causes leafref //List <RootCause>
    ...
    |   +--ro probable-events leafref //List <Event>
    ...
    |   +-- ro repair-advices
    |   +-- ro state enumeration // Incident states such as
                                 // Creation, Update, Clear
    ...
]]></artwork>
        <t>In addition, the new Diagnosis Task Notification can be defined to support
Diagnosis Task related attributes reporting.</t>
        <artwork><![CDATA[
    +---n task-notification
    |  +--ro task-id?                        string
    |  +--ro incident-no?                    string
    |  +--ro ticket-no?                      string
    |  +--ro start-time?                     yang:date-and-time
    |  +--ro end-time?                       yang:date-and-time
    |  +--ro task-state?                     task-state
    |  +--ro diagnosis-result?               diagnosis-result
    |  +--ro diagnosis-result-description?   string
    |  +--ro probable-causes
    |  |  +--ro probable-cause* []
    |  |     +--ro node-ref?      leafref
    |  |     +--ro network-ref?   leafref
    |  |     +--ro resource* [name]
    |  |     |  +--ro name          al:resource
    |  |     |  +--ro cause-name?   identityref
    |  |     |  +--ro detail?       string
    |  |     +--ro cause-name?    identityref
    |  |     +--ro detail?        string
    |  +--ro probable-events
    |  |  +--ro probable-event* []
    |  |     +--ro type?       leafref
    |  |     +--ro event-id?   leafref
    |  +--ro repair-advices?   string
    |  +--ro incident-status?  incident-status-value
]]></artwork>
        <t>So that the controller can send diagnosis task notification to the OSS system
upon diagnosis task completes and outputs repair suggestion.</t>
      </section>
      <section anchor="multi-domain-fault-demarcation-with-network-incident-management">
        <name>Multi-Domain Fault Demarcation with Network Incident Management</name>
        <t>Take multi-domain fault demarcation as an example, when both base station incident
in the RAN network and Network Link incident in the IP network are received and
base station incident from user side results from network incident in other domains,
the OSS system is unable to find network side problem simply based on base station
incident. Therefore incident diagnosis RPC will be invoked with IP address of Base
station and incident start time as input and sent to the network controller.
The network controller can use network diagnosis related intent based interface to
find the corresponding network side port  according to the base station IP address,
and then further associated with transmission path (current path, historical path) to
the base station and current and historical network performance, network resources,
and incident status data, to diagnose the Probable Root Cause of the network incident
and provide repair suggestions.</t>
        <figure anchor="exam5">
          <name>Multi-Domain Fault Demarcation</name>
          <artwork align="center"><![CDATA[
 +------------------------------------------------+
 |OSS +------------------------------------------+|
 |    |           Incident Handler               ||
 |    +----^------------------------^------+-----+|
 +---------+------------------------|------|------+
      Incident                      |      |
           |                        |      |
       Update           |      Incident   Incident
      Notification      |       Update    Diagnosis
           |            |     Notification |
           |                        |      |
 +---------------+      |           |      |
 | +-----------+ |      |     +-----|------+--+
 | | Incident  | |      |     | +---+------V+ |
 | | Process   | |      |     | | Incident  | |
 | +-----------+ |            | | Process   | |
 | RAN Controller|      |     | +-----------+ |
 +---------------+      |     | IP Controller |
                        |     +---------------+
                        |
RAN Autonomous Domain   |       IP Autonomous Domain
                        |
Diagnosis Key Parameters:
{
ticket-no, string
incident-no, string
occur-time, yang:date-and-time
context? string
related-events?  leafref //List <Event>
related-objects? leafref //List <ResourceObject>
 ....
}

]]></artwork>
        </figure>
      </section>
      <section anchor="service-complaint-triggered-network-diagnosis">
        <name>Service Complaint triggered Network Diagnosis</name>
        <figure anchor="exam6">
          <name>Service Complaint triggered Network Diagnosis</name>
          <artwork align="center"><![CDATA[
                                   Customer
                                   Complaint
                                 | on Service
                                 | Degradation
               +-----------------V-----------------------+
               |OSS +-----------------------------------+|
               |    |          Incident Handler         ||
               |    +------------^------^---------------+|
               +-----------------+------+----------------+
   Diagnosis            Incident |      |Incident Update
   Key Parameters:      Diagnosis|      | Notification
   {                       +-----|------+--+
   incident-no,            | +---V------|+ |
   ticket-no,              | | Incident  | |
   occur-time,             | | Process   | |
   context?,               | |           | |
   related-events?,        | |           | |
   related-objects?,       | |           | |
   ...                     | +-----------+ |
                           | IP Controller |
   }                       +---------------+


                           IP Autonomous Domain
]]></artwork>
        </figure>
        <t>Similarly, in case of service degradation for a lease line service receiving from the
customer, the OSS system can request network diagnosis at the network side conducted by
the network controller. The network controller can use network diagnosis related intent
based interface to find the corresponding network side port based on the dedicated line
service, and then further associate the transmission path (current path, historical path)
and current and historical network performance, network resources, and incident status data
to diagnose the Probable Root Cause of the fault and provide repair suggestions.</t>
      </section>
    </section>
    <section anchor="changes-between-revisions">
      <name>Changes between Revisions</name>
      <t>NOTE TO THE RFC-EDITOR: Please remove this appendix before publication</t>
      <t>v14 - v15</t>
      <ul spacing="normal">
        <li>
          <t>Replace incident-id with incident-qualifier</t>
        </li>
        <li>
          <t>Add a new definition for the incident process</t>
        </li>
        <li>
          <t>replace probable cause with probable root cause in the YANG model</t>
        </li>
        <li>
          <t>Clean up probable cause in the normative text</t>
        </li>
        <li>
          <t>Remove cause-name identity to align with example in A.1</t>
        </li>
        <li>
          <t>Change the type of root cause into string</t>
        </li>
        <li>
          <t>Fix invalid yang instance in the appendix A.1</t>
        </li>
        <li>
          <t>Clean up unused references</t>
        </li>
        <li>
          <t>Fix Incident priority issue raised by Adrian</t>
        </li>
        <li>
          <t>Add JSON example on YANG notification for Base Model</t>
        </li>
        <li>
          <t>Add Security Consideration for incident-acknowledgement</t>
        </li>
        <li>
          <t>Add implementation status section</t>
        </li>
        <li>
          <t>Add incident-not-found support</t>
        </li>
        <li>
          <t>Other Editorial changes</t>
        </li>
      </ul>
      <t>v10 - v11</t>
      <ul spacing="normal">
        <li>
          <t>Remove log identity</t>
        </li>
        <li>
          <t>Add other cases such metric, notification</t>
        </li>
        <li>
          <t>Replace incident-class with incident-type</t>
        </li>
        <li>
          <t>Replace factor with fault condition</t>
        </li>
        <li>
          <t>Reference RFC9375 for metric event type</t>
        </li>
        <li>
          <t>Replace probable cause with probable root cause</t>
        </li>
      </ul>
      <t>v08 - v09</t>
      <ul spacing="normal">
        <li>
          <t>Second alignment with RFC9940</t>
        </li>
        <li>
          <t>Fix document references to match Model references</t>
        </li>
        <li>
          <t>Allow create incident without knowing the source</t>
        </li>
        <li>
          <t>Make incident-no mandatory</t>
        </li>
        <li>
          <t>Add clarification text for min-element set to unknown</t>
        </li>
        <li>
          <t>Update YANG model tree diagram to align with update of YANG data model</t>
        </li>
        <li>
          <t>Create ietf-incident-tree diagram</t>
        </li>
      </ul>
      <t>v07 - v08</t>
      <ul spacing="normal">
        <li>
          <t>Add a new section to clarify Relationship with network anomaly architecture;</t>
        </li>
        <li>
          <t>Clarify the relation with OAM Schdule YANG in section 4;</t>
        </li>
        <li>
          <t>Abstract update;</t>
        </li>
        <li>
          <t>Terminology alignment with RFC9940;</t>
        </li>
        <li>
          <t>Other Editorial changes;</t>
        </li>
      </ul>
      <t>v06 - v07</t>
      <ul spacing="normal">
        <li>
          <t>Fix Yanglint issue in the YANG data model.</t>
        </li>
        <li>
          <t>Align with RFC8407bis section 3.8.3.1 IANA template.</t>
        </li>
        <li>
          <t>Align with YANG Module Security Considerations template.</t>
        </li>
        <li>
          <t>Probable Root Cause Definition Polishing.</t>
        </li>
        <li>
          <t>Tree diagram update for RPC error construct</t>
        </li>
      </ul>
      <t>v05 - v06</t>
      <ul spacing="normal">
        <li>
          <t>Break down A.3 into 3 sections covering 3 examples.</t>
        </li>
      </ul>
      <t>v04 - v05</t>
      <ul spacing="normal">
        <li>
          <t>Replace probable cause with probable root cause based on Adrian and Benoit's suggestion.</t>
        </li>
        <li>
          <t>Address editorial comments raised by Aitken Paul.</t>
        </li>
        <li>
          <t>YANG Model editorial changes based on Aitken Paul's comments.</t>
        </li>
      </ul>
      <t>v03 - v04</t>
      <ul spacing="normal">
        <li>
          <t>Remove constraint of using machine learning for service impact assessment
and replace machine learning with algorithmic techniques.</t>
        </li>
        <li>
          <t>Replace root cause with probable cause based on IETF 122 NMOP Session Discussion.</t>
        </li>
        <li>
          <t>Add two ITU-T references for probable cause definition in the terminologies section.</t>
        </li>
        <li>
          <t>Add Lionel Tailhardat from Orange as new contributors based on his input.</t>
        </li>
        <li>
          <t>Add two new examples in the Appendix to explore correlation between troubleshooting
ticket and incident management and intent based network diagnoisis interaction.</t>
        </li>
      </ul>
      <t>v02 - v03</t>
      <ul spacing="normal">
        <li>
          <t>Cross-checking terminology across NMOP drafts based on Adrian's comments.</t>
        </li>
        <li>
          <t>Align with the Terminology draft based on Thomas's comments.</t>
        </li>
        <li>
          <t>Clarify the relation between the Network Incident, and Customer Incident.</t>
        </li>
        <li>
          <t>Add service impact assessment term and its definition.</t>
        </li>
        <li>
          <t>Clarify the relation between fault, problem, incident, service.</t>
        </li>
        <li>
          <t>Other Editorial changes.</t>
        </li>
      </ul>
      <t>v01 - v02</t>
      <ul spacing="normal">
        <li>
          <t>Clarify the relation between fault, incident and problem.</t>
        </li>
        <li>
          <t>Clarify the relation between fault management and incident management.</t>
        </li>
        <li>
          <t>Add clarification text to make draft focus on network level incident management,
not be tied with OSS or under the control of OSS.</t>
        </li>
        <li>
          <t>Other Editorial changes.</t>
        </li>
      </ul>
      <t>v00 - v01</t>
      <ul spacing="normal">
        <li>
          <t>Clarify the relationship between incident-no and incident-id.</t>
        </li>
        <li>
          <t>Fix Tree Diagram to align with YANG module code change.</t>
        </li>
        <li>
          <t>Add json example in the appendix.</t>
        </li>
        <li>
          <t>Add failure handling process for RPC error.</t>
        </li>
        <li>
          <t>Clarify the relationship between events and cause.</t>
        </li>
        <li>
          <t>Clarify synchronous nature of these RPCs.</t>
        </li>
        <li>
          <t>Clarify the relationship between inter-layer and inter-domain.</t>
        </li>
        <li>
          <t>Refer to terminology draft for terminology alignment.</t>
        </li>
        <li>
          <t>Fix pyang compilation issue and yang lint issue.</t>
        </li>
        <li>
          <t>Fix Broken ref by using node-ref defined in RFC8345.</t>
        </li>
        <li>
          <t>Update YANG data model based on issues raised in issue tracker of the github.</t>
        </li>
        <li>
          <t>Shorten the list of authors to 5 based on chairs' comment and move additional authors
to top 3 contributors.</t>
        </li>
        <li>
          <t>Merge ietf-incident-type.yang into ietf-incident.yang</t>
        </li>
        <li>
          <t>Fix enumeration on leaf type</t>
        </li>
        <li>
          <t>Clarify the scope in the abstract and introduction and make
the scope focus on YANG data model</t>
        </li>
        <li>
          <t>Provide text around figure 5 to clarify how the incident
server know the real effect on the relevant services.</t>
        </li>
        <li>
          <t>Other editorial changes.</t>
        </li>
      </ul>
      <t>v00 (draft-ietf-nmop-network-incident-yang)</t>
      <ul spacing="normal">
        <li>
          <t>Change draft name from draft-feng-opsawg-incident-management
into draft-feng-nmop-netwrok-incident-yang</t>
        </li>
        <li>
          <t>Change title into A YANG Data Model for Network Incident Management</t>
        </li>
        <li>
          <t>open issues is tracked in https://github.com/billwuqin/network-incident/issues</t>
        </li>
      </ul>
    </section>
    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
      <name>Contributors</name>
      <contact fullname="Lionel Tailhardat">
        <organization>Orange</organization>
        <address>
          <email>lionel.tailhardat@orange.com</email>
        </address>
      </contact>
      <contact fullname="Thomas Graf">
        <organization>Swisscom</organization>
        <address>
          <postal>
            <country>Switzerland</country>
          </postal>
          <email>thomas.graf@swisscom.com</email>
        </address>
      </contact>
      <contact fullname="Zhenqiang Li">
        <organization>CMCC</organization>
        <address>
          <email>li_zhenqiang@hotmail.com</email>
        </address>
      </contact>
      <contact fullname="Yanlei Zheng">
        <organization>China Unicom</organization>
        <address>
          <email>zhengyanlei@chinaunicom.cn</email>
        </address>
      </contact>
      <contact fullname="Yunbin Xu">
        <organization>CAICT</organization>
        <address>
          <email>xuyunbin@caict.ac.cn</email>
        </address>
      </contact>
      <contact fullname="Xing Zhao">
        <organization>CAICT</organization>
        <address>
          <email>zhaoxing@caict.ac.cn</email>
        </address>
      </contact>
      <contact fullname="Chaode Yu">
        <organization>Huawei</organization>
        <address>
          <email>yuchaode@huawei.com</email>
        </address>
      </contact>
    </section>
  </back>
  <!-- ##markdown-source:
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
vAEA

-->

</rfc>
