CML is being developed in close conjunction with the XML-working_group of the W3C (Feb 1997). TecML/CML is intended to be completely XML-compliant but there will be a few small differences as both languages develop. Therefore you should be prepared to make changes if required, especially if the XML project provides something that TecML/CML does not. The following Elements may become obsolete:

The following attributes may become obsolete:

Other effects of XML

CML documents may not be strictly compatible with XML until it is clear what the minimum header is. My software (JUMBO) ignores PIs, but others may not. (CML does not require PIs at present). If in doubt, convert XML/CML documents to ESIS which JUMBO can read

CML was developed as a valid SGML application and so it is legitimate to use entities, marked sections and so on. If in doubt, use sgmls to produce an ESIS stream and read that into JUMBO (which doesn't recognise these).

XML is also developing an SGMLOpen Catalog approach. CML will embrace this and it is likely that chemical components can be catalog'ed. JUMBO does not (yet) support catalogs, but will use NXP to do so when that is ready.

DTDs required for CML

CML (Chemical Markup Language) is described by the following DTDs:

Quick Reference