Andrew, Thanks for reminding me about the "X" specification. You're absolutely right, that's the way to do it. I'd forgotten about "X", which Daylight introduced specifically because of the problems with the "D" notation.
If we ever get around to an OpenSMARTS specification, I think the "D" should be highly discouraged. But that's a topic for another day... Craig Andrew Dalke wrote: > On Oct 29, 2009, at 6:33 PM, Craig A. James wrote: >> 1. The "D" or "degree" in SMARTS >> >> [#6D2] is supposed to mean a a carbon atom with two bonds. > > I disagree. The SMARTS documentation at > http://www.daylight.com/dayhtml/doc/theory/theory.smarts.html > says > > D<n> - degree - <n> explicit connections > > What you described is exactly what it's supposed to be. > >> This makes it very hard to write sensible SMARTS that define >> aromaticity. I'm planning to abandon the "D" notation, and instead >> use pairs of rules like this: >> >> [#6r](~...@*)(~...@*)~* 1 1 >> [#6rH1](~...@*)~...@* 1 1 > > Why not use the X notation? > > X<n> - connectivity - <n> total connections > > > The example there shows > > [D3] atom with 3 explicit bonds (implicit H's don't count) > [X3] atom with 3 total bonds (includes implicit H's) > > >> For OpenBabel 3, we should clarify the definition of "D" in SMARTS >> so that it either does or does not include bonds to H atoms, >> regardless of whether the H are represented implicitely or >> explicitely in the internal C++ structures. > > That was done with Daylight v4.3 (according to the footnote) so in in > about '93 or '94. ------------------------------------------------------------------------------ Come build with us! The BlackBerry(R) Developer Conference in SF, CA is the only developer event you need to attend this year. Jumpstart your developing skills, take BlackBerry mobile applications to market and stay ahead of the curve. Join us from November 9 - 12, 2009. Register now! http://p.sf.net/sfu/devconference _______________________________________________ OpenBabel-Devel mailing list OpenBabel-Devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-devel