EDF (SignalML 1.0)
From SignalML
<?xml version="1.0"?>
<meta_format>
<header>
<format id='EDF'/>
<text_info>EDF data format</text_info>
<url>http://www.hsr.nl/edf</url>
</header>
<data_format frame_type='edf_frame'
offset='{header_size}'
record_size='{duration_of_data_record}'
sample_size='{nr_of_samples}'
sample_type='int16'
/>
<parameters>
<property id='version' type='ascii' width='8' offset='0'/>
<property id='patient_ident' type='ascii' width='80' offset='8'/>
<property id='record_ident' type='ascii' width='80' offset='88'/>
<property id='start_date' type='ascii' width='8' offset='168'/>
<property id='start_time' type='ascii' width='8' offset='176'/>
<property id='header_size' type='ascii' width='8' offset='184' evaltype='int32'/>
<property id='reserved' type='ascii' width='44' offset='192'/>
<property id='number_of_data_records' type='ascii' width='8' offset='236' evaltype='int32'/>
<property id='duration_of_data_record' type='ascii' width='8' offset='244' evaltype='float'/>
<property id='transducer_type' type='ascii' width='80' index='1..{number_of_channels}'
offset='256+16*{number_of_channels}+80*({index}-1)'/>
<property id='physical dimension' type='ascii' width='8' index='1..{number_of_channels}'
offset='256+96*{number_of_channels}+8*({index}-1)'/>
<property id='physical_minimum' type='ascii' width='8' index='1..{number_of_channels}'
offset='256+104*{number_of_channels}+8*({index}-1)'/>
<property id='physical_maximum' type='ascii' width='8' index='1..{number_of_channels}'
offset='256+112*{number_of_channels}+8*({index}-1)'/>
<property id='digital_minimum' type='ascii' width='8' index='1..{number_of_channels}'
offset='256+120*{number_of_channels}+8*({index}-1)'/>
<property id='digital_maximum' type='ascii' width='8' index='1..{number_of_channels}'
offset='256+128*{number_of_channels}+8*({index}-1)'/>
<property id='prefiltering' type='ascii' width='80' index='1..{number_of_channels}'
offset='256+136*{number_of_channels}+80*({index}-1)'/>
<property id='nr_of_samples' type='ascii' width='8' index='1..{number_of_channels}'
offset='256+216*{number_of_channels}+8*({index}-1)'/>
<property id='reserved2' type='ascii' width='32' index='1..{number_of_channels}'
offset='256+224*{number_of_channels}+32*({index}-1)'/>
<sampling_frequency index='1..{number_of_channels}'
evaltype='float' eval='{nr_of_samples}[{index}-1]/{duration_of_data_record}'
units='Hz'/>
<number_of_channels type='ascii' width='4' offset='252' evaltype='int32'/>
<calibration_gain evaltype='float' index='1..{number_of_channels}'
eval='1.0F/({physical_maximum}[{index}]-{physical_minimum}[{index}])'
units='microVolts'/>
<calibration_offset evaltype='float' index='1..{number_of_channels}'
eval='{physical_minimum}[{index}]-{digital_minimum}[{index}]*{calibration_gain}[{index}]'/>
<channel_names type='ascii' width='16' index='1..{number_of_channels}'
offset='256+16*{index}'/>
</parameters>
</meta_format>