DRAFT DICTIONARY

CBF/imgCIF Extensions Dictionary

Draft version 1.5 for comment


[IUCr Home Page] [CIF Home Page] [CBF/imgCIF] [CBFlib]


Index

Image dictionary (imgCIF) version 1.5.4

Category ARRAY_DATA

Name:
'array_data'

Description:

    Data items in the ARRAY_DATA category are the containers for
     the array data items described in the category ARRAY_STRUCTURE.

     It is recognized that the data in this category needs to be used in
     two distinct ways.  During a data collection the lack of ancillary
     data and timing constraints in processing data may dictate the
     need to make a 'miniCBF' nothing more than an essential minimum
     of information to record the results of the data collection.  In that
     case it is proper to use the ARRAY_DATA category as a
     container for just a single image and a compacted, beam-line
     dependent list of data collection parameter values.  In such
     a case, only the tags '_array_data.header_convention',
     '_array_data.header_contents' and '_array_data.data' need be
     populated.

     For full processing and archiving, most of the tags in this
     dictionary will need to be populated.


Examples:

Example 1 - This example shows two binary data blocks. The first one was compressed by the CBF_CANONICAL compression algorithm and is presented as hexadecimal data. The first character 'H' on the data lines means hexadecimal. It could have been 'O' for octal or 'D' for decimal. The second character on the line shows the number of bytes in each word (in this case '4'), which then requires eight hexadecimal digits per word. The third character gives the order of octets within a word, in this case '<' for the ordering 4321 (i.e. 'big-endian'). Alternatively, the character '>' could have been used for the ordering 1234 (i.e. 'little-endian'). The block has a 'message digest' to check the integrity of the data. The second block is similar, but uses CBF_PACKED compression and BASE64 encoding. Note that the size and the digest are different.
 

        loop_
        _array_data.array_id
        _array_data.binary_id
        _array_data.data
        image_1 1
        ;
        --CIF-BINARY-FORMAT-SECTION--
        Content-Type: application/octet-stream;
             conversions="X-CBF_CANONICAL"
        Content-Transfer-Encoding: X-BASE16
        X-Binary-Size: 3927126
        X-Binary-ID: 1
        Content-MD5: u2sTJEovAHkmkDjPi+gWsg==

        # Hexadecimal encoding, byte 0, byte order ...21
        #
        H4< 0050B810 00000000 00000000 00000000 000F423F 00000000 00000000 ...
        ....
        --CIF-BINARY-FORMAT-SECTION----
        ;
        image_2 2
        ;
        --CIF-BINARY-FORMAT-SECTION--
        Content-Type: application/octet-stream;
             conversions="X-CBF-PACKED"
        Content-Transfer-Encoding: BASE64
        X-Binary-Size: 3745758
        X-Binary-ID: 2
        Content-MD5: 1zsJjWPfol2GYl2V+QSXrw==

        ELhQAAAAAAAA...
        ...
        --CIF-BINARY-FORMAT-SECTION----
        ;



Example 2 - This example shows a single image in a miniCBF, provided by E. Eikenberry. The entire CBF consists of one data block containing one category and three tags. The CBFlib program convert_miniCBF and a suitable template file can be used to convert this miniCBF to a full imgCIF file.
 
        ###CBF: VERSION 1.5
        # CBF file written by CBFlib v0.7.8

        data_insulin_pilatus6m

        _array_data.header_convention SLS_1.0
        _array_data.header_contents
        ;
        # Detector: PILATUS 6M SN: 60-0001
        # 2007/Jun/17 15:12:36.928
        # Pixel_size 172e-6 m x 172e-6 m
        # Silicon sensor, thickness 0.000320 m
        # Exposure_time 0.995000 s
        # Exposure_period 1.000000 s
        # Tau = 194.0e-09 s
        # Count_cutoff 1048575 counts
        # Threshold_setting 5000 eV
        # Wavelength 1.2398 A
        # Energy_range (0, 0) eV
        # Detector_distance 0.15500 m
        # Detector_Voffset -0.01003 m
        # Beam_xy (1231.00, 1277.00) pixels
        # Flux 22487563295 ph/s
        # Filter_transmission 0.0008
        # Start_angle 13.0000 deg.
        # Angle_increment 1.0000 deg.
        # Detector_2theta 0.0000 deg.
        # Polarization 0.990
        # Alpha 0.0000 deg.
        # Kappa 0.0000 deg.
        # Phi 0.0000 deg.
        # Chi 0.0000 deg.
        # Oscillation_axis  X, CW
        # N_oscillations 1
        ;

        _array_data.data
        ;
        --CIF-BINARY-FORMAT-SECTION--
        Content-Type: application/octet-stream;
             conversions="x-CBF_BYTE_OFFSET"
        Content-Transfer-Encoding: BINARY
        X-Binary-Size: 6247567
        X-Binary-ID: 1
        X-Binary-Element-Type: "signed 32-bit integer"
        X-Binary-Element-Byte-Order: LITTLE_ENDIAN
        Content-MD5: 8wO6i2+899lf5iO8QPdgrw==
        X-Binary-Number-of-Elements: 6224001
        X-Binary-Size-Fastest-Dimension: 2463
        X-Binary-Size-Second-Dimension: 2527
        X-Binary-Size-Padding: 4095

        ...

        --CIF-BINARY-FORMAT-SECTION----
        ;



Category groups:
    inclusive_group
    array_data_group
Category keys:
    _array_data.array_id
    _array_data.binary_id

Mandatory category: no

HTML version of draft dictionary created by modified version of makedicthtml by B. McMahon from modified version of imgCIF dcitionary 1.3.2 which is subject to the following copyright: