JChem Choral Cartridge is supported by IJC. JChem Choral Cartridge integrates the 2nd generation JChem Base engine with Oracle interface. Among its advantages are high-speed chemical search and quick sorting of chemical structures by relevance. It offers the most used chemical search options like substructure search, superstructure search and duplicate search.
When compared with JChem Oracle Cartridge, Choral Cartridge proves to execute queries faster. Performance can vary significantly based on the specific query executed and its frequency of execution. Another advantage of the Choral Cartridge is less memory use. Further differences can be found here together with tutorial video How to migrate from JChem Oracle Cartridge to Choral if that should be your case.
This guide will serve as a basic introduction to the installation and use of JChem Choral Cartridge installation.
Upgrade process of IJC schema is done automatically, but upgrade of the cartridge itself has to be done manually and it is described in the JChem Choral Upgrade documentation.
JChem Choral does not handle JChem tables, only regular tables are handled. The column for storing the chemical structures must be Molecule type. CREATE INDEX using chemindex or sortedchemindex makes the JChem search processes run faster, however searching in unindexed tables is also possible. There are no table settings because, unlike with the JChem Oracle Cartridge, table types do not exist here.
If you are using an Oracle database and have the JChem Choral Cartridge installed and running, a new JChem Choral Cartridge entity can be created. After selecting the JChem Choral Cartridge entity as entity type, which is a default option, the following settings need to be specified:
In the Display Name text field, enter a name for the new entity.
In the Database Table text field, the name of the new entity is automatically copied from the Display Name text field.
In the Structure Column field, enter a name for the structure column in the database table.
In the ID Column field, specify the column name for the identity column (primary key column) in the database table. For a JChem Choral Cartridge entity, the ID is generated automatically.
The default value of the Molecule Type field is ‘sample’. You can add a new molecule type or change the existing one. Detailed documentation about adding and changing molecule types is available in the JChem PostgreSQL Cartridge Manual here.
New JChem Choral Cartridge entity is a default option when Choral is installed correctly; otherwise, it will be missing in the menu. Table creation options can be changed under the ...
button.
Specific molecule types can be set during the import process. Molecule types define the interpretation mode of the chemical structures. Molecule types are based on the extension chemaxon_type. The definition of these types has to be stored in /etc/chemaxon/types/ folder as a <molecule_type_name>.type file. Those types can be selected from the drop-down box.
If the structure table is in the correct state, it will be automatically recognized as a Oracle table and promoted as a Structure entity. Otherwise, it will be promoted as a standard data table.
JChem Choral provides the following structure search operators. See details in JChem Choral Cartridge Manual:
Using substructure search in IJC with Choral, its capabilities are more limited than those of other engines.
Superstructure search has the same options as substructure search available.
Using similarity search, so far only classical Tanimoto metric is available.
Has no options available.
Full fragment search has the same options available as substructure search.
IJC is able to read standardizer settings in a standard way. In IJC the standardizer settings are READ ONLY.
The required standardization has to be set in the molecule type files. The name of the molecule type file has to be applied as a parameter of the Molecule column type. See details in JChem Choral Cartridge Manual.
From an IJC perspective, chemical terms (CT) can be created in the user interface similarly to other database search engines. However, Choral handles these fields differently than other cartridges. IJC supports:
List of known issues and workaround for JChem Choral can be found here
Also, IJC+Choral is currently missing the following features: