User 3afdb4ab90
08-11-2012 19:35:21
It is importatn for us to have a robust cartridge method to validate SMILES. We need a method that follows strict rules (even if they are unique to ChemAxon and not others' ideas of SMILES) and one that NEVER throws an exception. I cannot find such a method in the JChem cartridge. Here are some examples of expected, unexpected and unacceptable behaviour.
These two examples work as expected:
select jc_evaluate_x('CCOC', 'chemTerms:check("smiles..aromaticity..valence")') from dual; returns "passed"
select jc_evaluate_x('CCOC(C)(F)(Cl)(Br)', 'chemTerms:check("smiles..aromaticity..valence")') from dual; returns "failed"
These were expected to return "failed", but both returned "passed".
select jc_evaluate_x('CCO[CH4]', 'chemTerms:check("smiles..aromaticity..valence")') from dual;
select jc_evaluate_x('junk', 'chemTerms:check("smiles..aromaticity..valence")') from dual;
This one throws an exception:
select jc_evaluate_x('xjunk', 'chemTerms:check("smiles..aromaticity..valence")') from dual;
I also cannot find a description of the available configurations for isValid after following the link " Please, see
the isValid
Evaluator functions for creating configurations" on this page http://www.chemaxon.com/jchem/doc/dev/cartridge/cartapi.html#jc_evaluate_x_check_0_eg
Thanks,
TJ O'Donnell