Case study · Knowledge graphs

Connecting maintenance history, sensors and drawings so engineers can find root causes faster

Maintenance history in one system, sensor data in another, drawings and procedures in a document store. Every root-cause investigation started with an engineer stitching them together by hand. The goal was one asset knowledge graph that linked them, with an assistant that answers questions and shows its working.

Case studyEnergy · Asset-intensive operationsSumanta Mukhopadhyay8 min read
#ontology#knowledge-graph#data#ai#llm#architecture
CASE STUDY · CASE STUDY · KNOWLEDGE GRAPHS28 Oct 2026 · 01:32 GST
At a glance
SectorEnergy · Asset-intensive operations
My rolePrincipal architect, knowledge graphs and AI
EngagementArchitecture, ontology design and build
ScopeAsset ontology, entity resolution, graph platform, time series links, engineer assistant
What changed
  • One connected view of each asset: hierarchy, failures, work orders, sensors and documents
  • Investigations start from a linked history instead of manual cross-referencing
  • Answers from the assistant cite the work orders, readings and drawings they rely on
  • A shared asset vocabulary that engineering, reliability and data teams maintain together
RDF / OWL ontologySHACLW3C SOSA/SSNGraph databaseTime series storeApache IcebergGraphRAGLLM with tool calls

Anonymised composite. Client names, identifying details and confidential figures are withheld; public facts are cited in the references.

The situation

An energy operator ran a large estate of rotating equipment, vessels, pipework and instrumentation. When something failed, the reliability team asked the obvious questions: has this happened before, on this unit or on similar ones, what did the sensors show beforehand, and what did we change last time? Answering meant searching the maintenance system, exporting historian trends, finding the right revision of a drawing and reading free-text work order notes. Each investigation rebuilt the same picture from scratch.

The data existed. The connections between it did not.

What had to be true

  • One identity per asset, reconciled across the register, the maintenance system, tag lists and documents.
  • A shared vocabulary for equipment classes, failure modes and maintenance actions, so "similar assets" and "same failure" mean something consistent.
  • Systems of record untouched: link to them, don't replace them.
  • Answers with evidence, because engineers will not act on an unexplained answer.
  • Owned by the business: reliability engineers, not just the data team, maintain the model.

Architecture

The ontology borrowed its structure from ISO 14224, which organises reliability and maintenance data into equipment, failure and maintenance categories with a defined equipment taxonomy1. Sensor concepts followed the W3C and OGC Semantic Sensor Network ontology, with SOSA as its lightweight core2, rather than inventing our own model of observations.

Sources
Asset registerhierarchy, tagsMaintenance systemwork orders, notesHistoriansensor time seriesDocument storedrawings, procedures
Integrate
Entity resolutiontags, IDs, namesText extractionfailure modes from notesLakehouseIceberg tables
Model
Asset ontologyISO 14224 alignedSOSA/SSNsensors, observationsSHACL shapesvalidation rules
Graph
Knowledge graphassets, events, linksTime series pointersno bulk copiesDocument linksby revision
Use
Engineer assistantcited answersGraph queriesreliability analysisAlertsrepeat failures
Layered architecture: sources stay put; the graph holds identity, relationships and pointers.

Curated tables sat in Apache Iceberg, whose snapshot-based metadata gives versioned, reproducible inputs to every graph build5. See lakehouse catalog strategy and ontology vs knowledge graph vs semantic layer.

The data flow, end to end

  1. LandRegister, work orders and document metadata land as versioned tables
  2. ResolveMatch tags, IDs and names to one asset identity, with confidence scores
  3. ClassifyMap equipment classes and failure modes to the shared vocabulary
  4. ValidateSHACL shapes reject records that break the model before load
  5. LinkAttach sensor series and document revisions by reference
  6. AskEngineers query directly or through the assistant, with citations
Each graph build is reproducible from a known snapshot of the source tables.

SHACL let us express the rules ("every pump has exactly one parent system", "every work order references a resolved asset") as shapes that are validated on every build3. More in SHACL validation for knowledge graphs.

