Semantics for Data Architects

Financial Industry Business Data Model (FIB-DM) An introduction to the ontology-derived Enterprise Data Model. Jurgen Ziemer Ontologist & Data Architect at Jayzed Data Models Inc.

http://fib-dm.com © 2019 Jayzed Data Models Inc. FIBO is the authoritative model of Financial Industry concepts, their definitions, and relations.

The Enterprise Data Management Council (EDMC) is the Global Association of over 200 Financial Institutions (FI). • Data Management best practices • Development and implementation of Data Standards.

EDMC members developed the Financial Industry Business Ontology (FIBO), a business conceptual model. More than 1600 classes detail financial instruments, business entities and processes.

Finance key point https://fib-dm.com © Jayzed Data Models Inc. 2019 2 You work at a Financial Institution and already embrace model-driven development, industry standards, and reference models.

Finance business stakeholder and expert with a working knowledge of Entity-Relationship and Ontology diagrams.

Data or Application Architect experienced in Enterprise Reference models. You may have used FIBO design patterns and definitions.

As an Ontologist with an in-depth understanding of the FIBO, you already use the reference ontology for your design and want to spread adaptation across your enterprise.

Finance key point https://fib-dm.com © Jayzed Data Models Inc. 2019 3 Introduction to author and publisher

Jayzed Data Models Jurgen Ziemer has 20 years industry experience as a data architect and ontologist at leading Financial Accenture Institutions and service providers.

• Seven years as an IBM Software Group Consultant for the Banking Credit Suisse and Financial Markets Data Warehouse (BFMDW) model at 45 IBM banks in North America, Europe, and Asia. • Four years implementing BFMDW at Citi and Deutsche Bank. Deutsche Bank • Speaker at FIBO conferences

Jayzed Data Models Inc. is a US consulting company incorporated in 1999. Citi

Reuters Jayzed holds the copyright to the Financial Regulation Ontologies offered under Semantic Compliance®; a USPTO registered Trademark. German Stock Exchange

Finance key point https://fib-dm.com © Jayzed Data Models Inc. 2019 4 There is a chasm between semantic and conventional data management.

The EDMC specified FIBO in OWL needs highly specialized Ontology Web Language ontologists. (OWL).

FIBO is comprehensive with Many banks and investment detailed coverage of business managers don’t have the entities, loans, securities, expertise inhouse. derivatives, and indicators.

Large financial institutions IT-departments must still support started implementations on and design conventional RDF (“triple”) stores .

Finance key point https://fib-dm.com © Jayzed Data Models Inc. 2019 5 FIB-DM is the bridge across the chasm.

Finance key point https://fib-dm.com © Jayzed Data Models Inc. 2019 6 The ontology transformed into a data model leverages the design for relational databases.

FIBO RDF OWL FIB-DM Data Model

Configurable Ontology to Data-model Transformation Semantic Triple Store Relational

Finance key point https://fib-dm.com © Jayzed Data Models Inc. 2019 7 What is the challenge? (stories)

NY Bank needs Schema for new Security Master System; trying to leverage FIBO for Logical Data Model.. Challenge: Data Architects are not familiar with RDF/OWL and have no experience in Protégé or Topbraid Workaround: Ontologist writes SPARQL queries to extract into MS-Excel spreadsheets. Update: In September, the NYC bank downloaded FIB-DM core. CT AIM with Hedge Fund Ontology SEC Form PF assessments needs a relational platform Challenge: Converting operational ontology of some 200 FIBO and hedge fund specific classes Workaround: Manual transcription of graphs into ERWin diagrams. Some metadata extract and import.

• Looking for tooling, Protégé and Topbraid do not export LDMs. • ERWin and PowerDesigner have no import for RDF/OWL. • Only two less widely used data modeling tools, Sparx Enterprise Architect and IBM Infosphere Data Architect import RDF XML.

Data Architect Ontologist https://fib-dm.com © Jayzed Data Models Inc. 2019 8 Current tooling imports are not fit for purpose The first FIBO versions were in Sparx EA. Sparx may be used to create ontology diagrams.

URIs as entity names Datatype properties become classes Class restrictions become anonymous pseudo classes No import of annotation properties

Infosphere Data Architect aborted.

So I encoded my own custom transformation process.

