Stereo specific search options

In this document the stereo search options are summarized and their usage is shown in different search interfaces.

Absolute stereo (ignore chiral flag)

Sets whether a chiral flag should be ignored or not.

Query

Absolute stereo

(query)

Target

Absolute stereo

(target)

Hit

images/download/attachments/1806773/enantiomerS.png

Yes

images/download/attachments/1806773/enantiomerR.png

Yes

images/download/attachments/1806773/no.png

images/download/attachments/1806773/enantiomerS.png

No

images/download/attachments/1806773/enantiomerR.png

No

images/download/attachments/1806773/yes.png

MolSearch API
MolSearchOptions searchOptions = new MolSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setQueryAbsoluteStereo( true / false );
searchOptions.setTargetAbsoluteStereo
( true / false );
// ...
MolSearch searcher = new MolSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is true for both options.
JChemSearch API
JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setAbsoluteStereo( SearchConstants.ABS_STEREO_TABLE_OPTION /
SearchConstants.ABS_STEREO_CHIRAL_FLAG / SearchConstants.ABS_STEREO_ALWAYS_ON );
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is SearchConstants.ABS_STEREO_TABLE_OPTION.
JChem Oracle Cartridge
Use the jc_compare operator with absoluteStereo:t/c/a option, where:
 
t: (default) do as configured for the table in case of JChem tables or as configured for the index in case of non-JChem tables
c: consider chiral flag
a: all chiral atoms are absolute
 
Example: SELECT count(*) FROM nci_150k WHERE jc_compare(structure, 'Brc1ccccc1', 't:s absoluteStereo:c') = 1;
jcsearch command line tool
Use the following command line parameters for memory search:
 
--queryAbsoluteStereo:y/n (default: y);
--targetAbsoluteStereo:y/n (default: y);
 
while database search accepts the following parameter:
 
--DBAbsoluteStereo:T/C/A, where:
T (default): as set for table in database;
C: always check chiral flag (false);
A: always absolute stereo (true).

Double bond stereo: no check / marked / all double bonds

Sets how double bond cis/trans stereo information should match during the search.

  • No check: No double bond cis/trans is considered.

  • Marked: (Default) Double bond cis/trans stereo is checked for double bonds designated by the stereo search flag only. However, for queries coming from the Daylight formats family, all double bonds are considered which have specified stereo configuration. See the matching differences between different formats.

  • All: All double bonds are checked for cis/trans stereo matching.

Target

Query

Option

images/download/attachments/1806773/doublebondEE.png

images/download/attachments/1806773/doublebondZZ.png

images/download/attachments/1806773/doublebondEZ.png

images/download/attachments/1806773/doublebondEE.png

No check

images/download/attachments/1806773/yes.png

images/download/attachments/1806773/yes.png

images/download/attachments/1806773/yes.png

images/download/attachments/1806773/doublebondMarked.png

Marked

images/download/attachments/1806773/yes.png

images/download/attachments/1806773/no.png

images/download/attachments/1806773/yes.png

images/download/attachments/1806773/doublebondEE.png

All

images/download/attachments/1806773/yes.png

images/download/attachments/1806773/no.png

images/download/attachments/1806773/no.png

MolSearch API
MolSearchOptions searchOptions = new MolSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setDoubleBondStereoMatchingMode( StereoConstants.DBS_NONE /
StereoConstants.DBS_MARKED / StereoConstants.DBS_ALL );
// ...
MolSearch searcher = new MolSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is StereoConstants.DBS_MARKED
JChemSearch API
JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setDoubleBondStereoMatchingMode( StereoConstants.DBS_NONE /
StereoConstantsDBS_MARKED / StereoConstants.DBS_ALL );
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is StereoConstants.DBS_MARKED
JChem Oracle Cartridge
Use the jc_compare operator doubleBondStereo:N/M/A, where:
 
N: none;
M: marked (default);
A: all.
 
Example:
 
