##### Page tree

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

### Homology narrow translation

This option relates to query-side homology handling. The homology narrow translation option can switch off special handling of homology groups, hence they can match the homology group of the same type only (e.g. alkyl on alkyl or chk). The option can have the following values:

Limitations:
• If homology narrow translation is allowed than query side homology against Markush targets is limited to those cases when Markush targets do not contain any other Markush features than the same homology group as the guery structure does.
• Properties of homology groups (e.g. LO, MID, HI on alkyl) are ignored when both the query and the target structure contains the homology group.
• Rgroups with more than two attachment points are not supported on the query side.
 Query Target Homology narrow translation None All
MolSearch API
        MolSearchOptions searchOptions = new MolSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setHomologyNarrowTranslation( HomologyTranslationOption.NONE /
HomologyTranslationOption.ALL / HomologyTranslationOption.MARKED );
// ...
MolSearch searcher = new MolSearch();        searcher.setSearchOptions(searchOptions);


Default value is HomologyTranslationOption.MARKED, but it is not implemented yet and works as HomologyTranslationOption.NONE.

JChemSearch API
        JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setHomologyNarrowTranslation( HomologyTranslationOption.NONE /
HomologyTranslationOption.ALL / HomologyTranslationOption.MARKED );
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);

Default value is HomologyTranslationOption.MARKED, but it is not implemented yet and works as HomologyTranslationOption.NONE.
JChem Oracle Cartridge

Use the jc_compare operator with homologyNarrowTranslation:n/a/m

jcsearch command line tool

Use the following command line parameter:

--homologyNarrowTranslation:n/a/m

See the availability of the option in further ChemAxon products:

Handling of target side homology groups is controlled by the homology broad translation option. If matching is switched off for a query atom, then this query atom can match homology atom only if it is the same homology atom. If matching is switched on for a query atom it matches homology group representing a larger set of structures. E.g. acyclic carbon atom can match alkyl or carbontree, an Fe atom can match transition metal or metal homology atom. Homology atoms can also match homology atoms covering a larger set of structures: carboalicyclyl can match cyclyl or xx. In this cases the query homology atom is a subset of the target homology atom. Subset rules can be seen here. Possible values for homology translation: The option can have the following vaules:
• ALL/a: all query atoms can match on broader homology atoms, if the properties of the group are fulfilled.
• MARKED/m: only the marked query atoms can match on broader homology groups. This option is not yet implemented it works as none.
• NONE/n: no query atoms can match on broader groups, they can only match if the query atom is a homology atom of the same group.
Default value is NONE. Further properties of translation NONE behavior:
• homology groups cannot match and cannot be matched by specific atoms or homology groups being a superset or a subset of the given group;
• homology groups can match pseudo atoms with alias name of the given group (e.g. chk matches alkyl);
• homology properties are ignored (alkyl,LO matches alkyl,HI).

 Query Target Homology broad translation None All
MolSearch API
        MolSearchOptions searchOptions = new MolSearchOptions(SearchConstants.SUBSTRUCTURE);
HomologyTranslationOption.ALL / HomologyTranslationOption.MARKED );
// ...
MolSearch searcher = new MolSearch();
searcher.setSearchOptions(searchOptions);

Default value is HomologyTranslationOption.MARKED, but it is not implemented yet and works as HomologyTranslationOption.NONE.
JChemSearch API
        JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
HomologyTranslationOption.ALL / HomologyTranslationOption.MARKED );
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);

Default value is HomologyTranslationOption.MARKED, but it is not implemented yet and works as HomologyTranslationOption.NONE.
JChem Oracle Cartridge
Use the jc_compare operator with homologyBroadTranslation:n/a/m
jcsearch command line tool

Use the following command line parameter:

--homologyBroadTranslation:n/a/m

See the availability of the option in further ChemAxon products:

### Markush search enable/disable

Sets whether targets containing Markush features should be treated as Markush libraries or not. True - if a target containing Markush features should be treated as Markush library. Default value is false.
MolSearch API
        MolSearchOptions searchOptions = new MolSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setMarkushEnabled( true / false );
// ...
MolSearch searcher = new MolSearch();
searcher.setSearchOptions(searchOptions);
JChemSearch API
Cannot be set. Depends on database table type.
JChem Oracle Cartridge
Not applicable.
jcsearch command line tool

Use the following command line parameter:

 --markush:n/y 

 Default value is n. 

See the availability of the option in further ChemAxon products:

### Complete homology groups

Sets if only complete structures should match on homology groups. See detailed explanation here.
MolSearch API
        MolSearchOptions searchOptions = new MolSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setCompleteHG( true / false );
// ...
MolSearch searcher = new MolSearch();
searcher.setSearchOptions(searchOptions);


Default value is true.

JChemSearch API
        JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setCompleteHG( true / false );
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);

Default value is true.
JChem Oracle Cartridge
jcsearch command line tool

Use the following command line parameter:

--completeHG:y/n 

See the availability of the option in further ChemAxon products:

### Markush screening

Specifies whether screening should be used in case of Markush search. Default value is true or y.
MolSearch API
Not applicable.
JChemSearch API
        JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setMarkushScreeningEnabled( true / false );
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);


Default value is true.

JChem Oracle Cartridge
Not applicable.
jcsearch command line tool

Use the following command line parameter:

 --markushScreening:y/n 

See the availability of the option in further ChemAxon products:

### Markush fingerprint screening

Specifies whether fingerprint screening should be used in case of Markush search. Default value is true.
MolSearch API
Not applicable.
JChemSearch API
        JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setMarkushFPScreeningEnabled( true / false );
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);

JChem Oracle Cartridge
Not applicable.
jcsearch command line tool
Not applicable

See the availability of the option in further ChemAxon products:

### Hit-index type

Sets the representation to use for hit indexes in case of Markush search.
MolSearch API
        MolSearchOptions searchOptions = new MolSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setHitIndexType( SearchConstants.MARKUSH_HIT_ORIGINAL / SearchConstants.MARKUSH_HIT_INNER );
// ...
MolSearch searcher = new MolSearch();
searcher.setSearchOptions(searchOptions);

Default value is SearchConstants.MARKUSH_HIT_ORIGINAL.
JChemSearch API
Not applicable.
JChem Oracle Cartridge
Not applicable.
jcsearch command line tool

Use the following command line parameter:

--hitIndexType:m/i

• m: (default) returns hits for the original Markush diagram;
• i: (default) returns hits for the inner compiled representation.

See the availability of the option in further ChemAxon products: