What is Truth?
Pontius Pilate, of biblical fame, asked the question “Quid est veritas?” - “What is truth?”. It was asked in response to Jesus’ claim that he was “witness to the truth”.

In data, we talk about truth a lot - particularly in the context of ontological truth. We are seeking a single source of truth (SSOT) - which is often a single enterprise wide ontology, or a single enterprise data model. The reality is that there are truths, rather than a single truth.
What is Truth?
Truth is a concept that has been debated for millennia. It is a concept that is often associated with philosophy, but it is also a concept that is relevant to data and systems. In the context of data, truth is often seen as a binary concept - something is either true or false. But the reality is that truth is much more complex than that.
Within data, as in systems, there are facts. This event happened. This number is that. This entity has that attribute, etc. But facts are not the same as truth. Facts are often seen as objective and unchanging, but even facts are often subjective and context dependent. A fact is only a fact in a certain context. For example, the fact that “the sky is blue” is only true in certain contexts - such as during the day when there are no clouds. In other contexts, such as at night or during a storm, the fact may not be true.
This is where the concept of truth becomes more complex. Truth is not just about facts, but also about context. Truth is about the relationship between facts and the context in which they are used. This is where the concept of ontological truth comes into play.
Ontological truth is the idea that there is a single, objective reality that exists independently of our perceptions and beliefs. The ultimate truth. But, like facts, ontological truth is often subjective and context dependent. What is true in one context may not be true in another context. Ontological truth is constructed of multiple perspectives, experiences, and interpretations that shape our understanding of what is true in various contexts.
This is my truth, tell me yours
Within data, we like to conceptually model the businesses in which we work. We create ontologies and data models that represent the business and its processes. Through conceptual modelling, we are able to create a shared understanding of the business and the concepts that are important to it.
John Giles, in his book “The Nimble Elephant”, talks about the importance of conceptual modelling in creating a shared understanding of the business. He argues that conceptual modelling is not just about creating a model, but also about creating a shared understanding of a concept - and getting to a truth of that concept. The example he gives is of a train. What is a train?
- A train is a vehicle that runs on tracks and is used to transport people and goods.
- A train is made up of rolling stock, which includes locomotives and carriages.
- A train is a scheduled service that runs on a timetable.
- A train is a specific scheduled service.
- A train is a marketing concept.
- A train is a service that is provided by a company.
Here we have multiple perspectives on what a train is. Each perspective is valid in its own context, but they are not the same, despite all being true.
Another example I have is from when I was working with a health insurance company. I asked the question “What is a customer?”. Expecting a customer to be someone or something that buys a product or service. For the policy administration team, a customer fit that description neatly. For the customer service team, a customer was anyone listed on the policy (the life that was insured) - they didn’t buy a product or service, but they did use the service. In the separate contexts of the two teams, both were true. Together, they were not true. The truth of a customer was a composite of the two perspectives.
The Implications
If we accept that truth is not a binary concept, but rather a complex and context dependent concept, then we need to rethink how we approach data and systems. We need to embrace the idea that there are multiple truths, rather than a single truth. This means that we need to be more flexible in our thinking and more open to different perspectives.
When we create our ontologies and design our systems, we need to build in the ability to accommodate multiple “truths”. This means that we need to be able to represent different perspectives and different contexts in our systems and caveat that the definition of a concept is context dependent. This is not an easy task, but it is an important one. We need to be able to represent the complexity of truth in our systems, rather than trying to simplify it into a single truth - which, ironically, obscures the truth.
The best way to manage this divergence of truth is through data governance and documentation. By documenting the different perspectives and contexts in which a concept is used, we can create the ability to accept multiple truths. Through governance, we can create a framework for delineating the different perspectives and contexts in which a concept is used - so that users can use a truth in the context in which it is relevant.
Conclusion
Pilate might have asked the question, but he didn’t stay for an answer.
Truth.
It’s messy.
It’s complex.
It’s not singular either. It is a composite of multiple perspectives. Embracing this complexity is important for our systems, so that they become a more accurate representation of the world in which we live.