briandconnelly / softermax

🔬Read Exported Data from SoftMax Pro
Other
4 stars 0 forks source link

XML files from Softmax 5.4 #2

Closed bdrown closed 7 years ago

bdrown commented 7 years ago

Great tool you've got here. I was about to write something analogous but did a quick search and saw you beat me to the punch.

We've got a platereader running with Softmax 5.4. The XML files it generates are slightly different (the name of each plate is a child instead of an attribute).

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<microplateDoc xmlns="http://moleculardevices.com/microplateML">

  <fileVersion>2.0.7</fileVersion>

  <experimentSection sectionName="Experiment#1">
    <noteSection>
      <noteSectionName>Notes#1</noteSectionName>
      <noteData/>
    </noteSection>
    <plateSection>
      <plateType>PlateType</plateType>
      <plateSectionName>Indolmycin_bsd-11-54-2</plateSectionName>
      <plateReadTime>  7:38 AM  4/21/2017
</plateReadTime>
      <instrumentInfo>PLUS384 ROM v1.18 Feb 01 2005</instrumentInfo>
      <instrumentSettings>
        <readMode>Absorbance</readMode>
        <readType>Endpoint</readType>
        <absDataType>Absorbance</absDataType>
        <noOfReads>1</noOfReads>
        <wavelengthInfo>
          <waveSet waveID="1">
            <waveValue>600</waveValue>
          </waveSet>
        </wavelengthInfo>
      </instrumentSettings>
      <microplateData>
        <noOfWells>96</noOfWells>
        <noOfWaves>1</noOfWaves>
        <noOfReads>1</noOfReads>
        <wave waveID="1">
          <well wellID="1" wellName="A1">
            <oneDataSet>
              <rawData>0.0564</rawData>
            </oneDataSet>
          </well>

I also have access to Softmax 6.4 and was able to export the same data. This XML file worked just fine.

<Experiment>
  <PlateSections>
    <PlateSection Name="Indolmycin_bsd-11-54-2" InstrumentInfo="PLUS384 ROM v1.18 Feb 01 2005" ReadTime="07:38 AM 04/21/2017">
      <Barcode>n/a</Barcode>
      <InstrumentSettings ReadMode="Absorbance" ReadType="Endpoint" PlateType="96 Well Standard clrbtm">
        <Automix>
          <Shake>Off</Shake>
        </Automix>
        <MoreSettings>
          <Calibrate>On</Calibrate>
          <CarriageSpeed>Normal</CarriageSpeed>
          <ReadOrder>Column</ReadOrder>
        </MoreSettings>
        <WavelengthSettings NumberOfWavelengths="1">
          <Wavelength Index="1">600</Wavelength>
        </WavelengthSettings>
      </InstrumentSettings>
      <Wavelengths>
        <Wavelength WavelengthIndex="1">
          <Wells>
            <Well WellID="1" Name="A1" Row="1" Col="1">
              <RawData>0.0564</RawData>
            </Well>

I'd be happy to try to adapt read_softmax_xml to work with older XML formats.

briandconnelly commented 7 years ago

Interesting! MD really seems to like changing up their file formats. It looks like there were some nice things in the old format, like a version string and information about the Experiment (in the newer version, the XML only includes one Experiment section, which is insane).

I'll make some time in the next few days to get this working with the 5.4 format. Would you mind sending me (here or to bdc at bconnelly.net) an XML file?

bdrown commented 7 years ago

No problem. I've attached both endpoint and kinetic experiments. If there's a particular permutation of settings you're interested in, I can send those too. SM_5.4_example_data.zip

briandconnelly commented 7 years ago

Thanks, these are really helpful! Looks like it should be pretty easy. If you get a chance, I'd be curious whether the XML files exported by v5.4 include sections for each experiment when there are multiple experiments in the project.

bdrown commented 7 years ago

There are indeed multiple experiment sections when exported to XML. It works as you might expect. SM_5.4_multiexp.zip

briandconnelly commented 7 years ago

In progress. It's crazy how different these files are.

briandconnelly commented 7 years ago

A few small requests:

bdrown commented 7 years ago

SMP5 throws an error if you try to create multiple plates, note, or experiments with the same name. Strange how drastically different these two versions are. I've attached an experiment with multiple notes. SM_5.4_multinote.zip

briandconnelly commented 7 years ago

Great, thanks! I'm wondering if version 7 has another totally different format too. Seems like something they could have done right once and kept.

briandconnelly commented 7 years ago

Absorbance reads seem to be working with SMP5 data, so I'm going to close this issue. I'm adding separate issues for other SMP5 features, though, like templates and other read modes.