Discussion List Archives

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ddlm-group] A modest addition to the DDLm spec

First thought is how does this work in loops?

loop_ _item
'abc' + 'def'

But I need to check whether + is one of the characters that is not allowed to start a
non-delimited string...

Otherwise I see no reason not to explore this.



From: Herbert J. Bernstein <yaya@bernstein-plus-sons.com>
To: Group finalising DDLm and associated dictionaries <ddlm-group@iucr.org>
Sent: Thursday, 30 September, 2010 14:58:59
Subject: [ddlm-group] A modest addition to the DDLm spec

The following issue came up during the encodings group discussion, but
is more properly a DDLm issue.  In order to simplify algorithmic
conversion of existing CIF1 quoted strings to valid CIF2 strings,
I propose the addition of the python string concatenation operator, "+",
in CIF2 documents.  The main value of this addition is to permit a
simple algorithmic conversion of CIF1 strings with embedded quote
marks to CIF2 strings that end on the first occurrence of the initial
quote.  While the use of text fields will suffice in many cases,
for regular expressions it is clearer and simpler to just break the
string, insert the terminal quote mark, insert a "+" and then restart
the string with a different quote mark.

Formally the proposal is:

When a quoted string is given as a data value in a CIF2 document,
it may be presented as multiple quoted strings concatenated by the
"+" operator.  For example

the CIF1 construct from the mmCIF dictionary


'[][ \t_(),.;:"&<>/\{}'`~!@#$%?+=*A-Za-z0-9|^-]*'

could be presented as


'[][ \t_(),.;:"&<>/\{}'+"'`~!@#$%?+=*A-Za-z0-9|^-]*"



'[][ \t_(),.;:"&<>/\{}' + "'`~!@#$%?+=*A-Za-z0-9|^-]*"



'[][ \t_(),.;:"&<>/\{}'
+ "'`~!@#$%?+=*A-Za-z0-9|^-]*"

in CIF2

which also can be very useful in dealing with very long regular expressions
and other very long strings that are intended to be handled as a
single line

rather than having to use a text field.

Comments appreciated.


  Herbert J. Bernstein, Professor of Computer Science
    Dowling College, Kramer Science Center, KSC 121
        Idle Hour Blvd, Oakdale, NY, 11769

ddlm-group mailing list
ddlm-group mailing list

Reply to: [list | sender only]
International Union of Crystallography

Scientific Union Member of the International Science Council (admitted 1947). Member of CODATA, the ISC Committee on Data. Partner with UNESCO, the United Nations Educational, Scientific and Cultural Organization in the International Year of Crystallography 2014.

International Science Council Scientific Freedom Policy

The IUCr observes the basic policy of non-discrimination and affirms the right and freedom of scientists to associate in international scientific activity without regard to such factors as ethnic origin, religion, citizenship, language, political stance, gender, sex or age, in accordance with the Statutes of the International Council for Science.