Data Architect Ontologist https://fib-dm.com © Jayzed Data Models Inc. 2019 9 Financial Industry Business Data Model = in (and other data modeling tools)

• Financial Industry Business Data Model of 1875 Entities, complete definitions, annotations, and axioms (business rules). • Data Architects leverage the full content of the Industry Standard. • Common Language and design patterns for Semantic & Relational databases.

Finance key point https://fib-dm.com © Jayzed Data Models Inc. 2019 10 Semantic Enterprise Architecture

FIBO Use Type Level RDF OWL FIB-DM Business Conceptual FIB-UM Enterprise

Logical Data Department Design Model

Physical

Development RDBMS RDF Project Implementation Data Message Process Object

Finance key point https://fib-dm.com © Jayzed Data Models Inc. 2019 11 Semantic Model-Driven Development

• FIBO is the domain ontology; FIB-DM is the conceptual data model. Conceptual • A conceptual business model for the Financial Industry and applied at the enterprise level.

• Logical models for data, message, process, and object derive from the ontology Logical

• The ontology at the architecture apex ensures common names, definitions and design across the enterprise. Physical

• Midsize Financial Institution without Semantic Technologies yet, adopt FIB-DM, a compatible enterprise model. • Large institutions use CODT to transform their inhouse ontologies into data models for downstream implementation.

Finance key point https://fib-dm.com © Jayzed Data Models Inc. 2019 12 Transformation principles & considerations for the derived data model

1. The model must be practical. Overly normalized designs become too abstract for business users and developers. 2. The model must be complete. We don’t want to miss information from the ontology 3. The model has complete documentation. The diagrams depict all subject areas and design patterns. 4. The model maps back to its source, the ontology

Data Architect https://fib-dm.com © Jayzed Data Models Inc. 2019 13 Configurable Ontology to Data-model Transformation

• Source Ontology with connection parameters • Target tool and model • Name translation rules • Ontology module • Anonymous and equivalent classes • Object properties • Data properties • Annotation List • Inverse property list.

Finance key point https://fib-dm.com © Jayzed Data Models Inc. 2019 14 From FIBO to FIB-DM, to FIBUM – how does CODT work?

The Configurable Ontology to Data-Model Transformation is basic ETL.

RDF OWL Extract Transform Load

We extract metadata from the source ontology, transform ontology metadata into conceptual data model metadata, and load into the data modeling tool, PowerDesigner. The extract process runs SPARQL on the ontology to get the metadata. PowerDesigner imports MS-Excel workbooks. The Transformation in between is a 2-step process using the patent-pending Metadata Sets.

Data Architect Ontologist https://fib-dm.com © Jayzed Data Models Inc. 2019 15 The CODT Metadata Sets.

The Extract process populates the Ontology Metadata Sets for classes, object-, data properties, and annotations.

Step 1 Step 2

Ontology Generic Tool-specific Metadata Set Entity Relationship Metadata Set Metadata Set Step one transforms the ontology metadata and populates the generic ER representation. The Tool-specific metadata set is in PowerDesigner format. We serialize as MS-Excel and directly load it into the tool. Step two is a simple conversion from generic ER to PowerDesigner objects, properties, and extended attributes.

Data Architect Ontologist https://fib-dm.com © Jayzed Data Models Inc. 2019 16 Transformation settings for Domain Ontologies

CODT, the patent-pending Configurable Ontology to Data Model Transformation enables the ontologist and data architect to control the process and mapping.

To transform a domain ontology into a practical enterprise data model, we set: • Anonymous classes do not transform into entities. The setting is to remove the clutter of entities that never become physical from the model. FIB- DM preserves anonymous classes used in class restrictions in the documentation. • Names transform from OWL Camel Case to LDM English Names (capitalization and spaces). E.g. fibo-fbc-fct-fse:DepositoryInstitution becomes Depository Institution • Object Properties transform to PD Associations and Associative Entities (not simple relationships). This preserves the semantically important object property hierarchy and resolves open-world properties. Domain and Range, Class Restrictions determine parent and child entities related to the association/ associative entity.

Ontologist https://fib-dm.com © Jayzed Data Models Inc. 2019 17 From FIBO to FIB-DM

