Non-Performing Loan Ontology

The NPL Ontology (NPLO) is a new ontology describing datasets of Non-Perfoming Loan Portfolios.

Page content

NPLO Visualization

The Non-Perfoming Loan Ontology

The Non-Performing Loan Ontology is a framework that aims to represent and categorize knowledge about non-performing loans using semantic web information technologies. Codenamed NPLO, it codifies the relationship between the various components of a Non-Performing Loan portfolio dataset.(NB: Non-performing loans are bank loans that are 90 days or more past their repayment date or that are unlikely to be repaid, for example if the borrower is facing financial difficulties).


Tacking non-performing loans is a perennial problem as the market for under/non-performing credit tends to be illiquid, opaque and with high transaction costs. The possible surge of NPL’s as a consequence of the economic impact of the Covid-19 pandemic adds an extra measure of urgency. On 16 December 2020, the European Commission presented a strategy and a series of measures to prevent a build-up of NPLs in the wake of the Covid-19 pandemic.

One of the tools towards that goal concerns the reduction of information asymmetries involved in the analysis of NPL portfolios. In a insightful piece, “Overcoming non-performing loan market failures with transaction platforms”, Fell et al. explored the market failures that help perpetuate the NPL problem. They highlight, in particular, information asymmetries and the attendant costs of valuing NPL portfolios as key obstacles.

Following calls from the EU Commission and the EU Council to develop data templates to reduce information asymmetries between potential buyers and sellers of NPL, the European Banking Authority (EBA) has developed such standardised data templates. In the same wavelength, the European Banking Authority published standardized NPL data templates as a step towards reducing the obstacles that prevent the reduction of NPL’s.

Prior Open Risk Resources

In a previous post we discussed the importance of advancing open and transparent methodologies for managing the risks associated with NPL credit portfolios.

The EBA NPL transaction templates are documented in detail at the Open Risk Manual. The templates capture data loan-by-loan, i.e. at the most granular level. They are built on existing reporting, which should reduce implementation costs. Within the templates users should be able to identify the data needed, for example, by investors to fairly price an NPL portfolio and other support other credit portfolio management activities.

In this post we released an open source database backend with a schema that conforms to the EBA templates. The docker container is available here. Integrating NPL data is part of the OpenCPM toolkit and the Open Risk API for Credit Portfolio Risk Management developed by Open Risk.

In a subsequent post with a new release we further built on that prior work to produce an easily usable web platform for the collection and management of EBA compliant NPL data.

In this post we introduce the NPL Ontology, a new ontology describing datasets of Non-Perfoming Loan Portfolios. The ontology complements the already released tools and provides a modern, standardized way to annotate NPL databases.

Integrating Semantic Web Technologies

In principle any semantic technology can be the starting point for an NPL ontology. We adopt the W3C’s Web Ontology Language (OWL) as a Semantic Web language designed to represent rich and complex knowledge about things, groups of things, and relations between things. Being a global standard it offers built-in interoperability and reuse.

The NPL ontology builds on and integrates with EBA NPL template proposal by elevating the core data categories of the templates into OWL classes, adding the logical relations between entities and enumerating the list of data properties that make part of a complete template.

This is the first release (0.1) of the ontology, substantial further refinements are envisaged

The NPLO Structure

NPLO Overview

As with any OWL ontology, there are three key elements to the NPL ontology:

  • The NPL Classes that define the relevant entities (objects) and concepts characterising the NPL datasets, this includes concepts like Counterparties, Loans, Collateral etc etc.
  • The NPL Object Properties that define relationships between classes / concepts, e.g. A certain Collateral is used to secure a certain Loan of a given Borrower. Properties allow also linking to externally defined ontologies, thus embedding the NPLO in a richer ecosystem.
  • The NPL Data Properties, namely data literals associated with classes / concepts which provide the concrete data (strings, numbers etc) that characterise entities and their relationships.

The NPLO Classes

Classes (owl:Class) are the main concepts handled by the ontology. The choice of classes defines the scope of this knowledge domain. The current classes are:

     counterparty group
       - corporate borrower
       - individual borrower  
     property collateral
       - personal loan
       - corporate loan
     collection agent
     external collection
     insolvency practitioner
     insurance provider
     rating agency

Note: Not all of those classes will have a specific EBA template associated.

NPLO Object Properties

Object properties (owl:ObjectProperty) relate individual instances of two OWL classes with each other (and potential other ontologies.

     collateral concerns borrower
     collateral concerns loan
     collateral has type of identifier
     collection concerns borrower
     collection concerns loan
     collection is undertaken by counterparty
     is part of group
     enforcement concerns borrower
     enforcement concerns loan
     enforcement has type of identifier
     forbearance concerns borrower
     forbearance concerns loan
     forbearance has type of identifier
     group includes borrower
     has borrowed loan
     has borrower

NPLO Datatype Properties

Datatype properties (owl:DatatypeProperty) relate individuals (instances) of the NPL OWL classes to literal values. These allow linking objects to more concrete attributes. There over 400 such data properties forming the bulk of the NPL Portfolio data, thus we do not list them here separately.