Result should be empty:
String smirks = "[#6:4]@-[#6;!$(C1(=O)C=CC(=O)C=C1)!$(C(=O)CC=O):1](@-[#6:2])=[O:5]>>[#6:2]@-[#8]@-[#6:1](@-[#6:4])=[O:5]";
String smi = "COc1cc(O)c2c(c1)oc(cc2=O)-c1ccc(O)cc1";
On the other hand, for these targets the result is as expected:
smi = "O=C1CCOC=C1";
smi = "O=c1ccocc1";
smi = "O=C1C=COC=C1";
more explicitly: "O=C1CCOC=C1" is a target, the other two "O=c1ccocc1" and "O=C1C=COC=C1" are not triggering a reaction.
after changeing the '@-' bonds to '@-!:' aromatic rings are not a target anymore - but non ring molecules are:
Expected products: none
Related
Bugs:
#8Indeed, this bond
must not match non-ring bonds.
The bug is fixed in snapshot: ambit2-smarts-3.0.3-20160630.051729-23.jar
Also working alternatives to this expression are:
The latter worked in the previous version as well.
Last edit: Nikolay Kochev 2016-06-30
Fixed in latest 3.0.3-SNAPSHOT