SELECT count(*) FROM nci_150k WHERE jc_compare(structure, 'Brc1ccccc1', 't:s doubleBondStereo:A') = 1;
jcsearch command line tool
Use the following command line parameter:
--doubleBondStereo:N/M/A
 
N: none;
M: marked (default);
A: all.

Ignore cumulene or ring cis-trans stereo

Sets ignoring cumulene or ring cis-trans stereo information during serching.

MolSearch API
MolSearchOptions searchOptions = new MolSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setIgnoreCumuleneOrRingCisTransStereo( true / false );
// ...
MolSearch searcher = new MolSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is true.
JChemSearch API
JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setIgnoreCumuleneOrRingCisTransStereo( true / false );
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is true.
JChem Oracle Cartridge
Use the jc_compare operator ignoreCumuleneOrRingCisTransStereo:y/n where:
 
y: yes (default);
n: no
jcsearch command line tool
Use the following command line parameter:
 
--ignoreCumuleneOrRingCisTransStereo:y/n
 
y: yes (default);
n: no.

Ignore axial stereo

Sets ignoring axial stereo information during searching.

MolSearch API
MolSearchOptions searchOptions = new MolSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setIgnoreAxialStereo( true / false );
// ...
MolSearch searcher = new MolSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is true.
JChemSearch API
JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setIgnoreAxialStereo( true / false );
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is true.
JChem Oracle Cartridge
Use the jc_compare operator ignoreAxialStereo:y/n where:
 
y: yes (default);
n: no
jcsearch command line tool
Use the following command line parameter:
 
--ignoreAxialStereo:y/n
 
y: yes (default);
n: no.

Ignore double bond stereo

Sets ignoring double bond stereo information during searching. If this option is set (true) double bond stereo information is ignored and setStereoSearchType(int) only specifies tetrahedral stereo matching.

MolSearch API
MolSearchOptions searchOptions = new MolSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setIgnoreDoubleBondStereo( true / false );
// ...
MolSearch searcher = new MolSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is false.
JChemSearch API
JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setIgnoreDoubleBondStereo( true / false );
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is false.
JChem Oracle Cartridge
Use the jc_compare operator ignoreDoubleBondStereo:y/n where:
 
y: yes;
n: no (default)
jcsearch command line tool
Use the following command line parameter:
--ignoreDoubleBondStereo:y/n
 
y: yes;
n: no (default).

Ignore syn-anti stereo

Sets ignoring syn-anti stereo information during searching.

MolSearch API
MolSearchOptions searchOptions = new MolSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setIgnoreSynAntiStereo( true / false );
// ...
MolSearch searcher = new MolSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is true.
JChemSearch API
JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setIgnoreSynAntiStereo( true / false );
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is true. .
JChem Oracle Cartridge
Use the jc_compare operator ignoreSynAntiStereo:y/n where:
 
y: yes (default);
n: no
jcsearch command line tool
Use the following command line parameter:
 
--ignoreSynAntiStereo:y/n
 
y: yes (default);
n: no

Ignore tetrahedral stereo

Sets ignoring tetrahedral stereo information during searching. If this option is set (true) tetrahedral stereo information is ignored and setStereoSearchType(int) only specifies double bond stereo matching.

MolSearch API
MolSearchOptions searchOptions = new MolSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setIgnoreTetrahedralStereo( true / false );
// ...
MolSearch searcher = new MolSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is false.
JChemSearch API
JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setIgnoreTetrahedralStereo( true / false );
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is false.
JChem Oracle Cartridge
Use the jc_compare operator ignoreTetrahedralStereo:y/n where:
 
y: yes ;
n: no (default)
jcsearch command line tool
Use the following command line parameter:
--ignoreTetrahedralStereo:y/n
 
y: yes;
n: no (default).

Stereo search type