Ontology graph Transformation/mapping Conceptual Data Model Class to Entity Depository Institution

Subclass to Inheritance (subtype) Depository Institution subtype

Bank

Object Property to Associative Entity is Provided By Bank

<> provides

Bank Account is Provided By

Bank Account

1,n Object Property to Association Bank Account is Identified By

identifies

Bank Account1,n Identifier identifies Class Restrictions, domain and range determine Relationships and Association Links Bank Account Identifier

Ontologist https://fib-dm.com © Jayzed Data Models Inc. 2019 18 Domain ontology generates a perfect CDM

Ontology graph Conceptual Data Model

Depository Institution

This entity-relationship diagram is Depository Institution subtype the best representation of the Bank Account, its provider, and ID. Bank

is Provided By Bank

<> provides ~ Bank Account is Provided By = Bank Account There are no missing and no superfluous

entities and relationships in the design. 1,n Bank Account is Identified By

identifies

Bank Account1,n Identifier identifies

Bank Account Identifier

Finance key point https://fib-dm.com © Jayzed Data Models Inc. 2019 19 A one thousand entity open-source model

Securities, 178

Finance, Business & Commerce, 318

Core, 1029 Foundation, 380 Indicators, 573 Business Entities, 269

Semantic Metadata, 5 Languages, Derivatives, 94 Countries & Currencies, 57

Finance key point https://fib-dm.com © Jayzed Data Models Inc. 2019 20 A self-contained standalone data model.

SM LCC SKOS Simple Knowledge Organization System for The base package for Semantic Metadata The base package for Languages, taxonomies, classificatins, and controlled Generic content. Countries and Currencies. vocabularies.

FND Free Open The Foundation package defines basic building blocks for the other packages. All packages depend on Foundation. Source Domain Core

BE FBC The package defines functional entites, The Business Entities package defines products and services, debt and equities legal entities and formal organizations. and financial instruments.

Soon to come packages still in FIBO development

SEC LOAN The package for securities. CAE Commercial Extensions Loans & Mortgages Corporate Actions & Events License MD DER IND CIV Market Data The package with entities to model The package for Derivative instruments. Collective Investment Vehicles Economic and Financial Indicators.

Finance key point https://fib-dm.com © Jayzed Data Models Inc. 2019 21 Quick tour and validation

Expand the packages and navigate to FND Agreements – Agreements. Open the diagram.

Leaf-level packages transformed from FIBO ontologies. Higher-level packages are containers to structure the leaf-level packages.

For FIB-DM core, the root- level packages are: • FND (Foundation) • BE (Business Entities) • FBC (Finance Business and Commerce)

Data Architect https://fib-dm.com © Jayzed Data Models Inc. 2019 22 Package Properties

The Package Name is the rightmost string in the ontology namespace.

CODT transforms the ontology prefix as the unique code of the package.

Note: All ontology classes, properties with the prefix fibo-fnd-agr-agr become model objects of the Agreements package.

The URI is the Uniform Resource Identifier of the ontology. It is a traceability link to the source of the model object.

Data Architect Ontologist https://fib-dm.com © Jayzed Data Models Inc. 2019 23 Package extended attributes

The Extended Attributes tab has a list of ontology annotations.

The default transformation configuration uses the Abstract to populate the Package Comment.

Extended attributes of Data Type Text are multi-line. For example, the Copyright attribute lists the Object Management Group and EDM Council copyrights and the License attribute lists the FIBO MIT license besides Jayzed and GPL-3.0.

Data Architect Ontologist https://fib-dm.com © Jayzed Data Models Inc. 2019 24 Entity properties

The Name is the ontology class Localname, converted from Camel Case to LDM naming convention (capitalized with space between words). The Code transforms from the ontology class Prefix: Localname.

The Comment populates from the class annotation RDFS comment and SKOS definition.

There are two particular tabs for ontology derived data models, Annotations and Lineage.

Data Architect Ontologist https://fib-dm.com © Jayzed Data Models Inc. 2019 25 Entity annotations

FIBO has extensive documentation captured in annotation properties.

The chart shows the number of classes with annotated documentation.

Count

9391 owl:Class rdfs:label 130111 513 1618 owl:Class skos:definition

