Interface Description RS DataExport US (En)
Interface Description RS DataExport US (En)
Introduction 3
2 XML Based Data Export
To activate data export you have to select the following settings in the instrument's setup:
● Printer type = "RS-232 data export" (for Titration Excellence Line (T90/T70/T50)) or "USB data export" (for
Compact Line titrators (V30/V20/C30/C20), respectively.
(Navigation: Setup > Hardware > Peripherals > Printer)
● The Summary parameter in the "Record" method function (Navigation: Methods > Method > Record):
• "Record" inside the loop: "Per sample" or "Per series"
• "Record" outside the loop: "Yes" or "No"
Note: The other parameters, which are selected in MF "Record" are ignored.
An overview per sample or per series is exported according to the settings in MF "Record".
● The Print autom. KF protocols parameter for the automatic KF data export.
Navigation: Setup > Global settings > Analysis and resources behavior > Analysis sequence settings
(Automatic Karl Fischer reports are generated including drift, blank value and concentration.)
Not all elements are sent, if the method terminates with an error.
In the following there is an example of a printout report. It shows first the report header, the header of the analy
sis and the summary of the analysis.
Roughly the same amount of data is sent through the RS-232 interface.
The integer values contained in brackets are used as markers, which have the following meaning:
(1) Modified (6) srel above max srel for multiple determination
(2) Excluded (7) Value out of range, not saved in setup
(3) Outside limits (8) Sample data out of range
(4) Resource expired (9) Standard evaluation used
(5) srel above max srel
Data is transferred in XML with UTF-8 format. Values are transmitted as strings such as:
[Value] [Space-Character] [Unit] (marker)1 [Space-Character] [(marker)n].
The structure of the XML files is defined by the general XML Scheme. The following XSD file defines all elements
used in the XML files for the data transfer, in what order and how often they can occur :
data_export.xsd
This XSD file is shown in "Appendix: XML Scheme".
The following examples show typical XML structures for the reports.
2.1 Report Header
<?xml version=”1.0” encoding=”UTF-8”standalone=”yes”?>
<MT>
<InstrumentInfo>
<InstrumentType>T90</InstrumentType>
<CommandInterfaceFamily>Titration</CommandInterfaceFamily>
<CommandInterfaceVersion>1.0</CommandInterfaceVersion>
<InstrumentModuleInfo>
<ArrayOfInstrumentModuleInfo>
<ModuleId>0</ModuleId>
<ModuleSerialNumber>1020304050</ModuleSerialNumber>
<ModuleFirmwareVersion>Tx_3.1.16.494</ModuleFirmwareVersion>
</ArrayOfInstrumentModuleInfo>
</InstrumentModuleInfo>
</InstrumentInfo>
<analysis>
For more information about the <header> structure for <analysis> refer to "Header for Analysis" and
"Appendix: Header for Analysis".
</analysis>
</MT>.
The following example shows a typical structure for the data export of a "Calibration" method.
<MT>
<InstrumentInfo>
For more information about the report <header> elements, refer to "XML Based Data Export":
"Report Header" and "Appendix: Report Header".
</InstrumentInfo>
<analysis>
<header>
For more information about the <header> elements in <analysis> refer to "Header for Analysis
and "Appendix: Header for Analysis".
</header>
<sample>
<number>1</number>
<standard_list>METTLER TOLEDO (Ref. 25°C) pH</standard_list>
<standard>4.01 </standard>
<temp>25.0 °C</temp> <comment>Buffer 4</comment>
<sample_start>2011-01-12T11:56:07</sample_start>
<result>
<number>R1</number>
<name>Potential</name>
<result_value>170.9 mV</result_value>
</result>
</sample>
<sample>
<number>2</number>
repeat sequence
<result>
repeat sequence
</result>
</sample>
<sample>
<number>3</number>
repeat sequence
<result>
repeat sequence
</result>
<calibration>
<sensor_name>DGi111-SC</sensor_name>
<calib_temp>25.4 °C </calib_temp>
<no_of_seg>2 </no_of_seg>
<segment>
<number>1</number>
<slope>-57.95 mV/pH</slope>
<zero_point>6.958 pH</zero_point>
</segment>
<segment>
<number>2</number>
repeat sequence
The following example shows a typical structure for the data export of a "Titer" method. It describes the data
export for a titer dertermination per series with four samples.
<MT>
<InstrumentInfo>
For more information about the report <header> elements, refer to "XML Based Data Export":
"Report Header" and "Appendix: Report Header".
</InstrumentInfo>
<analysis>
<header>
For more information about the <header> elements in <analysis> refer to "Header for Analysis
and "Appendix: Header for Analysis".
</header>
<sample>
<number>1</number>
<standard>Potassium hydrogen phthalate</standard>
<size>0.053425 g</size>
<temp>25.0 °C</temp>
<comment>Comment 1</comment>
<corr_fact>1.0</corr_fact>
<sample_start>2011-01-13T08:27:42</sample_start>
Sample data depends on the analyis type, for more information about all usable
<sample> elements, refer to "Appendix: Sample Elements".
<result>
<number>R1</number>
<name>Titer</name>
<result_value>0.982122 </result_value>
</result>
</sample>
<sample>
<number>2</number>
repeat sequenz of sample 1.
<result>
<number>R1</number>
<name>Titer</name>
<result_value>0.981315 </result_value>
</result>
</sample>
<sample>
<number>3</number>
repeat sequenz of sample 1.
<result>
<number>R1</number>
<name>Titer</name>
<result_value>0.981292</result_value>
</result>
</sample>
The following example shows a typical structure for the related data export.
<MT>
<InstrumentInfo>
For more information about the report <header> elements, refer to "XML Based Data Export":
"Report Header" and "Appendix: Report Header".
</InstrumentInfo>
<analysis>
<header>
For more information about the <header> elements in <analysis>
refer to "Header for Analysis and "Appendix: Header for Analysis".
</header>
<sample>
<number>1</number>
<standard_list>METTLER TOLEDO (Ref. 25°C) pH</standard_list>
<standard>4.01 </standard>
<temp>25.0 °C</temp> <comment>Buffer 4</comment>
<sample_start>2011-01-12T11:56:07</sample_start>
</sample>
<sample>
<number>2</number>
repeat sequenz of sample 1.
</sample>
<sensor_test>
<sensor_name>DGi111-SC</sensor_name>
<sens_test_result>success</sens_test_result>
<sens_test_temp>25.4 °C</sens_test_temp>
<slope>-58.43 mV/pH</slope>
<zero_point>6.938 pH</zero_point>
<drift_temp>25.4 °C</drift_temp>
<sens_test_drift>-0.1 mV/30s</sens_test_drift>
</sensor_test>
</analysis>
</MT>
2.3.1 Drift Determination
<MT>
<InstrumentInfo>
For more information about the report <header> elements, refer to "XML Based Data Export":
"Report Header" and "Appendix: Report Header".
</InstrumentInfo>
<analysis>
<header>
For more information about the <header> elements in <analysis> refer to "Header for Analysis
and "Appendix: Header for Analysis".
</header>
<drift>
<date_time>2011-01-12T10:39:42</date_time>
<drift_value>13.4 µg/min</drift_value>
For more information about all usable <drift> elements, refer to "Appendix: Drift Elements".
</drift>
</analysis>
</MT>
2.3.3 Concentration determination
For the concentration determination, the statistics will be printed out with every sample after the second sample.
The structure of exports is similar to the export of the blank determination.
<MT>
<InstrumentInfo>
For more information about the report <header> elements,
refer to "XML Based Data Export": "Report Header" and "Appendix: Report Header".
</InstrumentInfo>
<analysis>
<header>
For more information about the <header> elements in <analysis> refer to "Header for Analysis
and "Appendix: Header for Analysis".
</header>
<concentration>
<sample>
<number>3</number>
<standard>Water-Standard 10.0</standard>
<size>0.1 g</size>
<comment></comment>
<sample_start>2011-01-12T10:51:52</sample_start>
</sample>
<result>
<number>R1</number>
<name>Concentration</name>
<result_value>4.735095 mg/mL</result_value>
</result>
<statistics>
<number>R1</number>
<name>Concentration</name>
<number_of_sample>3 </number_of_sample>
<mean_value>0.001049 %</mean_value>
<stdev>0.000027 %</stdev>
<s_rel>2.538 %</s_rel>
For more information about statistics> elements, refer to "Appendix: Statistic Elements".
</statistics>
For more information about the available <concentration> elements,
refer to "Appendix: Concentration Elements".
</concentration>
</analysis>
</MT>
3.1 Report Header
Elements for the report header
Titles in the report for <InstrumentInfo> elements Description
<InstrumentInfo>
Instrument type InstrumentType e.g. T90, V30, C30
Instrument family CommandInterfaceFamily e.g. Titration
Interface Version CommandInterfaceVersion Version of the RS data export
Module ID ModuleId 0
Serial number ModuleSerialNumber Serial number of the instrument
Firmware version ModuleFirmwareVersion Firmware version of the instrument
3.3 Sample Elements
The following table lists all elements used within the <sample> structure of <analysis>:
Elements for <sample> depending on the titration type
Titles in the report <sample> ele General Titration (GT) Karl Fischer
for <sample> ments (KF)
GT / Bromine Titer Sensor Calibra
Index (BI) test tion
No. number x x x x x
ID1 id1 x x
ID2 id2 x1 x1
ID3 id3 x1 x1
Sample size size x x x
density density x1 x1
Temperature temp x x x x1 x
Comment comment x x x x x
Correction factor corr_fact x x x
Weight per piece wt_per_piece x1 x1
Solvent weight solv_wt x1
Wt. Extracted sam wt_ext_sample x1
ple
Sample Start sample_start x x x x x
List of standards / standard_list x x
pH buffer list
Buffer / Standard standard x x x
X1: This data is only exported, when it is generated by the method.
14 Appendix
3.4 Result Elements
Titles in the report for <result> <result> elements Description
Result result
Rx (x) number e.g. R1
name any name
result_value value and unit for the calculations
3.6 Calibration Elements
Titles in the report for <calibration> elements Description
<calibration>
Sensor sensor_name -
Calib. Temperature 1) calib_temp Value and unit
Number of segments2) no_of_seg -
segment (if more than one segment is required) including the following elements:
number
slope
zero_point
Slope (Tcalib)2) slope
Zero point3) zero_point
cell constant4) cell_const -
1) not for temperature calibration
2) not for pH and ISE calibration
3) not for conductivity calibration
4) only for conductivity calibration
3.7 Titer Elements
Titles in the report for <titer> <titer> elements Description
Titrant titrant -
Titer titer_value -
3.8 Statistic Elements
Titles in the report for <statistic> <statistic> elements Description
Rx (x) number Rn
name Name of the measuring method
Number of samples number_of_sample -
Mean value mean_value Value and unit
s stdev Value and unit
srel s_rel Value and unit
Appendix 15
3.9 Extra Statistic Elements
Titles in the report for <extra_stat> elements Description
<extra_stat>
Rx (Sample x/y) (x) number number of the calculation
name sample_number_extr_stat: 2 for
sample_number_extr_stat sample 2/5, 4 for sample 4/5
3.10 Drift Elements
Titles in the report for <drift> <drift> elements Description
date / time date_time Date and time
Drift drift_value Value and unit
3.11 Blank Elements
Titles in the report for <blank> <blank> elements Description
sample
Number number
Sample size size Value and unit
density density Value and unit
Comment comment
Sample start sample_start Date and time
result
R1 (Blank) number any number
name any name
result_value Value and unit
statistics
R1 (Blank) number number: R1
name name: Blank
Number of samples number_of_sample
Mean value mean_value Value and unit
s stdev Value and unit
srel s_rel Value and unit
16 Appendix
3.12 Concentration Elements
Titles in the report for <concentration> elements Description
<concentration>
sample
Number number
Standard standard
Sample size size Value and unit
Comment comment
Sample start sample_start Date and time
result
R1 (Concentration) number number: R1
name name: Concentration
result_value Value and unit
statistics
R1 (Blank) number number: R1
name name: Concentration
Number of samples number_of_sample
Mean value mean_value Value and unit
s stdev Value and unit
srel s_rel Value and unit
Appendix 17
3.13 XML Scheme
XSD files define the structure of XML files. In the following there is the XSD - file "data_export.xsd" that defines
the XML-structure used for the RS data transfer:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xs:complexType name="MT_type">
<xs:sequence>
<xs:element name="InstrumentInfo" type="InstrumentInfo_type" minOccurs="1" maxOccurs="1" />
<xs:element name="analysis" type="analysis_type" minOccurs="1" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:element name="MT" type="MT_type" />
<xs:complexType name="InstrumentInfo_type">
<xs:sequence>
<xs:element name="InstrumentType" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="CommandInterfaceFamily" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="CommandInterfaceVersion" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="InstrumentModuleInfo" type="ArrayOfInstrumentModuleInfo" minOccurs="1"
maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="ArrayOfInstrumentModuleInfo">
<xs:sequence>
<xs:element name="ArrayOfInstrumentModuleInfo" type="InstrumentModuleInfo_type" minOccurs="1"
maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="InstrumentModuleInfo_type">
<xs:sequence>
<xs:element name="ModuleId" type="xs:short" minOccurs="1" maxOccurs="1" />
<xs:element name="ModuleSerialNumber" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="ModuleFirmwareVersion" type="xs:string" minOccurs="1" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="analysis_type">
<xs:sequence>
<xs:element name="header" type="header_type" minOccurs="1" maxOccurs="1" />
<xs:element name="sample" type="sample_type" minOccurs="0" maxOccurs="120" />
<xs:element name="statistics" type="statistics_type" minOccurs="0" maxOccurs="120" />
<xs:element name="extra_stat" type="extra_stat_type" minOccurs="0" maxOccurs="120" />
<xs:element name="concentration" type="concentration_type" minOccurs="0" maxOccurs="1" />
<xs:element name="drift" type="drift_type" minOccurs="0" maxOccurs="1" />
<xs:element name="blank" type="blank_type" minOccurs="0" maxOccurs="1" />
<xs:element name="calibration" type="calibration_type" minOccurs="0" maxOccurs="1" />
<xs:element name="sensor_test" type="sensor_test_type" minOccurs="0" maxOccurs="1" />
<xs:element name="titer" type="titer_type" minOccurs="0" maxOccurs="1" />
<xs:element name="result" type="result_type" minOccurs="0" maxOccurs="40" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="header_type">
<xs:sequence>
<xs:element name="instrument_id" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="date_time" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="user" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="method_id" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="sample_series_id" type="xs:string" minOccurs="1" maxOccurs="1" />
18 Appendix
</xs:sequence>
</xs:complexType>
<xs:complexType name="result_type">
<xs:sequence>
<xs:element name="number" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="name" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="result_value" type="xs:string" minOccurs="1" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="sample_type">
<xs:sequence>
<xs:element name="number" type="xs:short" minOccurs="1" maxOccurs="1" />
<xs:element name="standard_list" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="standard" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="id1" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="id2" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="id3" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="size" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="wt_per_piece" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="density" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="temp" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="comment" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="corr_fact" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="solv_wt" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="wt_ext_sample" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="sample_start" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="result" type="result_type" minOccurs="0" maxOccurs="40" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="statistics_type">
<xs:sequence>
<xs:element name="number" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="name" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="number_of_sample" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="mean_value" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="stdev" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="s_rel" type="xs:string" minOccurs="1" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="extra_stat_type">
<xs:sequence>
<xs:element name="number" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="name" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="sample_number_extr_stat" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="mean_value" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="stdev" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="s_rel" type="xs:string" minOccurs="1" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="concentration_type">
<xs:sequence>
<xs:element name="sample" type="concentration_sample_type" minOccurs="1" maxOccurs="1" />
<xs:element name="result" type="result_type" minOccurs="0" maxOccurs="1" />
<xs:element name="statistics" type="statistics_type" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="concentration_sample_type">
<xs:sequence>
Appendix 19
<xs:element name="number" type="xs:short" minOccurs="1" maxOccurs="1" />
<xs:element name="standard" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="size" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="comment" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="sample_start" type="xs:string" minOccurs="1" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="drift_type">
<xs:sequence>
<xs:element name="date_time" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="drift_value" type="xs:string" minOccurs="1" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="blank_type">
<xs:sequence>
<xs:element name="sample" type="blank_sample_type" minOccurs="1" maxOccurs="1" />
<xs:element name="result" type="result_type" minOccurs="0" maxOccurs="1" />
<xs:element name="statistics" type="statistics_type" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="blank_sample_type">
<xs:sequence>
<xs:element name="number" type="xs:short" minOccurs="1" maxOccurs="1" />
<xs:element name="size" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="density" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="comment" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="sample_start" type="xs:string" minOccurs="1" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="segment_type">
<xs:sequence>
<xs:element name="number" type="xs:short" minOccurs="1" maxOccurs="1" />
<xs:element name="slope" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="zero_point" type="xs:string" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="calibration_type">
<xs:sequence>
<xs:element name="sensor_name" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="calib_temp" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="no_of_seg" type="xs:short" minOccurs="0" maxOccurs="1" />
<xs:element name="segment" type="segment_type" minOccurs="0" maxOccurs="10" />
<xs:element name="slope" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="zero_point" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="cell_const" type="xs:string" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="sensor_test_type">
<xs:sequence>
<xs:element name="sensor_name" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="sens_test_result" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="sens_test_temp" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="slope" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="zero_point" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="drift_temp" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="sens_test_drift" type="xs:string" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
20 Appendix
<xs:complexType name="titer_type">
<xs:sequence>
<xs:element name="titrant" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="titer_value" type="xs:string" minOccurs="1" maxOccurs="1" />
</xs:sequence>
</xs:complexType> </xs:schema>
Appendix 21
www.mt.com/titration
For more information