The Daylight Chemistry Cartridge
Michael A. Kappler |
This presentation gives a brief overview of the Daylight cartridge, DayCartTM, talks about the current state of the cartridge, and discusses some of our ongoing work with the cartridge. Ragu will talk about timeframes for the next major release tomorrow afternoon.
Daylight / Oracle Cartridge
Our data cartridge is a bundled set of tools which extends the Oracle server with new chemical capabilities. Our chemistry cartridge supports molecules, reactions, patterns, mixtures, fingerprints, 2D and 3D conformations.
A cartridge consists of a number of different components which work together to provide complete database capabilities within the chemical information domain.
The cartridge does not use Oracles 8i object model.
The cartridge can be used with many (all) client and middleware layers (OCI, ODBC, JDBC, Perl and Corba)
The cartridge is not a full Daylight toolkit interface.
The full cartridge API is documented in the DayCart Manual
Cartridge Release History
The version 4.71 cartridge was released last fall (August '00) and was supported on Solaris 2.7, using Oracle 8.1.5 Enterprise Edition.
The next version was released with the 4.72 patch, this spring (March '01). It added support for IRIX and Linux and was tested against 8.1.6 and 8.1.7
There will be a 4.73 patch release shortly after this meeting. It will be a bug-fix patch and will be supported on the same platforms as the 4.72 patch.
A feature release, version 4.81, is scheduled for next spring.
Ongoing Efforts
Support for 9i database server will be part of 4.8.
The partnorm() works like atomnorm() and bondnorm() to reorder data associated with the parts of a SMILES.
The component() operator and index query returns TRUE if a query molecule is a component of the molecule, reaction, or mixture query.
contains(a, b) are identical to iscontained(b, a)
In 4.8, will allow the specification of tablespace and storage options with each of the indextypes.
In 4.8, will support the alter index ... rebuild ... command on the indextypes.
In 4.8, will support the alter index ... rename ... command on the indextypes.
In 4.72 all the PL/SQL functions support VARCHAR2 strings up to 32767 characters, which is the maximum length of a VARCHAR2 in PL/SQL.
In 4.72 all the SQL operators and index queries support VARCHAR2 strings up to 4000 characters, which is the maximum length of a VARCHAR2 in SQL.
In 4.8, will support CLOB datatypes for all functions and indexes (anywhere a VARCHAR2 is used now).
In 4.8, we'll support CLOB datatypes everywhere we currently use VARCHAR2.
fsmi2cansmi(smi IN VARCHAR2, type IN NUMBER) => VARCHAR2
fsmi2cansmi(smi IN CLOB, type IN NUMBER, can IN OUT CLOB) => NUMBER
fsmi2amw(smi IN VARCHAR2) => NUMBER
fsmi2amw(smi IN CLOB) => NUMBER
fcontains(s1 IN VARCHAR2, s2 IN VARCHAR2) => NUMBER
fcontains(s1 IN VARCHAR2, s2 IN CLOB) => NUMBER
fcontains(s1 IN CLOB, s2 IN VARCHAR2) => NUMBER
fcontains(s1 IN CLOB, s2 IN CLOB) => NUMBER
All operator combinations supported (eg. all four contains permutations).
The cartridge is in hand on NT. Works really well.
Caveats: