User 0261d34ad7
04-10-2012 09:09:06
Hi,
I think I've found a bug in the behaviour of the ValencePropertyChecker or RemoveValencePropertyFixer classes, would you mind confirming that this really is a bug? If not, any insight into the expected behaviour is appreciated.
We're using the StructureChecker class from Java, with the following XML configuration:
<checkers>
<ValencePropertyChecker name="property" fixMode="do_not_fix" fixerClassName="chemaxon.fixers.RemoveValencePropertyFixer" defaultValence="false" nonDefaultValence="true"/>
</checkers>
To invoke the fixer, we're using CheckerRunner to get a list of StructureCheckerResult objects, then calling fix(..) on the CheckerRunner with each result returned.
However we're observing that the call to fix always returns false for this particular configuration, even when the molecule has been changed. This is a problem because our code uses the boolean response as part of structure processing. As it stands, we can't tell if the molecule has changed or not...and whether the resulting molecule is good.
We've worked around this for now by ignoring the return value for this particular fixer, but it's not the preferred solution.
A couple of other things to mention:
- Other fixers return true / false which we use as a way of telling if structures have been corrected
- Our chemical expert (Andrew) says the ValenceErrorChecker performs better when the ValencePropertyChecker has been applied first
- do_not_fix in the configuration doesn't seem to be used, but we're assuming it's for the ChemAxon UI components
It would also be greatly appreciated if you have any documentation on these structure checking components, and the correct way to use them to detect valence errors.
Any help appreciated,
Jim