The hard part: deciding that two things are the same asset

Entity resolution took more effort than the graph itself. The same pump appeared under a tag number in the register, a slightly different tag in the maintenance system, a description in free-text notes and a drawing number in the document store. Some tags had been reused after equipment was replaced.

  • Deterministic rules first (exact tag matches within a site), probabilistic matching second.
  • Every match carries a confidence and a method, so low-confidence links are visible, not hidden.
  • A review queue where reliability engineers confirm or reject uncertain matches; their decisions train the rules.
  • Equipment replacement modelled explicitly, so history follows the functional location and the physical unit separately.

The patterns are described in entity resolution for knowledge graphs.

A knowledge graph is only as good as its identities. Spend the first weeks on what counts as "the same thing", not on the database.

How the engagement ran

Reliability engineers
  1. Bring real investigations
  2. Confirm uncertain matches
  3. Own failure mode vocabulary
Data team
  1. Land and version sources
  2. Run resolution and validation
  3. Publish graph builds
Assistant
  1. Translate question to queries
  2. Answer with citations
  3. Log questions it couldn't answer
Engineers own meaning; the data team owns pipelines; the assistant exposes gaps.
Phase 1Questions
  • Investigation walkthroughs
  • Source inventory
  • Competency questions
Phase 2Model
  • Asset ontology
  • SHACL shapes
  • One unit end to end
Phase 3Resolve and link
  • Entity resolution
  • Sensor and document links
  • Review queue
Phase 4Assist and hand off
  • Engineer assistant
  • Further units
  • Ownership model
Phased delivery: start from the questions engineers actually ask.

Key decisions and trade-offs

DecisionAlternativeWhy
Align to ISO 14224 and SOSA/SSNBespoke modelRecognised structure; easier to extend and explain
Pointers to time seriesCopy readings into the graphGraphs are poor at high-volume time series
SHACL validation on every buildTrust the sourcesBreakages caught before engineers see them
Graph-first retrieval for the assistantVector search over documents onlyQuestions are about relationships, not just text
Human review of uncertain matchesFully automatic resolutionWrong links destroy trust faster than missing ones

The assistant combined graph traversal with document retrieval. GraphRAG research shows graph-based indexes help with broad, corpus-level questions that plain vector retrieval handles poorly4; here the graph already existed, so retrieval followed its edges. See when GraphRAG beats vector RAG.

What I'd do again, and differently

Again: write competency questions with engineers before modelling anything, and make every link explainable. Differently: put the review queue in front of engineers sooner. Their corrections improved resolution more than any tuning we did.

If you're connecting operational data like this, the ontology and knowledge graph page describes how I run these engagements, or analyse your challenge and bring the result to a call.

References
  1. 1
  2. 2
  3. 3
    Shapes Constraint Language (SHACL)W3C Recommendation · 20 Jul 2017
  4. 4
  5. 5
    Iceberg Table SpecApache Iceberg
FAQ

Common questions

Why use a knowledge graph for asset data?

Asset questions are about relationships: which components sit in which system, which work orders touched them, which sensors watch them and which drawings describe them. A graph stores those relationships directly, so they can be queried and traversed instead of rebuilt by hand.

Is a knowledge graph a replacement for the CMMS or historian?

No. The systems of record stay where they are. The graph holds identifiers, relationships and summaries, and links back to the source systems for detail and high-volume time series.

Where does an LLM fit?

As an interface. The assistant translates questions into graph and time series queries, then answers with citations to the records it used, so engineers can check the evidence.

Keep reading

Related

Open to advisory, fractional CTO & select builds

Let's talk about what you're building.

The fastest route is a free 30-minute call. Prefer to write? Send a message and I'll reply personally within two business days.

Start a conversation

How would you like to reach me?

Book a 30-min callFastest. Pick any open slot on my calendar.→ Write in GmailOpens a pre-filled draft in your browser.→ Use my email appOutlook, Apple Mail or your default client.→

I reply personally within two business days. Time zones from the Americas and Europe to the Middle East and Asia-Pacific.