Bingo. The first spec was to extract READ codes, for example "C10" means diabetes, and “C10E012” means Insulin-dependent diabetes mellitus with renal complications. So a simple find all the patients with C10 means tell me who all the diabetics are.
Then it turned into queries being written as "business rules" which somehow the extraction system had to turn into something that could actually search against these read codes.
Then another part of the NHS decided to migrate from READ codes to SMOMED CT codes in GP land. This is ongoing and should finish by 2016 or 2020 depending on which document you read.
So, from a simple "extract the READ codes" system that would run queries a bit like SQL against 4 different supplier "databases" we have moved to a system that is supposed to interpret "business rules", convert them into READ and SNOMED CT codes (at the same time) and run that against four different underlying "databases" then convert the results back into "business rules".
Whilst ATOS are not entirely to blame here, I don't think the HSCIC (and their forerunners Connecting for Health) can really say it's all ATOS' fault.