Simor
The knowledge graph that connected 3 million regulatory documents

The knowledge graph that connected 3 million regulatory documents

Simor Consulting | 13 Oct, 2026 | 06 Mins read

A global bank’s compliance team was responsible for tracking regulatory obligations across forty jurisdictions. Each jurisdiction produced regulations, guidance documents, enforcement actions, and consultation papers. The team maintained a library of three million documents that had accumulated over fifteen years. When a new regulation was published, the compliance team needed to answer: which existing obligations does this affect, which business units are impacted, and what controls need to change?

The answer required reading the new regulation, identifying the obligations it imposed, tracing those obligations to existing obligations in other jurisdictions that covered similar ground, and mapping the obligations to the bank’s internal control framework. For a straightforward regulation, this took two to four analyst-weeks. For a complex cross-jurisdictional regulation, it took two to three months.

The delay was not in reading the regulation. The delay was in finding the connections. A new EU directive on anti-money laundering might impose obligations that were similar to, but not identical to, existing obligations under the US Bank Secrecy Act, the UK Money Laundering Regulations, and the Singapore Payment Services Act. The connections were implicit in the text but explicit in no system. Analysts found them through experience, memory, and manual search.

Why Search Was Not Enough

The team had a document management system with full-text search. Analysts could search for “anti-money laundering” and get thousands of results. The problem was not finding documents. The problem was understanding relationships between documents.

Search returns documents that contain matching terms. It does not return the relationship between documents. An analyst searching for the impact of a new EU directive needed to know not just which documents mentioned anti-money laundering, but which documents imposed conflicting requirements, which documents were superseded by the new directive, and which documents referenced the same underlying obligation.

A document that says “report suspicious transactions within 24 hours” and another document that says “report suspicious transactions within 48 hours” are both about suspicious transaction reporting. Full-text search returns both. But the relationship between them (which jurisdiction requires 24 hours, which requires 48 hours, and whether the bank must comply with both) is not captured by search. An analyst must read both documents, understand the jurisdictions, and determine the relationship manually.

This relational gap was the bottleneck. The compliance team did not need better search. They needed a map of how obligations related to each other.

The Graph Model

A knowledge graph represents entities and the relationships between them. For regulatory compliance, the entities were obligations, documents, jurisdictions, business units, and controls. The relationships were: an obligation appears in a document, a document is issued by a jurisdiction, an obligation applies to a business unit, and a control addresses an obligation.

The graph was built in three phases. The first phase extracted obligations from documents. An obligation is a statement that requires or prohibits an action: “firms must report transactions above $10,000” or “firms must not process payments to sanctioned entities.” The extraction used a combination of rule-based parsing (identifying modal verbs like “must,” “shall,” and “required”) and a fine-tuned language model that classified sentences as obligations, definitions, guidance, or background. The model was trained on a labelled set of twelve thousand sentences that compliance analysts had annotated.

The second phase linked obligations across documents. Two obligations that imposed similar requirements were connected with a “related obligation” edge. Two obligations that imposed conflicting requirements were connected with a “conflicts with” edge. An obligation that superseded an earlier one was connected with a “supersedes” edge. The linking was performed by a semantic similarity model that compared obligation embeddings and classified the relationship type based on a training set of five thousand labelled obligation pairs.

The third phase mapped obligations to the bank’s internal control framework. Each control in the framework was linked to the obligations it addressed. A control that required suspicious transaction reporting was linked to all obligations across all jurisdictions that imposed suspicious transaction reporting requirements. This mapping revealed gaps, obligations that no control addressed, and redundancies: multiple controls addressing the same obligation.

This diagram requires JavaScript.

Enable JavaScript in your browser to use this feature.

The Impact Analysis Workflow

The graph changed the analyst workflow from search-and-read to query-and-navigate.

When a new regulation was published, the analyst uploaded the document to the extraction pipeline. The pipeline identified the obligations in the document and matched them against the graph. Within minutes, the analyst had a preliminary impact assessment: which existing obligations were related, which controls were affected, which business units were impacted, and where conflicts existed.

The preliminary assessment was never complete. The extraction system missed obligations that were expressed in unusual language. The linking system produced false positives: obligations that were superficially similar but substantively different. The control mapping had gaps because the bank’s control framework was itself incomplete. The analyst used the preliminary assessment as a starting point and refined it through manual review.

The value was in the starting point. Before the graph, an analyst started from zero and spent weeks finding connections through manual search. After the graph, an analyst started with a connected map and spent days verifying and refining it. The two-to-four analyst-weeks for a straightforward regulation dropped to three-to-five analyst-days. The two-to-three months for a cross-jurisdictional regulation dropped to two-to-three weeks.

What the Graph Could Not Do

The knowledge graph had three limitations that the compliance team learned to work around.

