[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: CLAX - Client-side functionality
At 15:36 25/07/2006, Didier PH Martin wrote: >Hello Peter, > >Your challenge is quite stimulating and I am happy to see some focus on real >stuff and less on politics. Thanks - I also enjoy your comments >Here is what I am proposing: > >Having more than one option is always good because we do not know where the >evolution will lead us what will be the fittest to survive. Yes. The Web achieves this though the huge number of people. It may be that others not on XML-DEV are discussing this >You actually have as options: > >a) A java only world incarnated with Eclipse and bioeclipse. Yes >b) A potential browser solution (if I understand well the current one is >unsatisfactory) My problem (and i am often out of date) with the current browsers are: - they do not care about running applications so there is little useful support and hooks - they are not yet fully consistent between each other - they are not stable in the areas we need (e.g. Javascript interfacing) Also because there are 2-3 choices then we have to support all. If we support Bioclipse then at least we only have one platform; of course we have the challenge to evangelise it >Option (a) is already taken care of. Well Bioclipse is young. It can be installed by experts but not for mass release. But hopefully that will come >Option (b) needs some brain and hands. Yes. >Let's see if I can contribute but now I need more info: > >a) I assume that a publication needs a way to be encoded. I am proposing >XHTML because its easy to get it interpreted in most browsers. So the >textual information can be encoded into XHTML. Yes >b) For information unit about molecular matters I guess you want to use CML >and a CML interpreter. I noticed a few but JMOL seems to be the best. Am I >wrong? Chemistry is a large subject so there are many aspects. (Molecules, reactions, computation, spectra, crystallography). CML supports all and essentially each has its own complementary interpreter. They are all getting installed in Bioclipse: * Jmol 3D viewer * JChempaint 2D editor and display (note "2D" is completely different from 3D - you cannot create one from the other easily * JUMBO CML toolkit manages schema and basic chemistry on it * CDK and JOELib - advanced chemical computation * JSpecView graphical display of spectra >c) For math I am puzzled because comments made in this forum lead me to >conclude that mathML is unsatisfactory. So, what to do for math information >units? Waiting for your imput. I don't think the comments are accurate. MathML is a well developed language for presentational maths. It is designed for use up to undergraduate STM (Science, Technical, Medical). It is IMO well suited for general scientific presentational publishing. Its semantic component is probably less well deployed - this is IMO a matter of time and some evangelism. I am perfectly happy to use MathML for math in chemistry >d) any other format? Many - and we have to be prepared to install ones we don't know about. For example there are perhaps 5-10 quite widely deployed MLs in bioscience. It is not a problem if they simply take up screen space. If they need to intercommunicate then they must have a common ontology and event model. This is ambitious! >So guess that what I am doing is collecting the datument atoms or >information units required. IN other words do we have the right capabilities >in the browser to correctly interpret/render the different information unit >required. This is the first step for building an intelligent CLAX wrapper >for the different browser environments. It would be wrong to base CLAX primarily on chemistry. Here is a simple service returning the time (the syntax is not meant to be critical - will change between emails!) <clax> <request url="http://www.mytime.org"> <param name="timezone" value="BST"/> <response> <xsd:datetime/> </response> </clax> We send a request to a service with a parameter timezone and get a response of a given datatype. The service knows it has an input of timezone and returns an XSD datetime. The datatype could come from any ML. So for math:: <clax> <request url="http://www.mymath.org"> <param name="operation" value="integration"/> <!-- sin(x) - as from Mathematica web page --> <math xmlns='http://www.w3.org/1998/Math/MathML'> <mrow> <mi>sin</mi> <mo>⁡</mo> <mo>(</mo> <mi>x</mi> <mo>)</mo> </mrow> </math> <response> <math xmlns='http://www.w3.org/1998/Math/MathML'> </response> </clax> This shows a service which takes a parameter (operation) and a MathML expression (in this case sin(x)) - I know this isn't semantic math, but it shows the idea. It applies the operation and returns a MathML expression. Here is one in CML that finds the molecular weight of a compound <clax> <request url="http://www.xml-cml.org/services"> <param name="operation" value="getMolecularWeight"/> <param name="molecule"> <cml:molecule formula="C 2 H 4" cml="http://www.xml-cml.org/schema"/> </param> <response> <xsd:float/> </response> </clax> This request a service taking an operation and a molecule and returns an XSD float (28.02 in this case) Because CML schema is mapped onto Java we can interrogate it through Java reflection (CMLMolecule.class, getMolecularMass()) directly from the clax parameters - trivial. The service is written by a domain expert; so long as the input datatpyes agree with the POST and the output agrees with the return the service simply executes, e.g.: <clax> <request url="http://www.myjoke.org"> <param name="type" value="lightBulb"/> <response> <xhtml/> </response> </clax> We expect to see much of the computation being broken into modules like this and shipping XML object between them. Except for very short and repeated services then performance overheads are small P. Peter Murray-Rust Unilever Centre for Molecular Sciences Informatics University of Cambridge, Lensfield Road, Cambridge CB2 1EW, UK +44-1223-763069
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|