[Imgcif-l] proposed change in first line of imgcif files

James Hester jamesrhester at gmail.com
Tue Oct 7 05:06:01 BST 2008


---------- Forwarded message ----------
From: James Hester <jamesrhester at gmail.com>
Date: Tue, Oct 7, 2008 at 2:05 PM
Subject: Re: [Imgcif-l] proposed change in first line of imgcif files
To: "Herbert J. Bernstein" <yaya at bernstein-plus-sons.com>


Dear Herbert and Harry:

Herbert's suggestion is a fine one which I agree with.  What I took from
Harry's email was that he would be prepared to live in a regime where the
course of action to be taken if header and contents didn't match would be
application-specific, so that's good.

Perhaps we should nut out the technical details of the proposal in a new
thread for tidyness.

Best wishes,
James.


On Thu, Oct 2, 2008 at 11:39 PM, Herbert J. Bernstein <
yaya at bernstein-plus-sons.com> wrote:

> Dear James,
>
>  I have read your remarks and Harry's.  How about we say what we all seem
> to agree on:
>
>  If both a magic number and one or more CIF tags specify values for the
> same or related parameter(s), those values should agree according to the
> dictionary specified relationships among the parameter(s).  Similarly, if
> two CIF tags specify values for the same or related parameters, those values
> should agree according to the dictionary specified relationships among the
> parameter(s).  In all dictionaries, those relationships should be clearly
> explained in the explanatory text of the dictionaries.  In DDLm
> dictionaries, the ability to algorithmically specify those relationships
> should be exploited where appropriate.
>
>  This would clearly specify our common intent for clearly documented
> agreement among multiple presentations of the same information, and leave
> it to specific applications to follow whatever approach seems appropriate
> to the application developer in dealing with the error case of
> disagreement.
>
>  Now what we really need to do is to agree in the CIF tags that should
> agree with the imgCIF magic number.
>
>  To get everything in the same place, here is the magic number proposal
> along with a _ws...  tag to allow the information to be referenced
> algorithmically and, finally, a variant on James' specific tags for the
> newly added style and style_version
>
> 1.  What problem is being solved?.  As the use of imgCIF has increased, two
> very distinct sets of files have appeared: the "miniCBFs" used for the
> Pilatus 6m detector and more fully populated imgCIF files, such as the ones
> produced for ADSC detectors.  While the information necessary for processing
> can be discovered from context in handling a miniCBF, it may be necessary to
> read fairly far into the file to discover that the file is indeed a miniCBF,
> complicating the design of reading software.
>
> 2.  The proposed solution.  Currently CBF files begin with a magic number
> comment line
>            1         2         3         4         5
>   12345678901234567890123456789012345678901234567890
>   ###CBF: VERSION n.m
>
> We propose to extend the magic number comment line with two optional fields
> to read
>
>            1         2         3         4         5
>   12345678901234567890123456789012345678901234567890
>   ###CBF: VERSION n.m     style     style_version
>
> where "style" is a unique CBF style identifier left justified as a single
> word in columns 25-34 and "style_version" is a left justified integer in
> columns 35-44.
>
> Each style will be registered in a central repository along with
> information on the tags that will be carried for that style and a template
> of the tags that would be needed to fully populate the file.
>
> 3.  To faciltiate writing DDLm methods to work with this or any other magic
> number convention, a pseudo-tag _ws.prologue would allow application
> manipulation of the comments and whitespace from before a data block. The
> prefix ws would be reserved for this purpose and for similar, related tags.
>  No parser would have to work with this tag.  It is provided simply to have
> an unambigous algorithmic way to state the relationship with the following
> actual CIF tags.
>
> 4.  James Hester has proposed two new tags to be carried within an imgCIF
> file to agree with the style and style_version: _diffrn_detector.data_style
> and _diffrn_detector.data_style_version. Ignoring the 0-base, vs. 1-base
> indexing issues, just to state the relationship between the first comment
> line and these tags in pseudocode:
>
> _diffrn_detector.data_style = trim(_ws.prologue[25:34])
> _diffrn_detector.data_style_version = trim(_ws.prologue[35:44])
>
> I would suggest, however, that these two tags do not quite fit in the
> diffrn_detector category, inasmuch as they do not really describe the
> detector.  They actually describe the format of the data block being used to
> present the detector information.  Therefore I suggest that we start a new
> category:  data_block_format and define
>
> _data_block_format.data_style = trim(_ws.prologue[25:34])
> _data_block_format.data_style_version = trim(_ws.prologue[35:44])
>
>
> Regards,
>  Herbert
>
> P.S.  I think we should explore formally creating a standard following
> the ISO processes, working under the IUCr, but seeing if we can
> eventually get ISO to accept what we do.
>
> =====================================================
>  Herbert J. Bernstein, Professor of Computer Science
>   Dowling College, Kramer Science Center, KSC 121
>        Idle Hour Blvd, Oakdale, NY, 11769
>
>                 +1-631-244-3035
>                 yaya at dowling.edu
> =====================================================
>
>


-- 
T +61 (02) 9717 9907
F +61 (02) 9717 3145
M +61 (04) 0249 4148



-- 
T +61 (02) 9717 9907
F +61 (02) 9717 3145
M +61 (04) 0249 4148


More information about the imgcif-l mailing list