[MOBY-dev] The code changes yesterday

Mark Wilkinson mwilkinson at mrl.ubc.ca
Thu Jan 20 16:38:56 UTC 2005


Hi all, 

Just thought I'd jot a note to let everyone know what the consequences
are of yesterday's changes to MOBY::Client::Service.

the problem we were trying to solve was with embedded CDATA inside CDATA
tags, which is not allowed in XML.  It was, in the beginning, desirable
to pass MOBY messages as CDATA since that makes it more human-readable
and easier to debug, however some people are passing sub-components of
the content of their messages as CDATA also (e.g. the content of a FASTA
object from certain services who will remain nameless ;-)  in order to
"escape" the leading '>' of the fasta header).  This was causing
problems.

The change I made to MOBY::Client::Service yesterday simply removes the
CDATA tags altogether and instead escapes the content of the message
(replacing '<', '&' and ']]>').  This was bad form on my part, since
CDATA really shouldn't have been used there in the first place... but I
can't undo the past :-(

In any case, a CVS update of that module should make everyone's services
switch to this more correct output format without any other changes
required.  In addition, the (Perl) SOAP libraries handle this change
completely transparently, so there is no need to modify your services
v.v. data consumption either.  the data you receive to your service will
be exactly the same as it was when the CDATA tags were there.

All in all, this should be a completely painless change, requiring only
a CVS update to bring people's services up to date...

M


-- 
Mark Wilkinson
Assistant Professor (Bioinformatics)
Dept. Medical Genetics, UBC, Canada




More information about the MOBY-dev mailing list