Subject: Re: CCL:Release of CML2.0 (Chemical Markup Language) ...

From: Peter Murray-Rust <[email-masked]>
Date: Thu, 21 Nov 2002 07:39:45 +0000

At 11:00 20/11/2002 +0100, Alk Dransfeld wrote:
>Dear Computational Chemists (CCs),
>
>The main aspect of storing results in archives and/or
>dictionaries, whether CML based or not, is for CCs to
>be able to REtrieve instead of REcalculate. Therefore,
>an effective mechanism to find things in CML is essential.

XML per se provides an extremely effective retrieval mechanism based on the 
XPath formalism and the XML Query language. It is possible to query and 
retrieve at the level of granularity that is provided in the markup 
language. This generic approach works well when the concepts are all 
interpretable by XML technology such as XPath. Thus
//molecule[count(atomArray/atom[@elementType='O'])>2]
will retrieve all molecules with 3 or more oxygen atoms in the document 
(wherever they occur). This is remarkably powerful for a generic language.

>On  Tue, 19 Nov 2002 09:59:10, Peter Murray-Rust wrote:
>>...
>>Several other modules are under active development
>>- Computational Chemistry Markup Language (CCML) ...
>>- CMLReaction. CML already supports reactions ...
>>- CMLQuery. This is being built on the emerging XML Query language
>>...
>
>Why wait for an "emerging XML Query language"
>when the Xpath mechanism is already developed under surveillance
>of W3C and is already supported in various toolkits (for instance
>the PERL module XML::XPath from http://xml.sergeant.org/xpath.xml) ?

Several working drafts of XML Query were released this week and are worth 
reading. Basically XPath is only part of the query mechanism - among the 
issues addressed are what objects are returned (pointers?, copies?) and 
context. However the main work is in synthesizing the various current 
methods of querying (many of which are in Closed software systems and so 
the semantics are not always easy to determine precisely). Essentially CML 
Query will have a representation independent of the target programming 
system and can translate into the local query language as appropriate. This 
is not easy, but we are making good progress with a program-independent 
CCML and the experience there will be useful for CML Query.

>Is Xpath ( http://www.w3.org/TR/xpath )
>inappropriate to deal with CML?

Beyond what I have described, yes. It is not easy to (say) retrieve a 
carbon atom with trigonal planar coordination using XSLT alone. This is a 
derived concept and requires domain specific queries.

>Is this because the addressability
>in CML is poor?

The addressability is fine grained (atoms, bonds and electrons can have 
individual IDs and be precisely addressed), but some of the chemical 
concepts related to queries are (deliberately) not present in CML. CML 
represents what a substance IS, whereas CML Query introduces more generic 
concepts (coordination, hybridisation, rings, geometry, etc.)

>I think CCs community should follow this weeks CLRC meeting
>in United Kingdom to see where+how they go and look for
>data.

We shall publish our documentation shortly afterwards. Some is already 
present on http://www.xml-cml.org

P.