In the UniversalIsomorphismTest, line 690 - 700, there is code checking for atom matching, after matching the bonds. It seems the IQueryBond instance is not supposed to be responsible for matching the atoms.
The "or" in line 696 seems to cause this problem when one of the atom is "Any".
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thanks for bringing this issue up again. In an OrderQueryBond, it should be checked that the bond order and the Atom objects are matching. At first I thought only the bond order has to match ...
I don't think the code section you described is the problem. The nodes
are constructed if bonds match either way, no matter in which order the
atoms are. There is no defined order for the Atom objects in a Bond object.
I made a fix to the arcConstructor that checks for matches of all atoms if the second AtomContainer is a QueryAtomContainer. This way, the correct order of the atoms of two connected bonds is checked.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Logged In: YES
user_id=743500
Originator: YES
The OrderQueryBond just checks for the correct order of the bonds. It does not check whether the connected atoms match. The behaviour is correct.
Logged In: YES
user_id=1769786
Originator: NO
In the UniversalIsomorphismTest, line 690 - 700, there is code checking for atom matching, after matching the bonds. It seems the IQueryBond instance is not supposed to be responsible for matching the atoms.
The "or" in line 696 seems to cause this problem when one of the atom is "Any".
Logged In: YES
user_id=743500
Originator: YES
Thanks for bringing this issue up again. In an OrderQueryBond, it should be checked that the bond order
and the Atom objects are matching. At first I thought only the bond order has to match ...
I don't think the code section you described is the problem. The nodes
are constructed if bonds match either way, no matter in which order the
atoms are. There is no defined order for the Atom objects in a Bond object.
I made a fix to the arcConstructor that checks for matches of all atoms if the second AtomContainer is a QueryAtomContainer. This way, the correct order of the atoms of two connected bonds is checked.