First, obligation extraction was noisy. The rule-based parser flagged too many sentences as obligations because regulatory text uses “must” and “shall” in contexts that are not obligations, but definitions, cross-references, and transitional provisions. The fine-tuned model reduced the noise but did not eliminate it. The extraction precision was approximately seventy-four percent, meaning roughly one in four extracted obligations was not actually an obligation. Analysts had to review and prune the extracted set, which added time but was still faster than manual extraction from scratch.

Second, relationship classification was unreliable for nuanced conflicts. The semantic similarity model could identify that two obligations were related with seventy-eight percent accuracy. It could identify that one obligation superseded another with seventy-one percent accuracy. But conflict detection was only sixty-two percent accurate because regulatory conflicts are often subtle: two obligations that appear to conflict may be reconcilable through interpretation, and two obligations that appear harmonised may conflict at the implementation level. Analysts had to verify every conflict edge manually. The graph was useful for surfacing potential conflicts that the analyst might have missed, not for confirming conflicts that the analyst already suspected.

Third, the graph required continuous maintenance. New documents were published weekly. Obligations changed as regulations were amended. Controls were updated as the bank’s risk posture evolved. The graph was only useful if it was current. The maintenance team, two full-time analysts, processed new documents on a rolling basis, with a target lag of no more than two weeks between document publication and graph update. During periods of regulatory activity (consultation periods, enforcement waves) the maintenance lag extended to four weeks, which reduced the graph’s value for those documents.

The Outcome

After twelve months, the compliance team had processed ninety-four new regulations using the graph-based workflow. The average time for impact assessment dropped from sixteen analyst-days to four analyst-days. The team identified one hundred and twelve previously unknown obligation conflicts, fourteen of which required immediate remediation because the bank was non-compliant in at least one jurisdiction without realising it.

The most valuable finding was not a specific conflict. It was a structural gap. The graph revealed that the bank’s control framework had no coverage for obligations related to digital asset custody in three jurisdictions. The compliance team had assumed that existing custody controls covered digital assets because the control descriptions did not exclude them. But the obligations in the three jurisdictions had specific requirements for digital assets (cryptographic key management, proof-of-reserves reporting, and segregation of client digital assets) that the existing controls did not address. This gap had been invisible in a search-based workflow because the relevant obligations used terminology that did not match the control descriptions.

When Knowledge Graphs Pay Off

Knowledge graphs pay off when the value is in the relationships, not the entities. If your problem is finding documents, search is sufficient. If your problem is understanding how documents relate to each other (what conflicts, what depends on what, what supersedes what) then a graph structure captures what search cannot.

The build cost is high. Obligation extraction, relationship classification, and entity mapping require labelled training data that does not exist off the shelf. The labelled data must come from domain experts, which means compliance analysts spending weeks annotating sentences instead of doing compliance work. Budget twelve to sixteen weeks for the initial build and two full-time roles for ongoing maintenance.

The payoff is proportional to the complexity of the relationship network. A firm with one jurisdiction and a hundred documents does not need a graph. A firm with forty jurisdictions and three million documents cannot function without one.

Shipping a production AI system?

Find where your AI spend leaks and where quality slips. Take the AI Production Scorecard for a fast baseline across the seven layers, or book a free AI cost review and we will turn it into a plan.

Similar Articles

RAG for Multi-User Production: Architecture Patterns for Enterprise Retrieval
RAG for Multi-User Production: Architecture Patterns for Enterprise Retrieval
07 Aug, 2026 | 17 Mins read

Basic retrieval-augmented generation works well in demos and poorly in production. The demo shows a clean pipeline: chunk text, embed chunks, retrieve relevant chunks, feed them to the model. The prod

The data pipeline that cost $50K/month, and the audit that found why
The data pipeline that cost $50K/month, and the audit that found why
22 Apr, 2026 | 04 Mins read

A financial services firm running analytics on trade settlement data came to us with a specific complaint: their cloud data platform cost had tripled in eighteen months, and nobody could explain why.

How a retailer reduced inference latency 90% with feature store caching
How a retailer reduced inference latency 90% with feature store caching
21 Apr, 2026 | 04 Mins read

A mid-market e-commerce retailer with roughly $200M in annual revenue had invested eighteen months building a product recommendation engine. The models were accurate. Offline evaluation showed meaning

Migrating from batch to streaming: a 6-month journey
Migrating from batch to streaming: a 6-month journey
28 Apr, 2026 | 05 Mins read

A logistics company processing two million shipments per day ran their entire operational reporting stack on nightly batch ETL. Every morning at 6 AM, operations managers reviewed dashboards built on

When RAG failed: a knowledge retrieval project post-mortem
When RAG failed: a knowledge retrieval project post-mortem
29 Apr, 2026 | 05 Mins read

A legal technology company had invested six months building a retrieval-augmented generation system to help contract attorneys find relevant precedent clauses across a corpus of 180,000 executed agree

From 3-hour dashboards to 3-minute insights: a BI modernisation story
From 3-hour dashboards to 3-minute insights: a BI modernisation story
05 May, 2026 | 05 Mins read

A manufacturing company with facilities in twelve countries ran its operational reporting on a traditional BI stack: a data warehouse, an ETL pipeline, and a dashboard tool that had been deployed six

The vector database that couldn't scale, and what we did instead
The vector database that couldn't scale, and what we did instead
12 May, 2026 | 05 Mins read

A media company with a library of twelve million articles, transcripts, and research documents had built a semantic search system on a managed vector database. The system was designed to let journalis

Building an AI operating system for a 10,000-person company
Building an AI operating system for a 10,000-person company
19 May, 2026 | 05 Mins read

A diversified industrial company with 10,000 employees across manufacturing, logistics, and field services had accumulated forty-seven separate AI projects over three years. Each business unit had bui

How we killed our ETL pipeline (and productivity went up)
How we killed our ETL pipeline (and productivity went up)
26 May, 2026 | 05 Mins read

A B2B SaaS company running a customer success platform had a data pipeline that consumed sixty percent of the data engineering team's time. Not feature work. Not analytics. Pipeline maintenance. The p

A compliance-first AI rollout in financial services
A compliance-first AI rollout in financial services
03 Jun, 2026 | 05 Mins read

A regional bank with $12 billion in assets wanted to use machine learning to improve its commercial loan underwriting process. The existing process was manual, relying on credit analysts who spent fou

The $2M model that never made it to production
The $2M model that never made it to production
09 Jun, 2026 | 05 Mins read

A retail chain with 400 stores spent two years and $2.1 million building an inventory optimisation model. The model was technically excellent. It reduced predicted stockouts by thirty-two percent and

Data mesh in practice: year 2 retrospective
Data mesh in practice: year 2 retrospective
16 Jun, 2026 | 05 Mins read