owl:Class fibo-fnd-utl- 782 av:adaptedFrom owl:Class fibo-fnd-utl- av:explanatoryNote owl:Class fibo-fnd-utl- 981 av:abbreviation 1615 owl:Class fibo-fnd-utl- av:synonym

Data Architect Ontologist https://fib-dm.com © Jayzed Data Models Inc. 2019 26 Entity lineage The Lineage tab captures ontology metadata of the source class. The extended attributes provide traceability into the ontology and preserve semantics beyond the entity-relationship model.

The Resource Name is class Prefix and Localname. FIB-DM uses the resource name as the entity code, but you can generate your codes in the modeling tool.

The Localname is the rightmost string in the Resource Name and URI. The Prefix is an abbreviation of the URI defined in the ontology. The Uniform Resource Identifier of the class is a link into the FIBO source ontology.

Restriction and Equivalent class axioms formulate OWL semantics.

Data Architect http://jayzed.com © Jayzed Data Models Inc. 2019 27 Entity Restriction

Class restrictions limit the set of allowable instances. For example, the Obligor on the previous page must have an Obligation to some Commitment. fibo-fnd-agr-agr:hasObligation some fibo-fnd-agr-agr:Commitment

Note that the ontology object property hasObligation transformed into an Associative Entity in the diagram. The transformation processes the class restriction and creates Relationships from Obligor to the associative entity hasObligation. Class restrictions also determine relationship cardinality. Here, the Obligor must have at least one obligation. Class restriction can be very complex logical expressions. Even the Obligor restriction below is beyond ERM expressivity. The Obligor plays a role as a party to an agreement. fibo-fnd-pty-rl:isPlayedBy some (fibo-fnd-pty-pty:isAPartyTo min 0 fibo-fnd-agr-agr:Agreement)

FIB-DM does not transform anonymous classes (= restrictions) into pseudo entities. However, FIB-DM preserves these business rules for the benefit of downstream physical modelers and application developers.

Data Architect Ontologist http://fib-dm.com © Jayzed Data Models Inc. 2019 28 Entity Equivalent

Defined Classes in OWL formulate conditions for the set of members. Unlike for the Primitive Class, we don’t construct (~ SQL INSERT) instances of the class. The inference engine, a.k.a. Reasoner determines the instances that match the equivalent condition. For example, the FIBO Foundation Code Set is equivalent to the LCC code set: lcc- lr:CodeSet.

That means that every instance in lcc-lr:CodeSet is also a member of fibo-fnd-arr-cd:CodeSet.

FIB-DM has entities transformed from equivalent classes. The Equivalent Lineage attribute is a hint for the physical modeler to consider an ALIAS.

Defined classes may have more complex conditions. For example, the Affiliate entity is a union of Majority Controlling Party and Controlled Company. fibo-be-oac-cpty:MajorityControllingParty or fibo-be-oac- cctl:ControlledCompany

The Equivalent Lineage attribute is a hint for the physical modeler to consider a VIEW.

Data Architect Ontologist https://fib-dm.com © Jayzed Data Models Inc. 2019 29 Multiple Inheritance

An ontology class can be a subclass of more than one parent class. For example, the Central Bank is both a Bank and a Monetary Authority. Multiple Inheritance makes sense from a business perspective, and as a conceptual model, FIB-DM keeps multiple supertypes.

However, the LDM permits only one supertype. Note that object models also allow multiple inheritances. The Logical Data Modeler can use the same techniques to resolve multiple inheritances:

1. The issue goes away. A logical project model derived from FIB-DM may not (D) Bank Monetary Authority scope the Monetary Authority. Then the Central Bank has only one (D)

supertype, the Bank. Bank subtype Monetary Authority subtype 2. The Logical Modeler changes one or both subtypes into dependent relationships. In the diagram, both Bank and Monetary Authority identifiers constitute the key for the bank. Central Bank

Data Architect Ontologist https://fib-dm.com © Jayzed Data Models Inc. 2019 30 Entity Attributes

FIBO is a domain ontology defining business concepts with classes and object properties. There are only 160 data properties in the source ontology.

Hence, FIB-DM is an entity-level conceptual data model, sparsely attributed and has no keys.

