In running a large number (ca 1000) molecules through
CDK to generate bond orders we found that most did
not have the required number of double bonds and
some were misplaced.
We start from molecules with an exact number of
explicit hydrogen atoms (in CML) and bond orders set to
1(or S). We then convert to CDK, adjust bond orders
and return. The result for allopurinol is attached.
(I can't say exactly what version of CDK bbut it's before