incipient.ai
← Intelligence Hub

Financial Services · 2026-01-20 · 10 min

FIBO and In-Place Semantic Mapping for Banking

Why FIBO is the finance-native knowledge backbone, and how an agentic mapping pipeline aligns physical columns to ontology classes at scale.

Banks drown in report sprawl because every team invents its own definition of customer, exposure, product, or counterparty. The fix is a shared, machine-readable vocabulary — and in finance, that vocabulary already exists. FIBO (the Financial Industry Business Ontology) is finance-specific by design, with classes for instruments, parties, obligations, and contracts. You do not have to invent an ontology; you have to map to one.

The knowledge backbone — a layered standards stack

FIBO is not used alone. It sits inside a layered modeling approach built entirely on open standards:

LayerStandardWhat it gives you
Glossary / taxonomySKOSHuman-readable business concepts and synonyms
OntologyOWL (bootstrapped from FIBO)Banking classes, properties, relationships
Physical mappingR2RML / OBDARelational sources → RDF, virtual or materialized
ValidationSHACL"Every exposure resolves to one counterparty"
ProvenancePROV-OSource, pipeline, and steward decisions per fact
Catalog publicationDCATFederated discovery across domains

Because every layer is an open standard, the model stays portable across clouds and vendors — no lock-in at the semantic layer.

What the mapping actually looks like

Two datasets in different systems both describe a FIBO concept. The mapping makes that explicit with R2RML and constrains it with SHACL:

@prefix fibo: <https://spec.edmcouncil.org/fibo/> .
@prefix bank: <https://ABCbank.com/kg/> .

bank:tbl_oracle_acct  a dcat:Dataset ;
  bank:storesConcept  fibo-fbc:DepositAccount ;
  bank:sourceSystem   "oracle.crm.acct" ;
  r2rml:logicalTable  [ r2rml:tableName "acct" ] .

bank:tbl_sqlsrv_loan  a dcat:Dataset ;
  bank:storesConcept  fibo-loan:Loan ;
  bank:cdeField       "outstanding_principal" ;
  sh:property [ sh:path bank:lei ;
                sh:minCount 1 ; sh:datatype xsd:string ] .

Once oracle.crm.acct and sqlsrv.loan both declare their FIBO concept and share an lei, an agent can join them by meaning — it knows both belong to the same LegalEntity — without anyone hand-coding that relationship per query.

Mapping at scale — the agentic pipeline

The obstacle has always been effort: mapping thousands of columns to ontology classes by hand is infeasible. Schema-Miner Pro is an agentic pipeline that drafts the mappings and routes only the uncertain ones to humans:

  1. Ingestion & drafting — an LLM parses table headers, schemas, and descriptions from Databricks foreign catalogs and drafts a lightweight initial mapping.
  2. Hybrid grounding — lexical heuristics first (cust_idhasIdentifier), then a FAISS semantic nearest-neighbor search over FIBO OWL embeddings for ambiguous fields.
  3. Template generation — approved mappings are exported as RDF/Turtle, linking columns to canonical FIBO identifiers.

A critical design choice: when no alignment exists, the pipeline returns an empty result rather than a forced mapping. A wrong mapping is worse than a missing one, because it silently corrupts every downstream inference.

# every new column → draft → ground → confidence score
draft = llm.map_column(col, schema_ctx)         # "cust_segment" → CustomerSegment?
if lexical_match(col):                            # direct name match
    mapping, c = lexical_match(col), 0.95
else:
    hits = faiss.search(embed(col), fibo_owl, k=3)  # semantic fallback
    mapping, c = hits.best_or_none()              # None if no alignment
route = "commit" if c >= 0.85 else "sme_review"   # confidence gate

The confidence gate keeps it trustworthy

Every proposed mapping carries a confidence score c ∈ [0,1]. Mappings at c ≥ 0.85 auto-commit; anything below locks the column and routes to an SME dashboard. Stewards validate or adjust — they curate proposals, they do not rebuild from scratch — and every correction re-trains the FAISS memory, lowering future error rates. This human-in-the-loop spine is covered in its own article.

Ready-made banking patterns

FIBO-aligned mapping unlocks reusable, governed data products the whole enterprise consumes: Customer 360, Loan, Deposit, Credit, plus AML and regulatory-reporting products. Publish once, discover through the Data Marketplace, reuse everywhere.

The path to implement

  1. Pick one high-value domain (e.g. counterparty exposure) and bootstrap an OWL ontology from FIBO.
  2. Run Schema-Miner Pro over its foreign catalogs to draft column → FIBO mappings.
  3. Constrain the model with SHACL ("every exposure resolves to one counterparty") and capture PROV-O provenance.
  4. Route low-confidence mappings to stewards; commit high-confidence ones to the RDF store.
  5. Publish the governed product to the Data Marketplace and attach agents.

The result: one vocabulary, many systems — report sprawl becomes governed self-service, and agents reason over customer, exposure, and counterparty instead of table names.

Map your estate to FIBO with Schema-Miner Pro →