mojaie / MolecularGraph.jl

Graph-based molecule modeling toolkit for cheminformatics
MIT License
189 stars 27 forks source link

Make GraphMol extend AbstractGraph? #79

Closed eahenle closed 1 year ago

eahenle commented 1 year ago

The functionality throughout the JuliaGraphs ecosystem is quite robust. It would be awesome if MolecularGraph were part of it. This would allow directly plugging GraphMol objects into workflows built for other graph types, without first having to restructure the GraphMol to MetaGraph.

mojaie commented 1 year ago

I had the idea of making it a common interface with general graph modules like LightGraphs.jl previously, but I did not now how stable the development would be, so It was suspended. I would like to consider to do so if there is always common interface of graph model. Thank you for your suggestion!

You can see PlainGraph in the src/graph/plaingraph.jl, This is a mock(?) object of common graph interface and is used for many unit tests of simple graph operations that are not related to molecule properties.

mojaie commented 1 year ago

src/graph/interface.jl is the common interface for graph objects. Maybe we can make some methods like adjacencies(graph::SomeGraph) to use other general and robust graph models and algorithms.

Or, I dont know well about JuliaGraph, but if there is always well-established common interface, MolecularGraph models also should follow them. Because of examples like LightGraph, I am always cautious about the sustainability of development and stability of specifications.

mojaie commented 1 year ago

moved to #81