Re: [Open Babel] Open Babel in the browser

2013-06-07 Thread Dimitri Maziuk
On 2013-06-06 22:13, Geoffrey Hutchison wrote: Although I'm starting to think that json is such a simple format that it could do without a strict chemical specification. Getting json out of an OBMol is 5 lines of code My concern is the opposite. It's always easy to write to an arbitrary

Re: [Open Babel] Open Babel in the browser

2013-06-07 Thread Craig James
Regarding using JSON as a new file format... This discussion has focussed on the syntax of JSON, but completely overlooks the real problem with ALL chemical file formats: how do you handle all of the cases where a simple connection-table (ball and stick) doesn't capture reality? Things like

Re: [Open Babel] Open Babel in the browser

2013-06-07 Thread Craig James
On Thu, Jun 6, 2013 at 2:11 PM, Patrick Fuller patrickful...@gmail.comwrote: Tim, I think Dimitri's point is that all the references are implicitly defined by list indices, rather than explicit keys. For example, something like { atoms: { C1: { element: C, location: [

Re: [Open Babel] Open Babel in the browser

2013-06-07 Thread Patrick Fuller
If you're going to rely on positions within arrays, why not just do it the simple way? { smiles: [CCO], 2D: [1,1,2,2,3,3], 3D: [1,1,1,2,2,2,3,3,3] } Smiles are a great representation of molecules (especially with smarts/smirks regex), and, in cases where they can be used, I think they're the

Re: [Open Babel] Open Babel in the browser

2013-06-07 Thread Dimitri Maziuk
On 06/07/2013 12:25 PM, Patrick Fuller wrote: Geoff - Outside of some fairly minor issues, xml translates easily to json. Could the chemical xml specification just be translated to json? If you gloss over things like #[P]CDATA, (elt+), (#CDATA|(foo,bar,baz)), it's trivial. Except for

Re: [Open Babel] Open Babel in the browser

2013-06-07 Thread Patrick Fuller
I don't think we need to worry about the naming conventions of corner cases just yet. Taking something basic, ethane in cml molecule atomArray atom id=a1 elementType=C x3=0.229656 y3=0.720147 z3=-0.015085/ atom id=a2 elementType=C x3=-0.229656 y3=-0.720147 z3=0.015085/ /atomArray bondArray

Re: [Open Babel] Open Babel in the browser

2013-06-07 Thread Craig James
On Fri, Jun 7, 2013 at 10:25 AM, Patrick Fuller patrickful...@gmail.comwrote: A SMILES contains exactly the same information as the atom/bond lists in a much more compact form. If you want to avoid the aromaticity problem, just use Kekule form, which makes it virtually identical to any other

Re: [Open Babel] Open Babel in the browser

2013-06-07 Thread Patrick Fuller
Wow, that was a very insightful email. Thank you for writing it. Getting back to something actionable, what do you think about the idea of just translating the CML standard to json? Outside of some nuances, XML and JSON generally accomplish the same thing, so I would think that the chemical XML

Re: [Open Babel] Open Babel in the browser

2013-06-07 Thread Dimitri Maziuk
On 06/07/2013 01:45 PM, Craig James wrote: ... The CML project is one such (you might want to look at it for ideas), but it never got traction. XML is bad at tabular data. A table of x, y, x coordinates in properly formatted xml is at least twice as many bytes (x123.456/x uses as many bytes

Re: [Open Babel] Open Babel in the browser

2013-06-07 Thread Matt Swain
Hi, I think CML is definitely a useful starting point, however I think it would be a mistake to just translate everything across in a literal way. In particular, I think it's definitely worth thinking carefully about the different strengths of the XML and JSON formats (in both syntax and