An insurance company with $400 million in premium volume adopted data mesh two years ago. The central data team had become a bottleneck. Every business unit (claims, underwriting, actuarial, and distr

When your AI vendor goes bankrupt: surviving platform lock-in
When your AI vendor goes bankrupt: surviving platform lock-in
23 Jun, 2026 | 05 Mins read

A healthcare analytics company received notice on a Tuesday afternoon that their primary AI infrastructure vendor was filing for Chapter 7 bankruptcy. The platform hosted their patient risk stratifica

Consolidating 47 data sources into one knowledge layer
Consolidating 47 data sources into one knowledge layer
01 Jul, 2026 | 05 Mins read

A global professional services firm with 8,000 consultants maintained institutional knowledge across forty-seven separate systems. Project proposals lived in a document management system. Client engag

Real-time fraud detection: from proof-of-concept to production in 90 days
Real-time fraud detection: from proof-of-concept to production in 90 days
30 Jun, 2026 | 05 Mins read

A payment processor handling twelve million transactions per day had a fraud detection system that was accurate but slow. The system reviewed transactions in batch, four times per day. A fraudulent tr

The GDPR audit that reshaped our entire ML pipeline
The GDPR audit that reshaped our entire ML pipeline
07 Jul, 2026 | 05 Mins read

A European fintech with twelve million customers received a GDPR audit notice from their national data protection authority. The audit focused on the company's machine learning pipeline, which powered

How a healthcare org deployed LLMs without violating HIPAA
How a healthcare org deployed LLMs without violating HIPAA
14 Jul, 2026 | 05 Mins read

A hospital system with twelve facilities and 14,000 clinical staff wanted to use large language models to assist with clinical documentation. Physicians spent an average of two hours per day on docume

Legacy mainframe to cloud-native: the data migration they said was impossible
Legacy mainframe to cloud-native: the data migration they said was impossible
21 Jul, 2026 | 06 Mins read

An insurance company running on an IBM mainframe had accumulated forty years of policy data in VSAM files and DB2 tables. The mainframe processed 600,000 transactions per day across policy administrat

Building trust in AI recommendations: the change management story
Building trust in AI recommendations: the change management story
28 Jul, 2026 | 06 Mins read

A consumer goods company built an AI system that recommended reorder quantities for 12,000 SKUs across 340 distribution points. The system optimised for a multi-objective function that balanced invent

When the model was right but nobody believed it
When the model was right but nobody believed it
04 Aug, 2026 | 05 Mins read

An agriculture technology company built a crop yield prediction model that combined satellite imagery, soil sensor data, weather forecasts, and historical yield records. The model predicted per-field

Scaling a recommendation engine from 1K to 10M users
Scaling a recommendation engine from 1K to 10M users
11 Aug, 2026 | 06 Mins read

A video streaming platform grew from 1,000 beta users to 10 million subscribers over thirty months. Their recommendation system was rebuilt three times during this period. Each rebuild was triggered n

Real-time pricing engine: from batch overnight to sub-second
Real-time pricing engine: from batch overnight to sub-second
19 Aug, 2026 | 05 Mins read

An online travel agency processed 2.3 million flight searches per day. Each search triggered a pricing computation that determined the displayed fare for every matching itinerary. The pricing computat

The data catalogue project that actually stuck: 18 months later
The data catalogue project that actually stuck: 18 months later
25 Aug, 2026 | 07 Mins read

Most data catalogue projects die within six months. The tool gets purchased, a team populates it with metadata for a few hundred tables, enthusiasm fades, and twelve months later the catalogue is a st

Replatforming a decade of analytics from Oracle to Snowflake
Replatforming a decade of analytics from Oracle to Snowflake
01 Sep, 2026 | 07 Mins read

Ten years of analytics built on Oracle means ten years of accumulated PL/SQL, materialised views, database links, stored procedures, and ETL jobs that nobody fully understands. The schema has four hun

How a logistics company predicted delivery failures before they happened
How a logistics company predicted delivery failures before they happened
08 Sep, 2026 | 06 Mins read

A regional logistics company running three thousand deliveries per day across a six-state territory had a late-delivery rate of fourteen percent. The cost of a late delivery was not just the apology.

When the CDO and CTO disagreed on AI strategy, and what happened
When the CDO and CTO disagreed on AI strategy, and what happened
15 Sep, 2026 | 06 Mins read

At a mid-market insurance company with eight thousand employees, the Chief Data Officer and the Chief Technology Officer had fundamentally different views on how AI should be adopted. The CDO believed

Building a customer 360 from 12 disconnected CRM systems
Building a customer 360 from 12 disconnected CRM systems
16 Sep, 2026 | 07 Mins read

A healthcare conglomerate grew through acquisition for fifteen years. Each acquisition brought its own CRM. Salesforce in three divisions. Microsoft Dynamics in two. HubSpot in one. A custom-built CRM

The ML model that predicted churn but couldn't explain why
The ML model that predicted churn but couldn't explain why
22 Sep, 2026 | 06 Mins read

A subscription media company with 1.2 million subscribers built a machine learning model to predict churn. The model worked. It identified at-risk subscribers with seventy-nine percent precision and e

An insurance firm's journey from PDF extraction to automated underwriting
An insurance firm's journey from PDF extraction to automated underwriting
29 Sep, 2026 | 06 Mins read

A specialty insurance firm underwriting commercial property policies received submission packets as PDF documents. Each packet contained an ACORD application, loss runs from prior carriers, a statemen

How we reduced cloud data spend 40% without cutting features
How we reduced cloud data spend 40% without cutting features
06 Oct, 2026 | 06 Mins read

A media analytics company running its entire data platform on AWS was spending $480,000 per month on cloud infrastructure. The bill had grown organically over three years as the platform expanded from

Case Study: End-to-End RAG Platform for Customer Support
Case Study: End-to-End RAG Platform for Customer Support
05 Dec, 2025 | 05 Mins read

A SaaS company with 200 support agents and 10,000+ knowledge base articles had an 18-hour average response time and 23% first-contact resolution. Their largest enterprise client threatened to cancel a

Designing the Enterprise Knowledge Layer: Beyond RAG
Designing the Enterprise Knowledge Layer: Beyond RAG
16 Jan, 2026 | 14 Mins read

Most teams implement retrieval-augmented generation and call it a knowledge layer. Give the model access to a vector database, stuff in some documents, and ship. This approach works for demos. It fall

Case Study: Building a Production AI Knowledge Layer for Financial Services
Case Study: Building a Production AI Knowledge Layer for Financial Services
01 Mar, 2026 | 10 Mins read

A regional bank's investment research team spent 60% of their time gathering information and 40% doing analysis. Analysts had to search through regulatory filings, internal research memos, market data

Case Study: Multi-Agent System for Supply Chain Optimisation
Case Study: Multi-Agent System for Supply Chain Optimisation
13 Jun, 2026 | 12 Mins read

A mid-size automotive parts manufacturer with operations spanning 15 countries and relationships with over 200 suppliers faced a supply chain coordination problem that was consuming too much of their

Knowledge Graphs and Vector Search: Complementary, Not Competitive
Knowledge Graphs and Vector Search: Complementary, Not Competitive
19 Apr, 2026 | 11 Mins read

The framing of knowledge graphs versus vector databases as competing technologies is a symptom of hype cycles that simplify complex architectural decisions for public discourse. Practitioners argue ab