Мы не будем рассматривать простые ошибки, такие как несоответствие типов, различия в форматах ввода и кодировках. Т.е. случаи, когда информация поступает из нескольких источников, где для обозначения одного и того же факта приняты различные соглашения.
Характерный пример такой ошибки — обозначение пола человека. Где-то он обозначается как М/Ж, где-то как 1/0, где-то как True/false. С такого рода ошибками борются при помощи задания правил перекодировки и приведения типов, поэтому они решаются относительно легко. Нас интересуют более сложные проблемы, которые не решаются элементарными способами.
Типов сложных ошибок довольно много. Помимо универсальных, существуют ошибки, характерные только для какой-то конкретной предметной области или задачи. Но давайте рассмотрим такие, которые не зависят от задачи: