An Introduction to CML
Welcome to Chemical Markup Language Version 1.0. This is the first
stable release of CML and there have been very significant improvements since
(Editors Note: This material was prepared on a Unix system, which resulted
in the generation of some files with very long names. During the preparation of
this CD-ROM on a Macintosh, these long names have been truncated. As a result,
hyperlinks to them will not work. If you encounter this problem, please connect
to the on-line version instead).
CML is a powerful generic tool for management of molecular
and technical information, especially geared to Inter- and Intra-net
use.. Formally it is an application of SGML (and not a
programming language or system), but there is an implementation in Java
supplied at the same time (provisionally called CMLViewer). Again,
although CML is not a database language or search tool, nor a processing
system for molecular applications, it provides very important support
for developing these. CML contains a discipline-independent
subset, TecML, for technical data and therefore can be used in a wide
range of disciplines other than molecular science. Formally, CML
is an extension of the TecML DTD.
CML is straightforward to learn, but is powerful and flexible
and can be applied to a very large number of situations. There
are a lot of different places you can start according to your
background and interests.
- Frequently asked questions. This is a useful
tour of the implications and strategy of CML, without needing to worry
about the details.
This is a very simple set
of carefully chosen examples to give an idea of how the language works,
and the major components. Each example has a raw data file, some screen
shots from CMLviewer and an explanation of the ideas.
- Examples. This is a fairly full range
of most of the major areas that CML can be used for. Like the tutorial
there are annotated screenshots and reference files, but less introductory
material - you may wish to read the tutorial first.
- Formal DTD specification. This is the formal
specification of the CML and TecML languages, with the proposed semantics
for each ELEMENT and its Attributes. The DTDs have been
constructed to be very extensible and use files controlled by
parameter entities to modify the DTD without editing. (This section is
not for SGML-beginners!). The ELEMENTs
and their Attributes are documented in HTML by Earl Hood's dtd2html.
- Applets. Many of the examples are
available through Java applets. This points to applets which will be
distributed with this distribution and point to files within it.
It should be possible to run them using a Java-enabled browser at reasonable
speed as there is no download time.
At present there are some examples of glossaries mounted at
the Virtual Hyperglossary project
- Java API for CML-based classes.
All CML ELEMENTS have classes and their methods can be found under here.
- FAQ for the JUMBO browser
Back to index
Peter Murray-Rust, 1996, 1997