<?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.31 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-mackey-nmop-kg-for-netops-04" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.32.0 -->
  <front>
    <title abbrev="Knowledge Graph NetOps">Knowledge Graph Framework for Network Operations</title>
    <seriesInfo name="Internet-Draft" value="draft-mackey-nmop-kg-for-netops-04"/>
    <author fullname="Michael Mackey">
      <organization>Huawei</organization>
      <address>
        <postal>
          <country>Ireland</country>
        </postal>
        <email>michael.mackey@huawei.com</email>
      </address>
    </author>
    <author fullname="Benoit Claise">
      <organization>Everything-Ops</organization>
      <address>
        <postal>
          <country>Belgium</country>
        </postal>
        <email>Benoit@everything-ops.net</email>
      </address>
    </author>
    <author fullname="Thomas Graf">
      <organization>Swisscom</organization>
      <address>
        <postal>
          <street>Binring 17</street>
          <city>Zurich</city>
          <code>8045</code>
          <country>Switzerland</country>
        </postal>
        <email>thomas.graf@swisscom.com</email>
      </address>
    </author>
    <author fullname="Holger Keller">
      <organization>Deutsche Telekom</organization>
      <address>
        <postal>
          <country>Germany</country>
        </postal>
        <email>Holger.Keller@telekom.de</email>
      </address>
    </author>
    <author fullname="Dan Voyer">
      <organization>Bell Canada</organization>
      <address>
        <postal>
          <country>Canada</country>
        </postal>
        <email>daniel.voyer@bell.ca</email>
      </address>
    </author>
    <author fullname="Paolo Lucente">
      <organization>NTT</organization>
      <address>
        <postal>
          <street>Veemweg 23</street>
          <city>Barneveld</city>
          <code>3771</code>
          <country>Netherlands</country>
        </postal>
        <email>paolo@ntt.net</email>
      </address>
    </author>
    <author fullname="Ignacio Dominguez Martinez-Casanueva">
      <organization>Telefonica</organization>
      <address>
        <postal>
          <country>Spain</country>
        </postal>
        <email>ignacio.dominguezmartinez@telefonica.com</email>
      </address>
    </author>
    <date year="2026" month="April" day="06"/>
    <area>Operations and Management</area>
    <workgroup>NMOP</workgroup>
    <abstract>
      <?line 78?>

<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.</t>
      <t>Discussion Venues</t>
      <t>This note is to be removed before publishing as an RFC.</t>
      <t>Source for this draft and an issue tracker can be found at
   https://github.com/mike-mackey.</t>
    </abstract>
  </front>
  <middle>
    <?line 90?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The IAB organized a workshop in June 2002 to establish a dialog between
network operators and protocol developers, to guide IETF when
working on network management protocols and data models. The outcome of that workshop
was documented in the "Overview of the 2002 IAB Network Management
Workshop" <xref target="RFC3535"/> which identified 14 operator requirements for
consideration in future network management protocol design and related
data models, along with some recommendations for the IETF.</t>
      <t>The RFC3535 requirements were instrumental in developing first the
NETCONF protocol (in the NETCONF Working Group) <xref target="RFC6241"/>, the
associated YANG data modelling language (in the NETMOD Working Group)
<xref target="RFC7950"/>, RESTCONF <xref target="RFC8040"/>, and most recently CORECONF
<xref target="I-D.ietf-core-comi"/>.</t>
      <t>A new IAB workshop, Next Era of Network Management Operations (NEMOPS),
is getting organized to tackle the next big challenges in the world of
network management. Exactly like the previous workshops, operator
challenges and requirements will be documented. The new set of requirements 
will hopefully guide the Operational and Management Area (OPS)
<eref target="https://datatracker.ietf.org/group/ops/about/"/> future directions.</t>
      <t>This document describes the challenges in network operations, and
proposes a new framework based on knowledge graph, to solve (some of)
those operational challenges, mainly how to automatically assure networks.</t>
      <t>As an introduction, let's review the difference between information model and data model.
Quoting RFC 3444 <xref target="RFC3444"/>, "The main purpose of an information model is to model
managed objects at a conceptual level, independent of any specific
implementations or protocols used to transport the data. The degree of
specificity (or detail) of the abstractions defined in the information
model depends on the modelling needs of its designers. In order to make
the overall design as clear as possible, an information model should
hide all protocol and implementation details. Another important
characteristic of an information model is that it defines relationships
between managed objects."</t>
      <t><strong>An information model</strong>, typically expressed in a language such as Unified
modelling Language (UML) do not generate the full APIs, as it lacks some
of the implementation- and protocol-specific details; for example, rules
that explain how to map managed objects onto lower-level protocol
constructs.</t>
      <t><strong>A data model</strong>, on the other end, can directly be used for network
automation. As an example, YANG data models <xref target="RFC7950"/> can generate
APIs, to be accessed by protocols such as NETCONF and RESTCONF.</t>
    </section>
    <section anchor="challenges">
      <name>Challenges</name>
      <t>This section covers the current operational challenges.</t>
      <section anchor="data-overload-from-network-operations">
        <name>Data Overload from Network Operations</name>
        <t>Modern network operators are inundated with vast amounts of data
generated from various sources within the network. This data encompasses
information from the management plane, control plane, and data plane.
Each contributing to a massive influx of information. The sheer volume
of data is staggering, making it challenging even for advanced computer
systems to process and analyze effectively.</t>
      </section>
      <section anchor="difficulties-in-data-analysis-and-insight-extraction">
        <name>Difficulties in Data Analysis and Insight Extraction</name>
        <t>Data analysts with network domain knowledge play a crucial role in leveraging
this data to predict faults, perform Root Cause Analysis (RCA), and implement
automatic remediation. However, they often struggle to extract useful
information due to the overwhelming volume, data standardization and complexity of the data. The 
challenge lies not only in processing the data but also in finding meaningful
patterns and correlations that can derive actionable insights.</t>
      </section>
      <section anchor="complex-data-correlation-requirements">
        <name>Complex Data Correlation Requirements</name>
        <t>A significant challenge in modern network operations is the need to
correlate data from different planes - management, control, and data. Each
plane generates its own set of data, often stored in disparate
repositories and formats. Linking this information together is essential
to gain a holistic view of network operations but is inherently
difficult.</t>
      </section>
      <section anchor="service-and-customer-correlation">
        <name>Service and Customer Correlation</name>
        <t>Ultimately, all collected data must be correlated back to specific
connectivity services (and its customers). This correlation is critical for
understanding the impact of network events on service quality and
customer experience. However, the process of linking management plane
data with control plane and data plane information, is to provide a coherent
connectivity service with customer perspective is extremely challenging. Even as
a simpler challenge, it's not always easy to correlate the configuration management 
plane information with the streamed operational data: YANG, as a data modelling<br/>
language simplifies the situation, if used for both config and streaming but
some extra correlation might anyway be required beyond the data model.</t>
      </section>
      <section anchor="data-storage-and-format-disparities">
        <name>Data Storage and Format Disparities</name>
        <t>Data is frequently stored in multiple repositories, each potentially
using different formats. This fragmentation makes it difficult to manage
the links between different data sets. In some cases, these links, relationships,
may be lost within the engines of the management and analytics systems, leading
to incomplete or incorrect analyses.</t>
        <t>For example, data is stored using a variety of data model languages, sometimes different 
schemas for a specific data model language (for example YANG ), which are sometimes
different per router vendors, often siloed in different applications and storage platforms.
Establishing relationships between this data, especially when
disconnected from the service context and original intent, is
exceedingly difficult. This fragmentation hinders the ability to
maintain a cohesive understanding of network operations and their
impacts on service quality.</t>
      </section>
      <section anchor="contextual-understanding-and-relationship-mapping">
        <name>Contextual Understanding and Relationship Mapping</name>
        <t>To reduce the problem space and facilitate automated decision-making, it
is essential to understand the context and semantic of the data, the
relationships between different data sets, and how this data relates to
the overall network. By developing a clear understanding of these
relationships, network operators can make more informed and quicker
decisions, which is crucial for achieving autonomous operations.</t>
      </section>
      <section anchor="loss-of-context-in-data-collection">
        <name>Loss of Context in Data Collection</name>
        <t>The context of the collected data is often lost, complicating the task
of network monitoring and analysis. For instance, it can be challenging
to determine what a particular interface represents (in other words, its role): 
is it a Provider Edge (PE), Provider (P), Customer Edge (CE), or an interface on an Autonomous System
Boundary Router (ASBR) (or ABR)? Based on this particular context, the intent is obviously different, 
and, as a consequence, this context is key to interpret the collected data. For example,
the IP addresses observed on CE router, PE router, or P router have different context (and on the PE router, 
it actually depends if we refer to CE-facing or PE-facing interface).
As a different example, understanding whether a link serves
as a primary connection for certain customers or a backup for others is
critical but frequently ambiguous.</t>
      </section>
      <section anchor="data-collection-methods-and-interpretation">
        <name>Data Collection Methods and Interpretation</name>
        <t>The methods and intervals at which data is collected also vary, which contributes in adding
another layer of complexity. Data might be sampled within specific time
windows, on-change, on-demand, or periodically. It might represent an
aggregation or calculation of other values. Understanding how the router
or analytics engine computes this data is vital for accurate analysis
and troubleshooting.</t>
      </section>
      <section anchor="organizational-silos">
        <name>Organizational Silos</name>
        <t>In many organizations, network configuration and operations teams
function as separate entities. This division can lead to a disconnect
where the rationale behind network changes is lost or miscommunicated
between teams. This lack of cohesion can further complicate data
correlation and analysis efforts.</t>
      </section>
      <section anchor="multiple-sources-of-truths">
        <name>Multiple Sources of Truths</name>
        <t>What is the network intent? Is it owned in the controller, or the
current network is the network intent? What if the network is configured
at the same time from the controller and from the CLI (for quick network
anomaly resolution), does it imply that the network intent is partially
in the controller, and partially in the network state? There are actually 
multiple sources of truth in networking:</t>
        <ul spacing="normal">
          <li>
            <t>the controller configuration (intended state)</t>
          </li>
          <li>
            <t>the network itself (applied state, described by the Digital Map)</t>
          </li>
          <li>
            <t>the inventory, typically stored across different systems, with
a different ID (sometimes UUID <xref target="RFC7950"/>)</t>
          </li>
          <li>
            <t>the IP Address Management (IPAM) is another other source of truth</t>
          </li>
          <li>
            <t>etc.</t>
          </li>
        </ul>
      </section>
      <section anchor="machine-readable-knowledge">
        <name>Machine Readable Knowledge</name>
        <t>While we mentioned multiple data sources, with different data modelling languages,
the requirement is to have one data sources in a machine readable way,
with the ability to correlate and link information.<br/>
Note that, sometimes, the modelling language is simply not existent, as protocols 
such as BMP or BGP-LS directly stream PDUs.</t>
      </section>
    </section>
    <section anchor="ietf-initiatives">
      <name>IETF Initiatives</name>
      <t>To help with the different challenges mentioned in the previous section,
the IETF standardized some RFCs, while some IETF drafts are currently
being worked on:</t>
      <ul spacing="normal">
        <li>
          <t>Service Assurance for Intent Based Networking <xref target="RFC9417"/> <xref target="RFC9418"/></t>
        </li>
        <li>
          <t>Network Telemetry framework <xref target="RFC9232"/> explains the different telemetry mechanisms</t>
        </li>
        <li>
          <t><eref target="https://datatracker.ietf.org/doc/draft-ietf-nmop-yang-message-broker-integration/">draft-ietf-nmop-yang-message-broker-integration-03</eref><br/>
