Mercurial > hg > ltpda
diff m-toolbox/classes/+utils/@xml/save_sinfo_xml.m @ 0:f0afece42f48
Import.
author | Daniele Nicolodi <nicolodi@science.unitn.it> |
---|---|
date | Wed, 23 Nov 2011 19:22:13 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/m-toolbox/classes/+utils/@xml/save_sinfo_xml.m Wed Nov 23 19:22:13 2011 +0100 @@ -0,0 +1,59 @@ +% SAVE_SINFO_XML saves a submission info struct to a simple XML file. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% SAVE_SINFO_XML saves a submission info struct to a simple XML file. +% +% CALL: sinfo = utils.helper.save_sinfo_xml(file) +% +% The XML file should have a main node called 'submission_info'. Then all +% sub-nodes supported by the sinfo fields will be read. +% +% For example: +% +% <submission_info> +% <experiment_title> +% some nice experiment we can use +% </experiment_title> +% <experiment_description> +% Some nice experiment we did with some crazy results. +% But sometimes it takes a new line to describe in detail. +% </experiment_description> +% </submission_info> +% +% Supported fields: +% +% 'experiment_title' +% 'experiment_description' +% 'analysis_description' +% 'quantity' +% 'keywords' +% 'reference_ids' +% 'additional_comments' +% 'additional_authors' +% +% I Diepholz 022-03-10 +% +% $Id: save_sinfo_xml.m,v 1.1 2010/04/19 14:31:05 ingo Exp $ +% + +function save_sinfo_xml(filename, sinfo) + + xml = com.mathworks.xml.XMLUtils.createDocument('submission_info'); + parent = xml.getDocumentElement; + + fieldNames = fieldnames(sinfo); + for ii = 1:numel(fieldNames); + field = fieldNames{ii}; + + newNode = xml.createElement(field); + parent.appendChild(newNode); + + + content = xml.createTextNode(sinfo.(field)); + newNode.appendChild(content); + + end + + xmlwrite(filename, xml); + +end