Specifies the way stereo information is considered during searching. (setStereoModel(int) specifies the model for calculating the stereo information.)

  • Stereospecific (default in case of search types other than duplicate): When the query does not contain stereo information, the hits will include results both with and without stereo information. Otherwise, the stereo information is taken into account during the search.

  • Ignore stereo: All stereo information is ignored.

  • Exact stereo (default in case of duplicate search): All stereo information is tested for equality, meaning that a non-stereo query only matches non-stereo targets and enhanced stereo groups can't match on absolute stereo atoms.

  • Diastereomer stereo : Retrieves stereoisomers where tetrahedral stereo information is present on the same stereo centers, but their configuration (parity) is arbitrary.

  • Enantiomer stereo: Retrieves the given query stereo configuration and its enantiomer as well.

MolSearch API
MolSearchOptions searchOptions = new MolSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setStereoSearchType( SearchConstants.STEREO_SPECIFIC /
SearchConstants.STEREO_IGNORE / SearchConstants.STEREO_EXACT /
SearchConstants.STEREO_DIASTEREOMER / SearchConstants.STEREO_ENANTIOMER );
// ...
MolSearch searcher = new MolSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is SearchConstants.STEREO_SPECIFIC.
JChemSearch API
JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setStereoSearchType( SearchConstants.STEREO_SPECIFIC /
SearchConstants.STEREO_IGNORE / SearchConstants.STEREO_EXACT /
SearchConstants.STEREO_DIASTEREOMER / SearchConstants.STEREO_ENANTIOMER );
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is SearchConstants.STEREO_SPECIFIC.
JChem Oracle Cartridge
Use the jc_compare operator with stereoSearchType:s/i/e/d/a
 
s: stereospecific (default);
i: ignore stereo;
e: exact stereo;
d: diastereomer stereo;
a: enantomer stereo;
 
Example:
SELECT count(*) FROM nci_150k WHERE jc_compare(structure, 'Brc1ccccc1', 't:s exactStereoMatching:y') = 1;
jcsearch command line tool
Use the following command line parameter:
--stereoSearchType:s/i/e/d/a
 
s: stereospecific (default);
i: ignore stereo;
e: exact stereo;
d: diastereomer stereo;
a: enantomer stereo;

Stereo model

Sets stereo model option. Stereo models describe search strategies in cases of molecules with defined stereochemistry. See details and examples...

  • Local: Default for markush search in all cases and for non-markush duplicate search in query tables.

  • Global: Default for non-markush duplicate search (with the exception of query tables).

  • Comprehensive: Default otherwise

MolSearch API
MolSearchOptions searchOptions = new MolSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setStereoModel( SearchConstants.STEREO_MODEL_LOCAL /
SearchConstants.STEREO_MODEL_COMPREHENSIVE / SearchConstants.STEREO_MODEL_GLOBAL /
SearchConstants.STEREO_MODEL_DEFAULT );
// ...
MolSearch searcher = new MolSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is SearchConstants.STEREO_MODEL_DEFAULT, whose actual behavior depends on the search type. For substructure and superstructure searches, it equals to SearchConstants.STEREO_MODEL_COMPREHENSIVE, while for other searches, it usually equals to SearchConstants.STEREO_MODEL_GLOBAL.
JChemSearch API
JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setStereoModel( SearchConstants.STEREO_MODEL_LOCAL /
SearchConstants.STEREO_MODEL_COMPREHENSIVE / SearchConstants.STEREO_MODEL_GLOBAL /
SearchConstants.STEREO_MODEL_DEFAULT );
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);
 
Default value is SearchConstants.STEREO_MODEL_DEFAULT, whose actual behavior depends on the search type and the type of the structure table. For substructure and superstructure searches, it equals to SearchConstants.STEREO_MODEL_COMPREHENSIVE, while for other searches, it usually equals to SearchConstants.STEREO_MODEL_GLOBAL.
JChem Oracle Cartridge
Use the jc_compare operator with stereoModel:l/g/c
 
l: local stereo model;
g: global stereo model;
c: comprehensive stereo model;
jcsearch command line tool
Use the following command line parameter:
--stereoModel:d/l/g/c
 
d: default;
l: local;
g: global;
c: comprehensive.