The PowerDesigner CDM has Data Items. These are model objects independent of the entity. The Data Item then gets attached to the entity as an attribute. Data Items as a model object disappear when the modeler derives an LDM from the CDM. The transformation creates Data Items from source ontology data properties. The property domain and class restrictions determine attributes on an entity.

Currency Currency Name Variable characters Minor Unit Variable characters Numeric Code Variable characters Name Variable characters

Data Architect Ontologist https://fib-dm.com © Jayzed Data Models Inc. 2019 31 Associations

The PowerDesigner CDM introduces the Association as a model object. Associations stand on their own, rather than depending on two entities. In the example diagram, one or more Identity Documents, such as Passport or Driver’s License, identify a person. The Person can also have precisely one National ID, e.g., Social Security Number.

Association Links connect the Association to participating Person entities. Unlike the relationship, the Association can link to more than two entities. 0,n Person is Identified By The CODT process transforms object properties into associations and determines Association Links from the identifies domain, range, and class restrictions. Identity Document identifies National Identification Number identifies Associations become Associative Entities, and the Association 1,n 1,1 Links become relationships when the modeler derives an LDM Identity Document National Identification Number from the CDM.

Data Architect Ontologist https://fib-dm.com © Jayzed Data Models Inc. 2019 32 Associative Entities

Unfortunately, PowerDesigner CDM Associations do not support inheritance. Hierarchies of object properties are an essential OWL construct and widely used in the FIBO.

The default configuration to transform a domain ontology into an EDM, therefore, creates Associative Entities from object properties that are or have sub-properties.

<> governs

governs subtype

<> <> <> <> governs Payment Of regulates Supply Of has Jurisdiction has Governing Jurisdiction

Data Architect Ontologist https://fib-dm.com © Jayzed Data Models Inc. 2019 33 Associations, a Star Schema?

The context diagram below shows the identifies Association and some participating entities.

Indeed, the diagram looks like a Star Schema (with a “factless” fact table in the center). While this is perfectly fine for a dimensional data model, and the model check doesn’t complain, the denormalized design would not be appropriate in a logical data model.

However, as previously done for multiple inheritances, we prioritize the clarity for business users of the design over 4th Normal Form correctness.

Data Architect https://fib-dm.com © Jayzed Data Models Inc. 2019 34 Multi-valued association resolved.

After scoping and attribution, the logical data modeler can resolve to 4NF: 1. Once the modeler removes entities without attributes, the issue may disappear. 2. The standard 4NF resolution breaks down the identifies association with role-named associations (a subtype of identifies). E.g., Bank Identifier identifies Bank. The entity Lineage tab Restriction on Bank Identifier shows the class restriction. 3. A relationship Role can be added to stipulate the identifier. For example, a Security Identifier Type can tell the application whether to look for a Security Identifier or National Securities Identifying Number. 4. The Physical modeler can decide to roll-up or roll-down the identifies subtypes.

Identifies Selector identifies identifies identifies Selector Type

As said before, FIB-DM does identifies Subtypes not prescribe how the data

modeler resolves the design. identifies Currency identifies Bank identifies Account

Currency is Identified by Currency Currency Identifier identifies Currency Bank is Identified by Bank Identifier Bank Identifier identifies Bank Account is Identified by Account Identifier AccountIdentifier identifies Account

Currency Currency Identifier Bank Bank Identifier Account Account Identifier

Data Architect https://fib-dm.com © Jayzed Data Models Inc. 2019 35 Relationships

FIB-DM uses Associations and Associative entities to model relationships between entities. Hence, Relationship model objects are merely connecting entities to associative entities. They transform from object property domains and class restrictions.

The naming conventions for the code is “parent entity – child entity.” For example: fibo-fbc-dae-dbt:Accrual- fibo-fnd-rel-rel:appliesTo

Likewise, Relationship Name and Comment generate as per CODT configuration settings.

This concludes the structural overview of the model. The next tutorial introduces FIB-DM business content and design patterns.

Data Architect https://fib-dm.com © Jayzed Data Models Inc. 2019 36 Chasm between semantic and conventional FIB-DM is the bridge across the chasm. data management.

Finance key point https://fib-dm.com © Jayzed Data Models Inc. 2019 37 Core in

(and other data modeling tools) https://fib-dm.com/data-model-download/

Finance key point http://fib-dm.com © Jayzed Data Models Inc. 2019 38