Daylight's Published URLs
Daylight Software Version 4.9
Design
Daylight uses HTML interfaces and documentation for a wide variety
of purposes.
These mainly consist of
HTML (hypertext markup language) documents,
CGI common gateway interface programs
and supporting images (system components).
Our goals are to
(1) provide reliable user interfaces and documentation as a coherent package,
(2) deliver the package to a wide audience,
(3) deliver all the tools we use to our customers for their own use
(e.g., custom packaging), and
(4) allow systematic improvements with time.
The WWW (world wide web) philosophy allows HTMLs and CGIs to
reference each other via URLs (uniform resource locations) without
restriction.
This "footloose" approach works well for a fundamentally disorganized
collection of resources (what else can you do?) but is not adequate
to achieve Daylight's goals.
To keep things supportable, we have adopted a strict organization of our
HTMLs and CGIs (called components) which includes some rather severe
restrictions on the way
URL references are used:
-
All system components system appear under two aliases
(or "logical directories"):
- "/daycgi/" (CGI programs and scripts),
- "/dayhtml/" (HTML documents and supporting files) and
-
All components exist as part of a named "package", which appear as
one or more subdirectories of the aliased logical directories and
are named after the package.
E.g., the HTMLs for the "database" package are found under the
directory "/dayhtml/databases"
-
Each package publishes a set of URLs which start with one of the
above three aliases.
In fact, the set of published URLs for a package is the
definition of that package's interface.
As long as that package is supported, the published URLs will exist
and remain valid.
Conversely, the URLs of unpublished components are expressly
not supported (they may disappear or change function in future releases).
-
Package components may reference only:
- local URLs (files in the package directory or its subdirectories)
- published URLs of other packages
Published URLs, by package
- /daycgi/coord2cex
- Produce a CEX molecule from Daylight CGI context variables
"smiles" and "coords", send it as a CEX object on standard output
with mime type "x-cex-3d". No arguments are accepted.
- /daycgi/dcgi_env.sh
- Establish Daylight CGI environment in /bin/sh,
e.g., define DY_ROOT, CX_ROOT, standard image sizes, etc.
- /daycgi/depict
- Invoke page providing interactive depiction of SMILES.
A hex-encoded SMILES is accepted as an optional argument.
- /daycgi/depictform
- Invoke /daycgi/depict from a form entry containing INPUT field "smiles".
- /daycgi/hyperthor
[dbname [idtag [idval]]]
- Thor database browser with hyperactive tendencies.
All three arguments are optional. If dbname is not specified,
tries to connect to thorserver on the local host; if unsuccessful,
allows interactive specification of the server.
The entry point
/daycgi/hyperthorall
offers all databases (i.e., including normally invisible databases).
- /daycgi/hypertree
dbname idtag idval [hints]
- Display HTML Thor datatree(s) for idtag-idval in given database.
Optional argument `hints' may be "*ALL" or a membership class name
the form "*class", e.g., "*Common".
Data tuple summaries are produced for items per the bar-delimited
list in environment variable "DY_TUPLESUM_TAGS".
This (currently) uses the external utilities
depict (for items per DY_DEPICT_TAGS),
smi2gif (per DY_DRAW2D_TAGS and DY_SCHEMA_TAGS)
and coord2cex (per DY_DRAW3D_TAGS).
External utilities are provided as per "DY_DCGI_HOST"
(if not defined, the local host).
- /daycgi/post4eval
- Convert FORM/POST output stream to DCGI_ environment variables.
- /daycgi/postfilter
- Convert FORM/POST output stream
to simpler DCGI context (pairs of name/value lines).
- /daycgi/shortdbname
- Simplify string in standard database name syntax
(base%pw@host:service:user%upw) for display;
options are [-a(ll) | -b(ase) | -h(ost) | -s(s) | -u(ser)]
[ -x defaultservice ].
Default settings are "-h -x thor".
- /daycgi/smi2gif
- Produces an automatically-generated depiction from a hex-encoded
smiles argument. Colormode is color-on-black, geometry is set from
DY_WIDE_WIDTH and DY_WIDE_HEIGHT (set to 200x400 in dcgi_env.sh).
- /daycgi/smi2gif-bop
- Like /daycgi/smi2gif, but produces a black-on-paper image.
This is generally used to draw depictions in an HTML document which
is to be printed on a monochrome printer.
- /daycgi/smi2gif-small
- Like /daycgi/smi2gif,
but produces a DY_SMALL_WIDTH x DY_SMALL_HEIGHT image
(set to 96x64 in dcgi_env.sh).
This is generally used to draw molecular icons.
- /daycgi/acd
- A simplified interface to the Available Chemicals Directory.
Accepts a single optional argument, a hex-encoded identifier value.
- /daycgi/savant
- A simplified interface to the Spresi database
providing a survey of the synthetic literature.
Accepts a single optional argument, a hex-encoded SMILES.
- /daycgi/wdi
- A simplified interface to the World Drug Index.
Accepts a single optional argument, a hex-encoded identifier value.
- /daycgi/wizard [@host:service:user]
- An MCL-based hypertext interface to the Merlin search engine.
The initial merlinserver connection is defined by the optional
argument with defaults as per the environment variables
DY_WIZ_HOST (localhost),
DY_WIZ_SERVICE ("merlin"), and
DY_WIZ_INFOUSER ("thorinfo").
-
/dayhtml/doc/index.html
- Index to "documentation" package, includes Daylight Theory Manual,
Daylight Adminstration Manual, Daylight Programmer's Tutorial, Daylight
Reference Manual, and more.
-
/dayhtml/doc/release_notes/index.html
- Index to the release notes specific to a particular version of
Daylight Software.
-
/dayhtml/help/shortnames.html
- Short chemical names in demo databases.
- /dayhtml/index.html
- Index to everything, "home page" for Daylight Software.
Daylight Chemical Information Systems, Inc.
info@daylight.com