specifies an Architecture for YANG-Push to Message Broker Integration is helping with the data collection aspects.</t>
        </li>
        <li>
          <t><eref target="https://datatracker.ietf.org/doc/draft-ietf-opsawg-collected-data-manifest/">draft-ietf-opsawg-collected-data-manifest</eref> 
documents the metadata that ensure that the streaming collected data can be interpreted correctly.</t>
        </li>
        <li>
          <t><eref target="https://datatracker.ietf.org/doc/draft-ietf-nmop-network-anomaly-architecture/">draft-ietf-nmop-network-anomaly-architecture</eref> defines 
an architecture for detecting anomalies in the network</t>
        </li>
        <li>
          <t>The basic concepts of the Digital Map are mentioned in <eref target="https://datatracker.ietf.org/doc/draft-ietf-nmop-simap-concept/">draft-havel-nmop-digital-map-concept</eref></t>
        </li>
      </ul>
      <t>These are building blocks, to help towards the goals of autonomous networking.
However, these building blocks are not sufficient.</t>
    </section>
    <section anchor="the-difficult-and-costly-data-models-integration-with-different-silos-protocol-data-models">
      <name>The Difficult and Costly Data Models Integration with Different Silos Protocol &amp; Data Models</name>
      <section anchor="understanding-and-using-different-models-in-a-solution">
        <name>Understanding And Using Different Models In A Solution</name>
        <t>Even excluding the vast amount of vendor specific models, the telecommunication
industry is drowning in models from many different SDOs (IETF, TMF,
ETSI, ONF, MEF, 3GPP). All of them fulfill a need and all of them are
optional depending on the requirements of the solution/operator. Some of
the models are designed to be extended, therefore even though a model is
based on a standard it can deviate or add new information. This model
and API soup results in confusion and in some cases (mis)interpretation
that can differ per implementation.</t>
        <t>There have been attempts to address this, to converge models and APIs
towards a single model. These initiatives have largely failed. There are
many reasons for this (technical debt, separation of
concerns/responsibility between SDOs) but the reality is that this
remains (and will likely always remain) unachievable. So what is needed is
a way to understand how these different models connect and how these
models were interpreted by the solution designer.</t>
      </section>
      <section anchor="example-onboarding-a-new-device">
        <name>Example: Onboarding A New Device</name>
        <t>In order to onboard a new device, what features and models that device 
supports must be known, how that device will map to any existing internal
models for resource management e.g. <eref target="https://github.com/Open-Network-Models-and-Interfaces-ONMI/TAPI"/>, 
Assurance is mapped to existing assurance and collection models 
(data collection/message broker/TSDBs), existing health assurance pipelines 
(as described in [draft-ietf-nmop-network-anomaly-architecture]).</t>
        <t>If I onboard a new device will it work with my data processing pipeline
If I receive observe a problem in my service, can I trace quickly to find the 
related network configuration, if I decide I need to modify that network 
configuration do I know the values that must change at the resource API in 
order for it to happen.</t>
        <t>The cost of onboarding a new device or indeed upgrading to a new software/
hardware version is buried within the different applications, the mapping
code that transforms data between models, the impact on existing models (is
 a new instance enough or does the application schema need to be extended)</t>
        <t>What if we could answer all of those questions by querying the connections 
between schemas and data. What if we could trace the connections across 
different applications and different design artefacts.</t>
      </section>
      <section anchor="different-models-for-different-jobs">
        <name>Different Models For Different Jobs</name>
        <t>On the other side, with different technology domains and different protocols, come
different data models. In order to assure cross domain use cases, the
network management system and network operators must integrate all the
technologies, protocols, and therefore data models as well. In other words, it
must perform the difficult and time-consuming job of integrating &amp;
mapping information from different data models. Indeed, in some
situations, there exist different ways to model the same type of
information.</t>
        <t>This problem is compounded by a large, disparate set of data sources:
* MIB modules <xref target="RFC3418"/> for monitoring, 
* YANG models <xref target="RFC7950"/> for configuration and monitoring, 
* IPFIX information elements <xref target="RFC7011"/> for flow information, 
* syslog plain text <xref target="RFC3164"/> for fault management, 
* TACACS+ <xref target="RFC8907"/> or RADIUS <xref target="RFC2865"/> in the AAA (Authorization,
 Authentication, Accounting) world, 
* BGP FlowSpec <xref target="RFC5575"/> for BGP filter, 
* BMP - BGP Monitoring protocol <xref target="RFC7854"/>
* BPG-LS for IGP monitoring
* etc.
or even simply the router CLI for router management.</t>
        <t>Some networking operators still manage the configuration with CLI while
they monitor the operational states with SNMP/MIBs. How difficult is
that in terms of correlating information? Some others moved to
NETCONF/YANG for configuration but still need to transition from
SNMP/MIBs to Model-driven Telemetry.</t>
        <t>When network operators deal with multiple data models, the task of
mapping the different models is time-consuming, hence expensive, and
difficult to automate.</t>
      </section>
      <section anchor="example-whats-an-interface-">
        <name>Example: Whats An Interface ?</name>
        <t>To make it crystal clear, let's illustrate this with a very simple and
well known networking concept: a simple interface. Let's start with a
simple CLI command: "show ip interface" for basic interface information.</t>
        <ul spacing="normal">
          <li>
            <t>Between MIB module and YANG model, fortunately, we have the same
ifIndex concept (ifIndex in MIB and if-index in YANG). This
facilitates the mapping.</t>
          </li>
          <li>
            <t>In the context of IPFIX models, even if the ingressInterface and
egressInterface report the famous ifIndex values within the flow
record, the interface semantic changed. We have one specific field for
the ingress and another one for egress traffic. The MIB object
ifIndex doesn't make that distinction. While it's not difficult to map
the IPFIX interface information elements with the MIB and YANG
interface ones, the different semantic must be hardcoded in the NMS.</t>
          </li>
          <li>
            <t>For the protocols from the AAA world, TACACS+ and RADIUS
interfaces are called "ports" to use the right terminology. Those have
nothing to do with the networking ifIndex definitions, even if it's
perfectly fine to host TACACS+ or RADIUS in routers.</t>
          </li>
          <li>
            <t>How to map with interface concept with the syslog message, where the
syslog message might not have the exact same interface id (Gigabit
Ethernet versus gigE versus gigEthernet ... X/Y.Z as an example) for a
machine to read.</t>
          </li>
        </ul>
        <t>At this point, these concepts are known inside network engineer's heads, 
their network domain knowledge, but how to convey this information to a
data scientist lacking the network domain knowledge but capable to
analyze data systematically? The cost of documenting this information
for the different ways it can be configured/used is enormous. Ideally
protocol designers should understand that there will be an network
management/automation cross domain use case that will require the
integration and the potentially mapping of those different data models.</t>
      </section>
      <section anchor="how-to-connect-information-for-closed-loop">
        <name>How To Connect Information For Closed Loop</name>
        <t>Going one step further, understanding that an anomaly defined in 
<xref target="I-D.netana-nmop-network-anomaly-lifecycle"/>
is connected to a symptom created by SAIN <xref target="RFC9418"/>, which has an alert 
that defines an expression based on a set of metrics that are IETF but also 
vendor defined. The Service(s) that are experiencing an anomaly defined using a 
Service Intent that was defined using /[TMF921A/] but full filled using 
<xref target="RFC9182"/> that maps to one or more vendor models.</t>
        <t>In order to be able to automate any closed loop action, the relationship 
between the Service Intent (defined using /[TMF921A/]), the error/policy 
condition that caused the symptom and the fulfillment provided at the device 
level via <xref target="RFC9182"/> all have to be understood.</t>
        <t>Many of the operators (at the time of writing) who are trying to document and
manage these relationships are trying to do it using various spreadsheets and 
version control systems. Instead, we could provide a way to define and
query those relationships in a manner that could instantly answer all the 
questions that an operator has.</t>
        <t>What if we could provide this information not only in a format the operator 
can understand but in a way a machine can easily interpret and make decisions.</t>
        <t>This is the key to moving from Automation to Autonomy and one of the
keys to unlocking autonomy is to leverage Knowledge Engineering and Knowledge
Based Systems (KBS)</t>
      </section>
      <section anchor="the-limits-of-yang-as-the-model-language">
        <name>The Limits of YANG as THE Model Language</name>
        <t>While YANG is deployed data model for configuration and monitoring, YANG has
limitations that prevent it to be THE model to which other data models will be 
mapped. Instead, the different data models will still have a life of their own 
(ex: the IPFIX model does a good job for its purpose). Therefore let use 
introduce knowledge graph concepts, which will address the challenges.</t>
        <t>YANG models are tree-structured and device-centric. They excel at 
representing the hierarchical configuration and state of a single device or a 
single service abstraction, but they do not natively express cross-domain 
relationships — for example, the relationship between an IPFIX flow record, the
interface it was observed on, the service that traverses that interface, and 
the customer consuming that service. These lateral, graph-like relationships 
must be hardcoded in application logic rather than expressed declaratively in
the model itself.</t>
        <t>YANG's extension mechanisms (augment, deviation, import) are formal and
static. Augmenting a model requires defining a new YANG module, which must then
be supported by the server implementation. This makes it difficult to 
dynamically enrich models with operational context — such as annotating an 
interface with its topological role (PE-facing, CE-facing, backup link) — 
without modifying the underlying YANG modules or maintaining out-of-band metadata.</t>
        <t>While YANG defines rich constraints within a single module or module set (must,
when, leafref), it lacks a mechanism for expressing or enforcing constraints 
across independently maintained data sources. An operator cannot use YANG alone
to express a rule like "every interface referenced in a flow record must 
correspond to an interface present in the device inventory and associated with 
at least one active service."</t>
        <t>YANG does not provide a built-in mechanism for inferring new knowledge from 
existing data. An inference such as "if interface X is down, and service Y 
traverses interface X, then service Y is impacted" requires external logic. The
model describes what data exists, but not how to reason over it.</t>
        <t>Finally, YANG is one of many modeling languages in the operational ecosystem. 
MIB modules, IPFIX information elements, syslog formats, BMP PDUs, and 
SDO-specific models from TMF, ETSI, and 3GPP all coexist in production networks.
YANG cannot serve as the integration point for all of these because it was not 
designed to describe or reference artifacts outside its own module system. What 
is needed is not a replacement for YANG, but a complementary layer that can 
import YANG's structural semantics alongside those of other modeling languages, 
express the relationships between them, and enable reasoning across the unified 
result. This is precisely the role that knowledge graphs and RDF-based 
technologies can fulfill.</t>
      </section>
    </section>
    <section anchor="knowledge-graph-framework">
      <name>Knowledge Graph Framework</name>
      <t>Addressing these challenges mentioned in section 2 requires innovative 
approaches that can handle the scale and complexity of the data while
ensuring accurate correlation and analysis.
By leveraging advanced data management techniques and semantic technologies,
network operators can unlock the full potential of their data, paving the way
for more efficient and autonomous network operations. Understanding the context
and relationships of the data collected is essential to overcoming the
limitations of traditional siloed approaches and achieving seamless,
automated network management.</t>
      <t>A knowledge-based system (KBS) is a computer program that leverages a
knowledge base and an inference engine to solve complex problems. These
systems are designed to simulate human decision-making and
problem-solving capabilities, making them valuable tools in various
domains. Here are the key features of a knowledge-based system:</t>
      <section anchor="knowledge-base">
        <name>Knowledge Base</name>
        <t>The knowledge base is the core component of a KBS, where all the
explicit knowledge about the domain is stored. This knowledge is usually
represented in a structured and formalized manner to facilitate easy
access and manipulation. Key characteristics of the knowledge base
include:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Explicit Representation</strong>: Knowledge is represented in a way that
can be easily interpreted and processed by the system.</t>
          </li>
          <li>
            <t><strong>Structured Data</strong>: Information is organized in a structured format,
such as rules, facts, and relationships.</t>
          </li>
          <li>
            <t><strong>Rich Semantics</strong>: The knowledge base captures not only raw data but
also the meaning and context of that data.</t>
          </li>
        </ul>
      </section>
      <section anchor="inference-engine">
        <name>Inference Engine</name>
        <t>The inference engine is the reasoning component of a KBS. It processes
the information stored in the knowledge base to derive new knowledge,
make decisions, or solve problems. Key functions of the inference engine
include:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Reasoning</strong>: Applies logical rules to the knowledge base to infer
new information or conclusions.</t>
          </li>
          <li>
            <t><strong>Decision-Making</strong>: Uses the inferred knowledge to make decisions or
recommend actions.</t>
          </li>
          <li>
            <t><strong>Problem Solving</strong>: Solves complex problems by systematically
exploring possible solutions based on the knowledge base.</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>In some proposed architectures the inference engine is split into individual
agents that have responsability for a decomposed aspect of the Service/
Network lifecycle (e.g. anomaly detection, assurance remediation, solution proposal, 
solutions evaluation, solution actuation etc). The Agents (which could be AI
Agents) can communicate/collaborate via the Knowledge Base.</t>
          </li>
        </ul>
      </section>
      <section anchor="formal-ontology">
        <name>Formal Ontology</name>
        <t>A formal ontology is a crucial element in capturing facts about the
world in which the KBS operates. It provides a structured and formal
description of the concepts and relationships within a specific domain.
Key aspects of formal ontologies include:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Concepts and Relationships</strong>: Defines the key concepts and the
relationships between them within a particular domain.</t>
          </li>
          <li>
            <t><strong>Standardized Vocabulary</strong>: Provides a common vocabulary for the
domain, ensuring consistency and interoperability.</t>
          </li>
          <li>
            <t><strong>Formal Specification</strong>: Uses formal logic to specify the properties
and constraints of the concepts and relationships, allowing for
precise and unambiguous interpretation.</t>
          </li>
        </ul>
      </section>
      <section anchor="comprehensive-and-dynamic-knowledge">
        <name>Comprehensive and Dynamic Knowledge</name>
        <t>Knowledge-based systems are designed to handle a comprehensive range of
knowledge within their domain and adapt to new information. This
includes:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Extensibility</strong>: The ability to add new knowledge and rules to the
system as the domain evolves.</t>
          </li>
          <li>
            <t><strong>Adaptability</strong>: The capability to update and refine the knowledge
base based on new insights or changes in the environment.</t>
          </li>
          <li>
            <t><strong>Integration</strong>: Combining knowledge from multiple sources to provide
a holistic understanding of the domain.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="fair-data">
      <name>FAIR data</name>
      <t>FAIR Data Principles were defined in a 2016 research paper by a consortium of 
scientists and organizations in Nature.<br/>
The authors intended to provide guidelines to improve the Findability, 
Accessibility, Interoperability, and Reuse of digital assets. They have since
published their principles in https://www.go-fair.org/fair-principles/.</t>
      <section anchor="findability-f">
        <name>Findability (F)</name>
        <t>Networking systems generate large amounts of configuration, telemetry, and 
state data, which needs to be easily discoverable by network operators, 
engineers, or automated systems.</t>
      </section>
      <section anchor="accessibility-a">
        <name>Accessibility (A)</name>
        <t>Data within the networking domain needs to be accessible to both human operators
and automated systems, with well-defined access mechanisms and protocols.</t>
      </section>
      <section anchor="interoperability-i">
        <name>Interoperability (I)</name>
        <t>Networking environments typically involve many devices and protocols from 
different vendors. Ensuring interoperability across systems is crucial for 
seamless network operations and management.</t>
      </section>
      <section anchor="reusability-r">
        <name>Reusability (R)</name>
        <t>Reusability ensures that network data can be used and repurposed across 
different contexts, applications, and scenarios.</t>
        <t>The FAIR principles have been widely cited, endorsed and adopted by a broad 
range of stakeholders since their publication in 2016. By intention, the 15 
FAIR guiding principles do not dictate specific technological implementations,
but provide guidance for improving Findability, Accessibility, Interoperability
and Reusability of digital resources.</t>
      </section>
      <section anchor="creating-and-using-fair-knowledge-graphs">
        <name>Creating And Using FAIR Knowledge Graphs</name>
        <t>There are two major approaches to implementing knowledge graphs. Property graphs
and RDF. In recent years Property graphs have gained a lot of traction with
successful with companies like Neo4j and others attempting to standardize on an 
approach.</t>
        <t>Property graphs are great to use in a closed application but face a 
number of issues when moving to large scale and open data that are designed to 
be FAIR. For example:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Schema</strong>: Property Graphs do not have a schema. This can be considered a positive as well
as negative, but having a schema that you can validate against can limit issues
and bugs during implementations</t>
          </li>
          <li>
            <t><strong>Validation</strong>: Property graphs do not define a way to validate data but the W3C 
standard, SHACL (SHApes Constraint Language) to specify constraints in a model 
driven fashion.</t>
          </li>
          <li>
            <t><strong>Globally Unique Identifiers</strong>: The identifiers in Property Graphs are strictly
local. They don’t mean anything outside the context of the immediate database.</t>
          </li>
          <li>
            <t><strong>Resolvable Identifiers</strong>: Because URI/IRIs are so similar to URLs, and indeed
in many situations are URLs it makes it easy to resolve any item in RDF graph.</t>
          </li>
          <li>
            <t><strong>Federation</strong>: While there are proprietary mechanisms for federating property 
graphs across databases e.g. neo4j fabric, federation is built into SPARQL the
W3C standard for querying “triple stores” or RDF based Graph Databases.</t>
          </li>
        </ul>
        <t>There are ways for these two worlds to converge though, there is current work 
within the w3c to add properties to edges in RDF. This work <eref target="https://w3c.github.io/rdf-star/cg-spec/editors_draft.html">RDF-star</eref>
(RDF-<em>) and SPARQL-star (SPARQL-</em>) at time of writing is ongoing in the W3C.</t>
        <t>Similarly, Neo4j has a plugin "Neosemantics" that enables the use of RDF data
and some of the RDF stack (OWL,RDFS,SHACL) inside of Neo4j but crucially using 
Cipher and not SPARQL for querys.</t>
        <t>So as of now, RDF Knowledge Graphs have FAIR baked in and are part of the 
standard. Property graph approaches have proprietary solutions to help make 
things FAIR but there is no standard. These two worlds and approaches do seem
to be converging though.</t>
      </section>
    </section>
    <section anchor="introduction-to-the-semantic-web-technology-stack">
      <name>Introduction to the Semantic Web Technology Stack</name>
      <t>The Semantic Web technology stack enables more sophisticated data
integration, sharing, and retrieval across diverse information systems.
At its core, it provides a framework for defining, linking, and querying
data on the web, allowing for more intelligent and interconnected
systems. Here is an overview of the key components of the Semantic Web
technology stack:</t>
      <section anchor="uriiri-uniform-resource-identifierinternationalized-resource-identifier">
        <name>URI/IRI: Uniform Resource Identifier/Internationalized Resource Identifier</name>
        <t>A Uniform Resource Identifier (URI) is a unique sequence of characters
that identifies a logical or physical resource used by web technologies.
URIs may be used to identify anything, including real-world objects such
as people and places, concepts, or information resources like web pages
and books. The Internationalized Resource Identifier (IRI) extends the
URI to include a wider range of characters from different languages,
facilitating global use and interoperability.</t>
      </section>
      <section anchor="rdf-resource-description-framework">
        <name>RDF: Resource Description Framework</name>
        <t>The Resource Description Framework (RDF) allows you to link resources
(concepts) together in a way that forms a directed graph. For example,
you could represent the statement "John is a person" using RDF. However,
RDF alone does not provide the means to classify objects or establish
complex relationships such as saying that a person is a subclass of
human beings.</t>
      </section>
      <section anchor="rdfs-rdf-schema">
        <name>RDFS: RDF Schema</name>
        <t>RDF Schema (RDFS) builds upon RDF by providing more expressive
vocabulary to classify resources and establish hierarchical
relationships. Using RDFS, you can define classes and subclasses (using
rdfs:class and rdfs:subclass), and set restrictions on properties
(relationships) within your domain knowledge using rdfs:domain and
rdfs:range. This allows for a more structured and meaningful
representation of data.</t>
      </section>
      <section anchor="owl-web-ontology-language">
        <name>OWL: Web Ontology Language</name>
        <t>The Web Ontology Language (OWL) enhances the expressiveness of RDFS by
introducing more detailed and complex constraints on data. OWL
categorizes properties into object properties (relationships between two
resources) and data properties (relationships between a resource and a
data value). It also allows you to add restrictions on properties, such
as specifying cardinality constraints or defining equivalent and
disjoint classes, enabling more precise and sophisticated knowledge
representation.</t>
      </section>
      <section anchor="query-sparql-protocol-and-rdf-query-language">
        <name>Query: SPARQL Protocol and RDF Query Language</name>
        <t>SPARQL (SPARQL Protocol and RDF Query Language) is an RDF query language
designed for querying and manipulating data stored in RDF format. SPARQL
is powerful because it can automatically join all objects in a graph
from a single query, allowing for complex and efficient data retrieval.
This capability makes SPARQL an essential tool for accessing and
integrating diverse datasets within the Semantic Web framework.</t>
        <t>Semantic Web technologies have significantly evolved beyond their
initial web-based applications, extending into various industries
(Healthcare, Finance, Manufacturing, Government and Public Sector) as a
powerful means to define, integrate, and retrieve knowledge.</t>
      </section>
      <section anchor="validation-shapes-constraint-language-shacl">
        <name>Validation: Shapes Constraint Language (SHACL)</name>
        <t>SHACL (Shapes Constraint Language) can be used to enhance an RDF-based solution
by providing a formal mechanism for validating the structure, content, and 
constraints of RDF data that models network devices, configurations, and 
relationships.</t>
        <t>By using SHACL, you can ensure that the data adheres to predefined business 
rules, network policies, and industry standards, thus improving data quality 
and consistency within a management system.</t>
        <section anchor="ensuring-data-consistency">
          <name>Ensuring Data Consistency</name>
          <t>For instance, you can use SHACL to enforce that each network device has a 
deviceType (e.g., router, switch) and an associated IP address, and that routers 
have specific attributes such as a bgpAsn (BGP Autonomous System Number).</t>
        </section>
        <section anchor="validating-relationships">
          <name>Validating Relationships</name>
          <t>For relationships between objects, SHACL allows you to validate these 
interconnections by specifying shapes that ensure the correct relationships 
are maintained.</t>
        </section>
        <section anchor="enforcing-network-policies">
          <name>Enforcing Network Policies</name>
          <t>In network management, policies can dictate how devices are configured and how 
they interact. For example, a policy may require that certain VLANs are used in
specific types of networks or that certain subnets are restricted to specific 
devices.</t>
          <t>SHACL allows you to encode these policies as constraints and automatically 
validate the RDF data against them. For instance, if a policy requires that 
only certain VLANs are allowed on specific switches, you can define a SHACL 
shape to validate this.</t>
        </section>
        <section anchor="automating-configuration-compliance">
          <name>Automating Configuration Compliance</name>
          <t>In large-scale networks, automating compliance checks is essential to ensure 
devices are configured according to standards and policies. SHACL can be used
to automatically validate the entire RDF dataset representing network 
configurations against predefined shapes. This can flag potential issues such
as missing configurations, incorrect relationships, or policy violations, 
enabling network administrators to quickly take corrective action.</t>
        </section>
        <section anchor="error-reporting-and-diagnostics">
          <name>Error Reporting and Diagnostics</name>
          <t>SHACL provides detailed error reporting and diagnostics, which can help network 
administrators quickly identify and fix issues in the network configuration. 
For each violation of a SHACL shape, SHACL can generate meaningful error 
messages, such as missing required properties, invalid data types, or 
relationships that do not conform to the network topology.</t>
        </section>
      </section>
    </section>
    <section anchor="why-semantic-web-is-right-for-the-networking-world">
      <name>Why Semantic Web is Right for the Networking World?</name>
      <section anchor="handling-vast-amounts-of-data">
        <name>Handling Vast Amounts of Data</name>
        <t>Modern network operators collect extensive data from various network
planes - Management, Control, and Data. Semantic Web technologies are
designed to handle large datasets efficiently:</t>
        <ul spacing="normal">
          <li>
            <t><strong>RDF (Resource Description Framework)</strong> enables the modelling of data
as a directed graph, allowing for flexible and scalable data
representation.</t>
          </li>
          <li>
            <t><strong>SPARQL</strong> can efficiently query large datasets, automatically joining
relevant data points to provide comprehensive insights.</t>
          </li>
          <li>
            <t><strong>URI/IRI</strong> allow data to be referenced and enriched using markup/metadata
without modifying the existing systems. Information can referenced and 
retrieved using the schema/metadata defined in RDF.</t>
          </li>
        </ul>
      </section>
      <section anchor="improved-data-correlation-and-integration">
        <name>Improved Data Correlation and Integration</name>
        <t>Semantic Web technologies excel at linking disparate data sources and
formats, which is crucial for network operations:</t>
        <ul spacing="normal">
          <li>
            <t><strong>URI/IRI</strong> provides a unique way to identify and link resources
across different data silos, ensuring that all data points can be
correlated accurately.</t>
          </li>
          <li>
            <t><strong>RDFS (RDF Schema)</strong> and <strong>OWL (Web Ontology Language)</strong> provide
mechanisms to classify and relate data, enabling the creation of
detailed ontologies that represent network components and their
relationships.</t>
          </li>
        </ul>
      </section>
      <section anchor="contextual-understanding-and-enhanced-metadata">
        <name>Contextual Understanding and Enhanced Metadata</name>
        <t>One of the major challenges is the loss of context in the data collected
from network operations:</t>
        <ul spacing="normal">
          <li>
            <t><strong>RDFS</strong> and <strong>OWL</strong> allow operators to define rich metadata about
network elements. For instance, they can specify that an interface is
a Provider Edge (PE) or Customer Edge (CE), and whether a link is
primary or backup.</t>
          </li>
          <li>
            <t><strong>OWL</strong> provides advanced features to define and enforce data
properties and relationships, ensuring that the context of data is
maintained and understood correctly.</t>
          </li>
        </ul>
      </section>
      <section anchor="data-interoperability-across-multiple-repositories">
        <name>Data Interoperability Across Multiple Repositories</name>
        <t>Network data often resides in multiple repositories with different
schemas and formats:</t>
        <ul spacing="normal">
          <li>
            <t><strong>RDF</strong> provides a common framework for data representation, enabling
interoperability between diverse data sources.</t>
          </li>
          <li>
            <t><strong>Linked Data principles</strong> can connect data from various repositories,
making it easier to integrate and query across different systems.</t>
          </li>
          <li>
            <t><strong>Consume Or Reference Data From Multiple Sources in Multiple Formats</strong>
using well known patterns within the semantic web ecosystem for connecting
external databases, whether relational, hierarchical, tabular or other graph
formats.</t>
          </li>
          <li>
            <t><strong>Deterministic URIs</strong> can allow data can be referenced remotely without 
being consumed or replicated inside a knowledge store. Thus allowing only 
data that is enriched to be created and stored in the knowledge and for it to
reference the existing data in externally repositories.</t>
          </li>
        </ul>
      </section>
      <section anchor="enhanced-fault-prediction-and-automated-remediation">
        <name>Enhanced Fault Prediction and Automated Remediation</name>
        <t>To predict faults and automate remediation, operators need to link and
analyze data from different network planes:</t>
        <ul spacing="normal">
          <li>
            <t><strong>SPARQL</strong> can query across multiple datasets, linking management,
control, and data plane information to provide a holistic view of the
network.</t>
          </li>
          <li>
            <t><strong>OWL &amp; RDF(S)</strong> can define rules, relationships and constraints that
breakdown the barriers between the network planes and link this data with
all relevant information (e.g. context based on topologies represented by 
<xref target="I-D.havel-nmop-digital-map"/>, configuration based on network element 
YANG).</t>
          </li>
        </ul>
      </section>
      <section anchor="bridging-organizational-silos">
        <name>Bridging Organizational Silos</name>
        <t>Network configuration and operations teams often work in silos, leading
to miscommunication and data fragmentation:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Ontologies</strong> defined using <strong>RDFS</strong> and <strong>OWL</strong> can standardize the
terminology and relationships used across teams, ensuring consistent
understanding and communication.</t>
          </li>
          <li>
            <t><strong>Semantic annotations</strong> can capture the intent and rationale behind
network changes, preserving context and facilitating better
collaboration. Importing existing schemas (whether from 
YANG or Relational or something else) and defining the connections between
them allow the semantic of any object or value to fully known and traced 
within the system.</t>
          </li>
        </ul>
      </section>
      <section anchor="managing-schema-and-format-disparities">
        <name>Managing Schema and Format Disparities</name>
        <t>Different data formats (YANG, IPFIX, BMP) and schemas can make data
integration challenging:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Semantic Web technologies</strong> provide a unified model to represent
data from various formats, enabling seamless integration and
retrieval.</t>
          </li>
          <li>
            <t><strong>Schema mapping</strong> using <strong>RDF</strong> and <strong>OWL</strong> can reconcile differences
between schemas, providing a coherent view of the data.</t>
          </li>
        </ul>
        <t>It's not only about protocol and models (IETF), we can link to the
NMS/OSS layers, from the top down to the bottom up ... but also (business)
intent, the BSS.</t>
      </section>
    </section>
    <section anchor="yang-and-rdf">
      <name>YANG and RDF</name>
      <t>As mentioned above, there are more than enough models already in the telecom
domain. Chief among them (from the IETF point of view) is YANG. The YANG 
modelling language already has many ways to augment and extend the model, but
these extensions are very formal and not very dynamic.</t>
      <section anchor="data-catalog-for-yang-data-sources">
        <name>Data catalog for YANG data sources</name>
        <t>The flexibility and extensibility of knowledge graphs have made them a popular
choice for implementing data catalogs. The purpose of a data catalog is to 
provide consumers with a registry of datasets exposed by data sources where to
find data of interest. Additionally, these datasets can be linked to the 
(business) concepts that they refer to, so that consumers can search for 
datasets based on relevant concepts such as “interface”.</t>
        <t>Knowledge graphs can enable the YANG Catalog to evolve towards a data catalog,
where the YANG modules represent datasets of interest. The dependencies 
between YANG models (import, deviations, augments) can be naturally represented
in the knowledge graph. In turn, these YANG models can be linked with concepts
that are represented in ontologies.</t>
        <t>Additionally, these YANG models, can be combined with the implementation 
details of network devices yang lib augment 
<xref target="I-D.lincla-netconf-yang-library-augmentation"/> that
could be part of an inventory <xref target="I-D.ietf-ivy-network-inventory-yang"/>.</t>
      </section>
      <section anchor="translation-of-yang-to-rdf">
        <name>Translation of YANG to RDF</name>
        <t>Since the original YANG specification <xref target="RFC6020"/>, IETF has embraced YANG as 
the way to define any new models or APIs, from the device all the way up the 
Service model <xref target="RFC8299"/>. How easy would it be to convert these vast model
set to RDF ?.</t>
        <t>RDF has its roots in semantic web and is defined by the w3c, who are also the
owners of the XML standard. The original <xref target="RFC6020"/> definition for YANG has
XML deeply embedded, defining serialization formats for the YANG (YIN) in XML
as well as of course instances of YANG data used by NETCONF.</t>
        <t>Translation of XML to RDF is a well described problem and many tools exist in
order to achieve it, w3c themselves have R2RML that allow custom definitions of
mappings.</t>
        <t>Generation of IRIs for YANG schema objects can be created using schema paths 
and IRIs for YANG instance data using XPaths. There are several advantages to
this approach, the most important being that the IRI is deterministic and could
be generated externally by a knowledge system without need to access the real 
data. There is a second advantage that it is human readable and therefore easy
to browse.</t>
        <t>The main disadvantage being the possible length of IRIs and the 
volume of data being processed could be lead to memory/performance issues. 
There are obvious trade offs to be explored but it can be seen that YANG is 
very much a good fit for modelling as knowledge in RDF give both formats close
association to XML.</t>
      </section>
    </section>
    <section anchor="knowledge-engine-positioning-and-architecture">
      <name>Knowledge Engine Positioning And Architecture</name>
      <t>Below shows the basic positioning of the Knowledge Engine in any OSS system. As 
you can see the Knowledge Engine is at the heart of any decision 
making process.</t>
      <t>Key to this is the ability to consume and connect data from multiple different
datasources and to connect them in a single semantic layer.</t>
      <t>Note as mentioned above, there are already many models that exist in 
telecommunication systems, the goal maybe not to create a new model but to 
provide a simple way to navigate between the existing models. Understanding 
that the value on the intent API that is mapped to a value on the fulfillment 
API that is used to configure this part of the device is connected to the 
Telemetry metric that was received where an anomaly was observed.</t>
      <t>This 360 degree view of the network is the only way the secrets of the network
can be unlocked and autonomous networks enabled.</t>
      <artwork><![CDATA[
                                   |                                
                                   | Operator Intent                
                                   |                                
                           +-------v--------+                       
            Intent/        |                |                       
            Remediation    |     Intent     |                       
              +------------+     Engine     <------------+          
              |            |                |            |          
              |            +-------+--------+            |Anomaly/  
              |                    |                     |Symptom   
              |                    |  Query              |          
              |                    |  Related Knowledge  |          
              |                    |                     |          
   +----------v-------+    +-------v--------+    +-------+--------+ 
   |                  |    |                |    |                | 
   |  Fulfillment     |    |   Knowledge    |    | Assurance      | 
   |  Engine         <+----+   Engine       +----> Engine         | 
   |                  |    |                |    |                | 
   +--------+---+-----+    +-------+--------+    +--+---^---------+ 
            |   |                  |                |   |           
            |   |                  |                |   |           
            |   |          +-------v--------+       |   |           
            |   |          |                |       |   |Telemetry  
Configuration   +---------->   Digital      <-------+   |(YANG Push,
(Netconf,   |              |   Twin         |           | IPFIX, BMP
 SNMP  )    |              |                |           | gNMI,SNMP)
            |              +----------------+           |           
            |                                           |           
            |                                           |           
   +--------v-------------------------------------------+----------+
   |                                                               |
   |                            Network                            |
   |                                                               |
   +---------------------------------------------------------------+
]]></artwork>
      <section anchor="key-use-cases-for-knowledge-engine">
        <name>Key Use Cases For Knowledge Engine</name>
        <t>The above shows the target for Autonomous networks and automated decision
processing, but for each step the Knowledge Engine can play a key role.</t>
        <section anchor="service-intent-translation">
          <name>Service Intent Translation</name>
          <t>A knowledge graph can facilitate intent translation the operator intent to 
the network intent by providing a unified way to query the digital twin 
<xref target="I-D.irtf-nmrg-network-digital-twin-arch"/>.The ability to integrate 
heterogenous silos of data, in combination with the explicit representation 
of the semantics of the data; making the knowledge graph a powerful technology
for building and connecting data across different datasource.</t>
          <t>The capability to represent abstract concepts by means of ontologies,
enables the representations of a generic network digital twins, regardless of
the complexities of the underlying technologies.
For example, an abstract representation of a network topology Digital Map 
<xref target="I-D.havel-nmop-digital-map"/> in the knowledge graph can be translated into 
a descriptor or data model that is specific to the technology used.</t>
        </section>
        <section anchor="contextualized-telemetry-data">
          <name>Contextualized telemetry data</name>
          <t>Having context of how YANG telemetry data 
<xref target="I-D.ietf-opsawg-collected-data-manifest"/> is being collected can improve 
the understanding of the data for network analytics or closed-loop automation.
Knowledge graphs  can help in this task by linking the collected data with**:
(i) the metadata that characterizes the platform producing
the data; and (ii) the metadata that characterizes how and
when the data were metered.</t>
        </section>
        <section anchor="anomaly-detection-and-incident-management">
          <name>Anomaly detection and incident management</name>
          <t>Knowledge graphs can help in the detection of anomalies in network systems by
linking event/metric data (e.g. logs, alarms, and ticketing) with the context
(digitial twin/network configuration). The Knowledge graph enables the 
connecting of these events using the context to link and explore for new 
connections.</t>
        </section>
        <section anchor="network-rectification">
          <name>Network Rectification:</name>
          <t>Combing all of the above to enable the OSS to respond to issues in the network
and automatically generate a change in the network to rectify the problem.</t>
        </section>
      </section>
      <section anchor="accessing-existing-data">
        <name>Accessing Existing Data</name>
        <t>A key enabler that allows the information in all these systems to be exposed and
connected is the Virtual Knowledge Graph. Originally called Ontology Based Data
Access (OBDA), it is a collection of techniques and technologies that help 
overcome the challenge of combining data from different sources and formats. 
It uses ontologies to create a unified view of this data, and mappings to link 
the ontology with the individual data sources.</t>
        <t>OBDA has evolved through three main stages:</t>
        <ul spacing="normal">
          <li>
            <t>Materialization: Initially, OBDA focused on translating data into a common format 
and storing it in a central location, similar to data warehousing.</t>
          </li>
          <li>
            <t>Query Translation: To avoid the limitations of materialization, OBDA shifted 
towards translating queries over the unified view into queries specific to each
data source.</t>
          </li>
          <li>
            <t>Declarative Mappings: The latest generation of OBDA uses declarative mapping 
languages, like R2RML, to define how data sources relate to the ontology. This
improves flexibility and simplifies the integration process.</t>
          </li>
        </ul>
        <t>Virtual Knowledge Graphs provide significant advantages for data integration:</t>
        <ul spacing="normal">
          <li>
            <t>Real-time Data Access: Data remains in its original sources, ensuring that 
queries always reflect the latest updates.</t>
          </li>
          <li>
            <t>Reduced Costs: Avoid the expense of building and maintaining a separate, 
materialized data store.</t>
          </li>
          <li>
            <t>Simplified Integration: Leverages your existing data infrastructure and 
expertise.</t>
          </li>
          <li>
            <t>Increased Agility: Supports an incremental approach to integration, making it
 easier to adapt to changes and add new data sources over time.</t>
          </li>
        </ul>
        <t>Unlike traditional materialized approaches that require ETL to create a unified
data copy, Virtual Knowledge Graphs offer a more dynamic solution.  Instead of
moving data, Virtual KGs leave data in place and access it on demand. This 
eliminates data duplication, reduces latency, and simplifies maintenance, 
making it a powerful alternative for modern data integration needs.</t>
        <artwork><![CDATA[
                        +---------------------+                                         
                        |     Query Engine    |                                         
                        +---------+-----------+                                         
                                  |                                                     
                                  |                                                     
+---------------------------------v--------------------------------------------+        
|                           Federation Layer                                   |        
|                   (SPARQL Query Federation)                                  |        
+----------+-------------------+-----------------+-----------------+-----------+        
           |                   |                 |                 |                    
           |                   |                 |                 |                    
+----------v--------+ +--------v-------+ +-------v---------+ +-----v-----------+        
|  Virtual SPARQL   | | Virtual SPARQL | | Virtual SPARQL  | | SPARQL          |        
|  Endpoint (RDBMS) | | Endpoint (API) | | Endpoint (TSDB) | | Endpoint (RDFDB)|        
+-----------+-------+ +--------+-------+ +-------+---------+ +-----+-----------+        
            |                  |                 |                 |                    
            |                  |                 |                 |                    
      +-----v------+    +------v------+   +------v-----+  +--------v-----+              
      |   RDBMS    |    |   API       |   |   TSDB     |  |    RDFDB     |              
      |  Database  |    |  Service    |   |  Database  |  |   Database   |              
      +------------+    +-------------+   +------------+  +--------------+              
]]></artwork>
        <t>In the Virtual Knowledge Graph (or Ontology Based Data Access) the remote schema
can be imported as RDF/OWL data and used for both query and for creating new 
relationships over existing data. In this way existing models can be imported 
and the connections between silos can overlaid as extra knowledge. These 
relationships can be created manually or programmatically.</t>
        <t>At query time, these relationships can be exploited to join data from different
sources, allowing the connection between anomaly to assurance metric to inventory 
object to digital map to configuration to be traced seamlessly regardless of 
where the information is being stored.</t>
      </section>
      <section anchor="what-is-materialised-in-rdf-and-what-is-virtual-">
        <name>What is materialised in RDF and what is Virtual ?</name>
        <t>Given the above, you may ask what is materialised in the triple store and what 
is virtual, of course the answer as always is, it depends. If you have a read 
API that lets you access the remote data anyway you want it e.g. JDBC then 
maybe virtual is good enough. If however you have a restricted API that makes 
it difficult to query and join data (e.g. Netconf/Restconf) you may want to 
import that data into the graph in order to satisfy all of your queries. For
this reason we have focused the initial implementation on materializing YANG 
schema and YANG Instance data.</t>
      </section>
    </section>
    <section anchor="implementation-status">
      <name>Implementation Status</name>
      <t>At IETF Hackathon 121 (Dublin) we successfully demonstrated an approach for 
translation of YANG schema models to a representation in RDF. This code is 
available here: https://github.com/Huawei-IOAM/yang2rdf.</t>
      <t>At IETF Hackathon 122 (Bangkok) we will demonstrate how that YANG RDF Schema 
data can be used to create RDF versions of configuration data.</t>
    </section>
    <section anchor="some-pointers-to-existing-work-for-linked-data">
      <name>Some pointers to existing work for linked data</name>
      <t>Linked data and semantic web has already been embraced by TMF and ETSI, their 
reasons for adoption are both valid both for them and for the IETF when aiming to
link data in different systems and to capture knowledge.</t>
      <section anchor="ngsi-ld-next-generation-iot-services-layer-lightweight-data">
        <name>NGSI-LD (Next Generation IoT Services Layer - Lightweight Data)</name>
        <t><strong>NGSI-LD</strong> is an ETSI standardized framework for representing and managing
context information in the Internet of Things (IoT) domain.</t>
        <t><strong>Context Information Model:</strong> Represents context information as entities 
with properties and relationships, inspired by property graphs.
<strong>Semantic Foundation:</strong> Based on RDF (Resource Description Framework) for 
formal semantics and linked data principles.</t>
      </section>
      <section anchor="tmf921a-intent-management-api">
        <name>TMF921A Intent Management API</name>
        <t><strong>TMF tmf921a</strong> is an API for intent based networking.  It aims to provide a 
standardized interface for expressing and managing high-level network intents,
enabling automated network configuration and optimization.</t>
        <t><strong>Knowledge Based Reasoning:</strong> Core to the TMF approach is the ability for the
intent management functions to "use reason intrinsically by examining the 
relationships between facts". Therefore their decision to model the intents as
knowledge and to use <strong>RDF</strong> to define the intents.</t>
      </section>
    </section>
    <section anchor="next-steps-for-the-industry">
      <name>Next Steps for the Industry</name>
      <t>It's important to note, the authors are not proposing creating a new
model for the network, there is much work being done in all of the existing SDOs
with numerous models managing all aspects of the network and business.
The authors are proposing ways to connect all of this data and through
those connections find the semantic of the information and allow it to
unlock the knowledge already being generated by the network.</t>
      <t>To this end, the industry must come together to define ways to describe
the connections between data (either at the instance level or at the
schema level). Agree on formats for importing existing protocol schemas
into RDF e.g. in IETF: YANG, IPFIX, BMP but also other models in different SDOs</t>
      <t>Crucial to this is to define a way to create deterministic IRIs for both model
and instance data so that information in disparate systems and 
repositories can be referenced, linked and enriched using the power of 
Knowledge graphs and linked data.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>As this document is informational and covers the Knoweldge Graph concepts and
how it can be applied in the networking domain, there is no specific security
considerations.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no actions for IANA.</t>
    </section>
    <section anchor="reference">
      <name>Reference</name>
      <section anchor="normative-references">
        <name>Normative References</name>
      </section>
      <section anchor="informative-references-to-be-included">
        <name>Informative References (to be included)</name>
        <ul spacing="normal">
          <li>
            <t>RDF 1.1 Concepts and Abstract Syntax. W3C Recommendation, 2014.</t>
          </li>
          <li>
            <t>RDF Schema 1.1. W3C Recommendation, 2014.</t>
          </li>
          <li>
            <t>OWL 2 Web Ontology Language Document Overview. W3C Recommendation,
2012.</t>
          </li>
          <li>
            <t>SPARQL 1.1 Query Language. W3C Recommendation, 2013.</t>
          </li>
          <li>
            <t>SHACL - Shapes Constraint Language. W3C Recommendation, 2017.</t>
          </li>
          <li>
            <t>R2RML - RDB to RDF Mapping Language. W3C Recommendation, 2012.</t>
          </li>
          <li>
            <t>RML - Extend R2RML to allow mapping from any data source.  v1.1.2, 2024.</t>
          </li>
        </ul>
      </section>
    </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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="ANSA">
          <front>
            <title>Application of Category Theory to Network Service Fault Detection. IEEE Open Journal of the Communications Society 5 (2024): 4417-4443.</title>
            <author>
              <organization>Pedro Martinez-Julia, Ved P. Kafle, Hitoshi Asaeda.</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="EERVC">
          <front>
            <title>Exploiting External Events for Resource Adaptation in Virtual Computer and Network Systems, IEEE Transactions on Network and Service Management 15 (2018): 555-566.</title>
            <author>
              <organization>Pedro Martinez-Julia, Ved P. Kafle, Hiroaki Harai.</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="TKDP">
          <front>
            <title>Telemetry Knowledge Distributed Processing for Network Digital Twins and Network Resilience. NOMS 2023-2023 IEEE/IFIP Network Operations and Management Symposium (2023): 1-6.</title>
            <author>
              <organization>Pedro Martinez-Julia, Ved P. Kafle, Hitoshi Asaeda.</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="RFC3535">
          <front>
            <title>Overview of the 2002 IAB Network Management Workshop</title>
            <author fullname="J. Schoenwaelder" initials="J." surname="Schoenwaelder"/>
            <date month="May" year="2003"/>
            <abstract>
              <t>This document provides an overview of a workshop held by the Internet Architecture Board (IAB) on Network Management. The workshop was hosted by CNRI in Reston, VA, USA on June 4 thru June 6, 2002. The goal of the workshop was to continue the important dialog started between network operators and protocol developers, and to guide the IETFs focus on future work regarding network management. This report summarizes the discussions and lists the conclusions and recommendations to the Internet Engineering Task Force (IETF) community. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3535"/>
          <seriesInfo name="DOI" value="10.17487/RFC3535"/>
        </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="I-D.ietf-core-comi">
          <front>
            <title>CoAP Management Interface (CORECONF)</title>
            <author fullname="Michel Veillette" initials="M." surname="Veillette">
              <organization>Trilliant Networks Inc.</organization>
            </author>
            <author fullname="Peter Van der Stok" initials="P." surname="Van der Stok">
              <organization>consultant</organization>
            </author>
            <author fullname="Alexander Pelov" initials="A." surname="Pelov">
              <organization>IMT Atlantique</organization>
            </author>
            <author fullname="Andy Bierman" initials="A." surname="Bierman">
              <organization>YumaWorks</organization>
            </author>
            <author fullname="Carsten Bormann" initials="C." surname="Bormann">
              <organization>Universität Bremen TZI</organization>
            </author>
            <date day="2" month="March" year="2026"/>
            <abstract>
              <t>   This document describes a network management interface for
   constrained devices and networks, called CoAP Management Interface
   (CORECONF).  The Constrained Application Protocol (CoAP) is used to
   access datastore and data node resources specified in YANG, or SMIv2
   converted to YANG.  CORECONF uses the YANG to CBOR mapping and
   converts YANG identifier strings to numeric identifiers for payload
   size reduction.  CORECONF extends the set of YANG based protocols,
   NETCONF and RESTCONF, with the capability to manage constrained
   devices and networks.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-core-comi-21"/>
        </reference>
        <reference anchor="RFC3444">
          <front>
            <title>On the Difference between Information Models and Data Models</title>
            <author fullname="A. Pras" initials="A." surname="Pras"/>
            <author fullname="J. Schoenwaelder" initials="J." surname="Schoenwaelder"/>
            <date month="January" year="2003"/>
            <abstract>
              <t>There has been ongoing confusion about the differences between Information Models and Data Models for defining managed objects in network management. This document explains the differences between these terms by analyzing how existing network management model specifications (from the IETF and other bodies such as the International Telecommunication Union (ITU) or the Distributed Management Task Force (DMTF)) fit into the universe of Information Models and Data Models. This memo documents the main results of the 8th workshop of the Network Management Research Group (NMRG) of the Internet Research Task Force (IRTF) hosted by the University of Texas at Austin. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3444"/>
          <seriesInfo name="DOI" value="10.17487/RFC3444"/>
        </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="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="RFC9232">
          <front>
            <title>Network Telemetry Framework</title>
            <author fullname="H. Song" initials="H." surname="Song"/>
            <author fullname="F. Qin" initials="F." surname="Qin"/>
            <author fullname="P. Martinez-Julia" initials="P." surname="Martinez-Julia"/>
            <author fullname="L. Ciavaglia" initials="L." surname="Ciavaglia"/>
            <author fullname="A. Wang" initials="A." surname="Wang"/>
            <date month="May" year="2022"/>
            <abstract>
              <t>Network telemetry is a technology for gaining network insight and facilitating efficient and automated network management. It encompasses various techniques for remote data generation, collection, correlation, and consumption. This document describes an architectural framework for network telemetry, motivated by challenges that are encountered as part of the operation of networks and by the requirements that ensue. This document clarifies the terminology and classifies the modules and components of a network telemetry system from different perspectives. The framework and taxonomy help to set a common ground for the collection of related work and provide guidance for related technique and standard developments.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9232"/>
          <seriesInfo name="DOI" value="10.17487/RFC9232"/>
        </reference>
        <reference anchor="RFC3418">
          <front>
            <title>Management Information Base (MIB) for the Simple Network Management Protocol (SNMP)</title>
            <author fullname="R. Presuhn" initials="R." role="editor" surname="Presuhn"/>
            <date month="December" year="2002"/>
            <abstract>
              <t>This document defines managed objects which describe the behavior of a Simple Network Management Protocol (SNMP) entity. This document obsoletes RFC 1907, Management Information Base for Version 2 of the Simple Network Management Protocol (SNMPv2). [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="62"/>
          <seriesInfo name="RFC" value="3418"/>
          <seriesInfo name="DOI" value="10.17487/RFC3418"/>
        </reference>
        <reference anchor="RFC7011">
          <front>
            <title>Specification of the IP Flow Information Export (IPFIX) Protocol for the Exchange of Flow Information</title>
            <author fullname="B. Claise" initials="B." role="editor" surname="Claise"/>
            <author fullname="B. Trammell" initials="B." role="editor" surname="Trammell"/>
            <author fullname="P. Aitken" initials="P." surname="Aitken"/>
            <date month="September" year="2013"/>
            <abstract>
              <t>This document specifies the IP Flow Information Export (IPFIX) protocol, which serves as a means for transmitting Traffic Flow information over the network. In order to transmit Traffic Flow information from an Exporting Process to a Collecting Process, a common representation of flow data and a standard means of communicating them are required. This document describes how the IPFIX Data and Template Records are carried over a number of transport protocols from an IPFIX Exporting Process to an IPFIX Collecting Process. This document obsoletes RFC 5101.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="77"/>
          <seriesInfo name="RFC" value="7011"/>
          <seriesInfo name="DOI" value="10.17487/RFC7011"/>
        </reference>
        <reference anchor="RFC3164">
          <front>
            <title>The BSD Syslog Protocol</title>
            <author fullname="C. Lonvick" initials="C." surname="Lonvick"/>
            <date month="August" year="2001"/>
            <abstract>
              <t>This document describes the observed behavior of the syslog protocol. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3164"/>
          <seriesInfo name="DOI" value="10.17487/RFC3164"/>
        </reference>
        <reference anchor="RFC8907">
          <front>
            <title>The Terminal Access Controller Access-Control System Plus (TACACS+) Protocol</title>
            <author fullname="T. Dahm" initials="T." surname="Dahm"/>
            <author fullname="A. Ota" initials="A." surname="Ota"/>
            <author fullname="D.C. Medway Gash" initials="D.C." surname="Medway Gash"/>
            <author fullname="D. Carrel" initials="D." surname="Carrel"/>
            <author fullname="L. Grant" initials="L." surname="Grant"/>
            <date month="September" year="2020"/>
            <abstract>
              <t>This document describes the Terminal Access Controller Access-Control System Plus (TACACS+) protocol, which is widely deployed today to provide Device Administration for routers, network access servers, and other networked computing devices via one or more centralized servers.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8907"/>
          <seriesInfo name="DOI" value="10.17487/RFC8907"/>
        </reference>
        <reference anchor="RFC2865">
          <front>
            <title>Remote Authentication Dial In User Service (RADIUS)</title>
            <author fullname="C. Rigney" initials="C." surname="Rigney"/>
            <author fullname="S. Willens" initials="S." surname="Willens"/>
            <author fullname="A. Rubens" initials="A." surname="Rubens"/>
            <author fullname="W. Simpson" initials="W." surname="Simpson"/>
            <date month="June" year="2000"/>
            <abstract>
              <t>This document describes a protocol for carrying authentication, authorization, and configuration information between a Network Access Server which desires to authenticate its links and a shared Authentication Server. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2865"/>
          <seriesInfo name="DOI" value="10.17487/RFC2865"/>
        </reference>
        <reference anchor="RFC5575">
          <front>
            <title>Dissemination of Flow Specification Rules</title>
            <author fullname="P. Marques" initials="P." surname="Marques"/>
            <author fullname="N. Sheth" initials="N." surname="Sheth"/>
            <author fullname="R. Raszuk" initials="R." surname="Raszuk"/>
            <author fullname="B. Greene" initials="B." surname="Greene"/>
            <author fullname="J. Mauch" initials="J." surname="Mauch"/>
            <author fullname="D. McPherson" initials="D." surname="McPherson"/>
            <date month="August" year="2009"/>
            <abstract>
              <t>This document defines a new Border Gateway Protocol Network Layer Reachability Information (BGP NLRI) encoding format that can be used to distribute traffic flow specifications. This allows the routing system to propagate information regarding more specific components of the traffic aggregate defined by an IP destination prefix.</t>
              <t>Additionally, it defines two applications of that encoding format: one that can be used to automate inter-domain coordination of traffic filtering, such as what is required in order to mitigate (distributed) denial-of-service attacks, and a second application to provide traffic filtering in the context of a BGP/MPLS VPN service.</t>
              <t>The information is carried via the BGP, thereby reusing protocol algorithms, operational experience, and administrative processes such as inter-provider peering agreements. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5575"/>
          <seriesInfo name="DOI" value="10.17487/RFC5575"/>
        </reference>
        <reference anchor="RFC7854">
          <front>
            <title>BGP Monitoring Protocol (BMP)</title>
            <author fullname="J. Scudder" initials="J." role="editor" surname="Scudder"/>
            <author fullname="R. Fernando" initials="R." surname="Fernando"/>
            <author fullname="S. Stuart" initials="S." surname="Stuart"/>
            <date month="June" year="2016"/>
            <abstract>
              <t>This document defines the BGP Monitoring Protocol (BMP), which can be used to monitor BGP sessions. BMP is intended to provide a convenient interface for obtaining route views. Prior to the introduction of BMP, screen scraping was the most commonly used approach to obtaining such views. The design goals are to keep BMP simple, useful, easily implemented, and minimally service affecting. BMP is not suitable for use as a routing protocol.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7854"/>
          <seriesInfo name="DOI" value="10.17487/RFC7854"/>
        </reference>
        <reference anchor="I-D.netana-nmop-network-anomaly-lifecycle">
          <front>
            <title>An Experiment: Network Anomaly Lifecycle</title>
            <author fullname="Vincenzo Riccobene" initials="V." surname="Riccobene">
              <organization>Huawei</organization>
            </author>
            <author fullname="Antonio Roberto" initials="A." surname="Roberto">
              <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>INSA-Lyon</organization>
            </author>
            <date day="3" month="November" year="2024"/>
            <abstract>
              <t>   Network Anomaly Detection is the act of detecting problems in the
   network.  Accurately detect problems is very challenging for network
   operators in production networks.  Good results require a lot of
   expertise and knowledge around both the implied network technologies
   and the connectivity services provided to customers, apart from a
   proper monitoring infrastructure.  In order to facilitate network
   anomaly detection, novel techniques are being introduced, including
   programmatical, rule-based and AI-based, with the promise of
   improving scalability and the hope to keep a high detection accuracy.
   To guarantee acceptable results, the process needs to be properly
   designed, adopting well-defined stages to accurately collect evidence
   of anomalies, validate their relevancy and improve the detection
   systems over time, iteratively.

   This document describes a well-defined approach on managing the
   lifecycle process of a network anomaly detection system, spanning
   across the recording of its output and its iterative refinement, in
   order to facilitate network engineers to interact with the network
   anomaly detection system, enable the "human-in-the-loop" paradigm and
   refine the detection abilities over time.  The major contributions of
   this document are: the definition of three key stages of the
   lifecycle process, the definition of a state machine for each anomaly
   annotation on the system and the definition of YANG data models
   describing a comprehensive format for the anomaly labels, allowing a
   well-structured exchange of those between all the interested actors.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-netana-nmop-network-anomaly-lifecycle-05"/>
        </reference>
        <reference anchor="RFC9182">
          <front>
            <title>A YANG Network Data Model for Layer 3 VPNs</title>
            <author fullname="S. Barguil" initials="S." surname="Barguil"/>
            <author fullname="O. Gonzalez de Dios" initials="O." role="editor" surname="Gonzalez de Dios"/>
            <author fullname="M. Boucadair" initials="M." role="editor" surname="Boucadair"/>
            <author fullname="L. Munoz" initials="L." surname="Munoz"/>
            <author fullname="A. Aguado" initials="A." surname="Aguado"/>
            <date month="February" year="2022"/>
            <abstract>
              <t>As a complement to the Layer 3 Virtual Private Network Service Model (L3SM), which is used for communication between customers and service providers, this document defines an L3VPN Network Model (L3NM) that can be used for the provisioning of Layer 3 Virtual Private Network (L3VPN) services within a service provider network. The model provides a network-centric view of L3VPN services.</t>
              <t>The L3NM is meant to be used by a network controller to derive the configuration information that will be sent to relevant network devices. The model can also facilitate communication between a service orchestrator and a network controller/orchestrator.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9182"/>
          <seriesInfo name="DOI" value="10.17487/RFC9182"/>
        </reference>
        <reference anchor="I-D.havel-nmop-digital-map">
          <front>
            <title>Modeling the Digital Map based on RFC 8345: Sharing Experience and Perspectives</title>
            <author fullname="Olga Havel" initials="O." surname="Havel">
              <organization>Huawei</organization>
            </author>
            <author fullname="Benoît Claise" initials="B." surname="Claise">
              <organization>Huawei</organization>
            </author>
            <author fullname="Oscar Gonzalez de Dios" initials="O. G." surname="de Dios">
              <organization>Telefonica</organization>
            </author>
            <author fullname="Ahmed Elhassany" initials="A." surname="Elhassany">
              <organization>Swisscom</organization>
            </author>
            <author fullname="Thomas Graf" initials="T." surname="Graf">
              <organization>Swisscom</organization>
            </author>
            <date day="21" month="October" year="2024"/>
            <abstract>
              <t>   This document shares experience in modelling Digital Map based on the
   IETF RFC 8345 topology YANG modules and some of its augmentations.
   The document identifies a set of open issues encountered during the
   modelling phases, the missing features in RFC 8345, and some
   perspectives on how to address them.  For definition of Digital Map
   concepts, requirements and use cases please refer to the "Digital
   Map: Concept, Requirements, and Use Cases" document.

   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/OlgaHuawei.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-havel-nmop-digital-map-02"/>
        </reference>
        <reference anchor="I-D.lincla-netconf-yang-library-augmentation">
          <front>
            <title>Augmented-by Addition into the IETF-YANG-Library</title>
            <author fullname="Zhuoyao Lin" initials="Z." surname="Lin">
              <organization>Huawei</organization>
            </author>
            <author fullname="Benoît Claise" initials="B." surname="Claise">
              <organization>Huawei</organization>
            </author>
            <author fullname="Ignacio Dominguez Martinez-Casanueva" initials="I. D." surname="Martinez-Casanueva">
              <organization>Telefonica Innovacion Digital</organization>
            </author>
            <date day="4" month="March" year="2024"/>
            <abstract>
              <t>   This document augments the ietf-yang-library in [RFC8525] to provide
   the augmented-by list.  It facilitates the process of obtaining the
   entire dependencies of YANG model, by directly querying the server's
   YANG module.

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/Zephyre777/draft-lincla-netconf-yang-library-
   augmentation.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-lincla-netconf-yang-library-augmentation-01"/>
        </reference>
        <reference anchor="I-D.ietf-ivy-network-inventory-yang">
          <front>
            <title>A Base YANG Data Model for Network Inventory</title>
            <author fullname="Chaode Yu" initials="C." surname="Yu">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Sergio Belotti" initials="S." surname="Belotti">
              <organization>Nokia</organization>
            </author>
            <author fullname="Jean-Francois Bouquier" initials="J." surname="Bouquier">
              <organization>Vodafone</organization>
            </author>
            <author fullname="Fabio Peruzzini" initials="F." surname="Peruzzini">
              <organization>FiberCop</organization>
            </author>
            <author fullname="Phil Bedard" initials="P." surname="Bedard">
              <organization>Cisco</organization>
            </author>
            <date day="5" month="February" year="2026"/>
            <abstract>
              <t>   This document defines a base YANG data model for reporting network
   inventory.  The scope of this base model is set to be application-
   and technology-agnostic.  The base data model can be augmented with
   application- and technology-specific details.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ivy-network-inventory-yang-14"/>
        </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>
        <reference anchor="RFC8299">
          <front>
            <title>YANG Data Model for L3VPN Service Delivery</title>
            <author fullname="Q. Wu" initials="Q." role="editor" surname="Wu"/>
            <author fullname="S. Litkowski" initials="S." surname="Litkowski"/>
            <author fullname="L. Tomotaki" initials="L." surname="Tomotaki"/>
            <author fullname="K. Ogaki" initials="K." surname="Ogaki"/>
            <date month="January" year="2018"/>
            <abstract>
              <t>This document defines a YANG data model that can be used for communication between customers and network operators and to deliver a Layer 3 provider-provisioned VPN service. This document is limited to BGP PE-based VPNs as described in RFCs 4026, 4110, and 4364. This model is intended to be instantiated at the management system to deliver the overall service. It is not a configuration model to be used directly on network elements. This model provides an abstracted view of the Layer 3 IP VPN service configuration components. It will be up to the management system to take this model as input and use specific configuration models to configure the different network elements to deliver the service. How the configuration of network elements is done is out of scope for this document.</t>
              <t>This document obsoletes RFC 8049; it replaces the unimplementable module in that RFC with a new module with the same name that is not backward compatible. The changes are a series of small fixes to the YANG module and some clarifications to the text.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8299"/>
          <seriesInfo name="DOI" value="10.17487/RFC8299"/>
        </reference>
        <reference anchor="I-D.irtf-nmrg-network-digital-twin-arch">
          <front>
            <title>Network Digital Twin: Concepts and Reference Architecture</title>
            <author fullname="Cheng Zhou" initials="C." surname="Zhou">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Hongwei Yang" initials="H." surname="Yang">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Xiaodong Duan" initials="X." surname="Duan">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Diego Lopez" initials="D." surname="Lopez">
         </author>
            <author fullname="Antonio Pastor" initials="A." surname="Pastor">
         </author>
            <author fullname="Qin Wu" initials="Q." surname="Wu">
              <organization>Huawei</organization>
            </author>
            <author fullname="Mohamed Boucadair" initials="M." surname="Boucadair">
              <organization>Orange</organization>
            </author>
            <author fullname="Christian Jacquenet" initials="C." surname="Jacquenet">
              <organization>Orange</organization>
            </author>
            <date day="27" month="February" year="2026"/>
            <abstract>
              <t>   Digital Twin technology has seen rapid adoption in Industry 4.0.  The
   application of Digital Twin technology in the networking field is
   meant to develop various rich network applications, realize efficient
   and cost-effective data-driven network management, and accelerate
   network innovation.

   This document presents an overview of the concepts of Network Digital
   Twin, provides the basic definitions and a reference architecture,
   lists a set of application scenarios, and discusses such technology's
   benefits and key challenges.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-irtf-nmrg-network-digital-twin-arch-12"/>
        </reference>
        <reference anchor="I-D.ietf-opsawg-collected-data-manifest">
          <front>
            <title>A Data Manifest for Contextualized Telemetry Data</title>
            <author fullname="Benoît Claise" initials="B." surname="Claise">
              <organization>Everything OPS</organization>
            </author>
            <author fullname="Jean Quilbeuf" initials="J." surname="Quilbeuf">
              <organization>Huawei</organization>
            </author>
            <author fullname="Diego Lopez" initials="D." surname="Lopez">
              <organization>Telefonica I+D</organization>
            </author>
            <author fullname="Ignacio Dominguez Martinez-Casanueva" initials="I. D." surname="Martinez-Casanueva">
              <organization>Telefonica I+D</organization>
            </author>
            <author fullname="Thomas Graf" initials="T." surname="Graf">
              <organization>Swisscom</organization>
            </author>
            <date day="20" month="October" year="2025"/>
            <abstract>
              <t>   Network platforms use Network Telemetry, such as YANG-Push, to
   continuously stream information, including both counters and state
   information.  This document describes the metadata that ensure that
   the collected data can be interpreted correctly.  This document
   specifies the Data Manifest, composed of two YANG data models (the
   Platform Manifest and the non-normative Data Collection Manifest).
   These YANG modules are specified at the network level (e.g., network
   controllers) to provide a model that encompasses several network
   platforms.  The Data Manifest must be streamed and stored along with
   the data, up to the collection and analytics systems to keep the
   collected data fully exploitable by the data scientists and relevant
   tools.  Additionally, this document specifies an augmentation of the
   YANG-Push model to include the actual collection period, in case it
   differs from the configured collection period.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-opsawg-collected-data-manifest-10"/>
        </reference>
      </references>
    </references>
    <?line 1185?>

<section anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors would like to thank Peter Cautley and Anatolii Pererva for 
providing the appendix example. Professor Declan O'Sullivan and Brad Peters for
providing review comments.</t>
    </section>
    <section anchor="appendix">
      <name>Appendix</name>
    </section>
    <section anchor="resource-description-framework-rdf-schema">
      <name>Resource Description Framework (RDF) schema</name>
      <t>The RDF Schema defines the different types of relationship (RDF properties). 
They are defined hierarchically. That allows specific relationships to be 
grouped as more generalized relationships. Queries can be applied at different
levels of specificity.</t>
      <artwork><![CDATA[
:ipfixRefersTo a rdf:Property ;
    rdfs:comment "IPFIX reference to a leaf" ;
    rdfs:subPropertyOf :refersTo .

:ipfixRefersToInterface a rdf:Property ;
    rdfs:comment "IPFIX reference to a leaf" ;
    rdfs:subPropertyOf :ipfixRefersTo .
]]></artwork>
    </section>
    <section anchor="sparql-protocol-and-rdf-query-language-sparql">
      <name>SPARQL Protocol and RDF Query Language (SPARQL)</name>
      <t>SPARQL finds different relationships that exist between data sources e.g. The 
relationship "ipfixRefersToInterface" (defined in the RDF schema) will find 
relationships between any IPFIX data field and the Device Interface. A more 
generalized relationship "ipfixRefersTo" would find all known relationships 
between IPFIX and Device (underlay, overlay) Configuration.</t>
      <section anchor="example-of-ipfix-relationship-query">
        <name>Example Of IPFIX Relationship Query</name>
        <artwork><![CDATA[
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX yang: <http://localhost/yang#>
SELECT ?source_path ?relationship ?target_path
WHERE {
  ?source ?relationship ?target .
  ?relationship rdfs:subPropertyOf* yang:ipfixRefersToInterface .
  ?source yang:path ?source_path .
  ?target yang:path ?target_path .
}
]]></artwork>
        <t>The result for the above query shows 
- the source: IPFIX fields aligned with IANA "IP Flow Information Export (IPFIX) Entities"
  - ingressInterface element Id 10
  - egressInterface element Id 14
- the type of relationship: (specified in the RDF schema)
- the target: YANG path specified in Device Configuration</t>
        <artwork><![CDATA[
+--------------------+-------------------------------------------------+----------------------------------+
| source             | relationship                                    | target                           |
+--------------------+-------------------------------------------------+----------------------------------+
| "ingressInterface" | <http://localhost/yang#ipfixRefersToInterface>  | "ifm/interfaces/interface/index" |
| "egressInterface"  | <http://localhost/yang#ipfixRefersToInterface>  | "ifm/interfaces/interface/index" |
+--------------------+-------------------------------------------------+----------------------------------+
]]></artwork>
      </section>
      <section anchor="example-query-to-find-impacted-services-customers">
        <name>Example Query To Find Impacted Services &amp; Customers</name>
        <t>This query walks from the :Alarm through the affected link to any :Device (via
interfaces), then finds services those devices provide, and finally the customers.</t>
        <artwork><![CDATA[
PREFIX :    <http://example.com/kg/net#>

SELECT DISTINCT ?service ?serviceLabel ?customer ?custLabel WHERE {
  # 1. Identify the outage alarm
  ?alarm     a :Alarm ;
             :affects ?link .

  # 2. Find the two interfaces on that link
  ?link      :connectsEndpoints ?intf .

  # 3. Find devices owning those interfaces
  ?intf      :partOf ?device .

  # 4. Find services provided by those devices
  ?device    :provides ?service .
  ?service   rdfs:label ?serviceLabel .

  # 5. Find the customer consuming each service
  ?service   :consumedBy ?customer .
  ?customer  rdfs:label ?custLabel .
}
]]></artwork>
        <t>What this does:</t>
        <ul spacing="normal">
          <li>
            <t>Selects the alarm and its :affects link.</t>
          </li>
          <li>
            <t>Follows :connectsEndpoints to both interfaces on that link.</t>
          </li>
          <li>
            <t>Jumps from interfaces to their parent devices (:partOf).</t>
          </li>
          <li>
            <t>Gathers all services those devices :provides.</t>
          </li>
          <li>
            <t>Retrieves the customers (:consumedBy) of each service.</t>
          </li>
        </ul>
        <t>Running this over the above data would return:
| service    | serviceLabel       | customer | custLabel    |
| ---------- | ------------------ | -------- | ------------ |
| :L3VPN-100 | "Customer VPN 100" | :CustA   | "Customer A" |
| :L3VPN-200 | "Customer VPN 200" | :CustB   | "Customer B" |</t>
      </section>
    </section>
    <section anchor="shacl">
      <name>SHACL</name>
      <t>SHACL (Shapes Constraint Language) can be used to enhance an RDF-based solution
for network management by providing a formal mechanism for validating the 
structure, content, and constraints of RDF data that models network devices, 
configurations, and relationships. By using SHACL, you can ensure that the data
adheres to predefined business rules, network policies, and industry standards,
thus improving data quality and consistency within a network management system.</t>
      <t>Example of SHACL to validate every router that uses the BGP protocol has a valid 
BGP ASN configured.
~~~~
ex:BGPComplianceShape a sh:NodeShape ;
    sh:targetClass ex:Router ;
    sh:property [
        sh:path ex:routingProtocol ;
        sh:hasValue "bgp" ;
    ] ;
    sh:property [
        sh:path ex:bgpAsn ;
        sh:minCount 1 ;
        sh:datatype xsd:integer ;
        sh:message "Routers using BGP must have a BGP ASN defined." ;
    ] ;
~~~~</t>
      <t>SHACL can also be used to validate relationships between objects, here is an 
example of a rule that says each router must be connected to at least one 
switch.</t>
      <artwork><![CDATA[
ex:RouterSwitchConnectionShape a sh:NodeShape ;
    sh:targetClass ex:Router ;
    sh:property [
        sh:path ex:connectedTo ;
        sh:class ex:Switch ;
        sh:minCount 1 ;
        sh:message "Each router must be connected to at least one switch." ;
    ] ;
]]></artwork>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA71963IbyZXmf0bwHXLpCBtQA6Bu7QvtdRsiKTVtkaJJdrc9
E7MTBaAAlFWowlQVSMHu3vBD7J+NmHk5P8me71wyswqgWu21hz8kEqjKy8mT
534ZDoeHB03W5OmJO/pdUT7k6WyRujdVsl6611WySh/K6r2bl5W7Shv+/d06
rZImK4v66PAgmUyq9P7EdV+lh9+t68ODWTktaJATN6uSeTNcJdP36XZYrMr1
8P1iSMMOi7Qp1/Xw6cvDg2nSpIuy2p64rJiXhweHB3WTFLN/T/KyoCGaapPS
R5vJKqtrmr/ZrunTi/O7187RSqo0oT2E1Tl61V0mRbJIV2nR0GIfFifu6vLd
NUae0hNpUW9qG5c28RxfJJtmWVYnhwfODfGPc/NNnssmLrPpMklzGhXbkG/L
ikb9cpM8pJl8MC03RYNNXFRpTmuQT9NVkuUnbiUjjAQQv1nye6Npudo736u0
KLPGneZJVqfRdOf3abVtllmxGDKUW9O+SvNFtlm1ppWBfpOG9wjmIwL93mnv
luUqqXGS82jS2wcCu67Uubqp0rShkbOiovHcs5/pMrKG1vAvm4o2agub0Zg/
f/ry885CacDmz2m1A6OGpx8taPrf1DqpB5HrLvbLMl+klftdmudpFS33LN00
9XSZurs0T9/bsv3kb9JqlRTb1sQy1EiG+k0j741mqds/81lSuK/LbWtWAn7u
TgnpZklnwvhDnW+WFBnhwj3G+M2E3hxNk70Hcp2UeenebqaExzEeXN3dtU/j
6zRdPaQL9/xFfBqvkqqgo89n8YG8+NnPnnWWSJd2KedRt9a5xvS/KZrmUYy5
WBTJNCvdWbkiZNikf6YrUjVZkf55eJrUSbFJ75No3TiSeVlk0y6QbtdJVrTm
zmTk0cxGXunAfD4yiCAH3+mmyiabRu/v4UFR0ik32X16gu9BVcLfzo2vbscn
MpuRwPF6ndOIICCunNOhCUWiK5Hiv6b0ZPA2re6zaepeJ5u8IWxr0ineGhFB
Oj8HkSzcb8tNVSQ5BiLAutNytdoUOnrtbstpljZb97nrPX/6/GX/xL18+exn
w5cvX74YHcmqIlqksCOM+TO/T0iRzqoywPm3mzxLBoQBM3c9cr9L5nk6cF9m
TVkvMzeuk3SWjDDQ+fnN16edXZ9/WOdEH3CPzz80KS+aaEzR1Ez5b9KadkJ7
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
sG1FEEScoK0v8M0IvLsh6ZwGmW8KQY0ExkFRkB24JIRoM6yR+sPOd5BQSIpi
/wpiCx0KFCaBiq4SDhHIG2E1fFZsGGBxlaCwwggWagNbs5eWsDidHRZkwRdI
JrqK+abiE/IMIlXjYaxcxAwBRrGyCsaPSxP/b9WsSDPcVZtmyYD9ho3vZsGQ
9Qut/MJdMIUvHyKXhWqauRIplhTMrOpf3z+azDRvf1f7owNQEiGndCtSvgJB
RAzzijBkn5++vRDRmNl8ZJ4mLkLgoJtQl/kGMCKeMytFZYGWtxX70e5CnTER
0Yn27Jut+PaEaxtoYTBr0i9gCyMsgWTuaTEJn3YSdTiJBicRuQzpLkhUS3fb
bRTv8WJn6Uwm7IdX/G6aOs3nxCYg1ttzA++1ZCs7nrcAIRJFo1GyAiaMErQu
OFJU6UmmFWSgwBu8bgUyhoCRmHFcnInjUrSfr76iv2N/QDQn8cix8MjYkdu7
uB5f9h3bboVWyb8a/mUglGHSZurRHvIc0acbusVsFPRhU4L2GX30AC5QAKC0
LX86ItnKEcmeumLvbgRBrXw+8lyrrYXZN03QGlY8UStdYmVLfEi2A5B9tWcE
xSUyjwD7mNe2TPCEXVclG0+SJtI2Bx0volcnocLKNYAthnhTLVoWHITe9YLA
ZnG+vLq8xnV/9eZ6+PY2eIbE8uGuz76qvSuGY20uSFTNOKixVt1mmebrYKmJ
xJngNw9HoXfKxxioL8dkKcwQDNPAbRgRCKVEtM9FHZbnONJJXDJKp3CrJykL
L3RPWArTG2f2yDF85JCmmYFdCFkQMfPK31L1ZP/i5bOfffdd+OPn330ng5nP
KMTtBWe/Pv38xXN6VZ17dQcwjX9vlYKhZPWqlpH/VeLWOZiEo9a3dKpDOu2a
TnY4qUpSd4agDwshFsOnL/6t99EIiFk5Pf6Bgx73HQcfq8jC1mU3rgihEXSK
EAPADoaK4fWmXgKHL2Uw94oHY7guKm9lBYJkFmTkjWHTINElbHsURGsDoVzX
ycNi6CW1IV4llbjI5mnd/LC9f3ws2jU2bTEgcmZ0Sol4ethXW3CAhecuwTrY
UQBVS/OaRKr+DdysPZvkQ1HiPlT2NkwigP8dZ/yx4Wir5pBnkk4H0D3dmQQY
s0KKAbIQTeQZMbYBaXuS1CTXaoyGN9dFzIevaIsE6O5BQHNZ70wep+NYD3Wo
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
8r01Mw/7AAA=

-->

</rfc>
