[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Reply to: [list | sender only]
Re: [ddlm-group] Revisiting list delimiters
- To: Group finalising DDLm and associated dictionaries <ddlm-group@iucr.org>
- Subject: Re: [ddlm-group] Revisiting list delimiters
- From: "Herbert J. Bernstein" <yaya@bernstein-plus-sons.com>
- Date: Thu, 7 Apr 2011 07:19:01 -0400 (EDT)
- In-Reply-To: <BANLkTimd-AP5r-iUDKEdw7y5Qo1tKhgEVQ@mail.gmail.com>
- References: <BANLkTimGoJezyeXOq_4uPfOy7n_iP0WHBA@mail.gmail.com><alpine.BSF.2.00.1104060657350.94090@epsilon.pair.com><BANLkTimd-AP5r-iUDKEdw7y5Qo1tKhgEVQ@mail.gmail.com>
Dear James, I think your productions are fine and support them -- good idea. Inasmuch as we are not working from a reference implementation, I would suggest we fill in as much detail as possible now on the boundary cases to avoid future confusion. I would suggest: <whitespace> does allow inclusion of comments, which is the normal interpretation. and that the production <listdatavalue> = {<list>|<string>}<whitespace>* means exactly what it says, which would mean that [,,] is valid syntactically. Rather than make that into a syntax error as you said in your first text, I would suggest keeping the parse simple and consistent and just giving that one of the obvious meanings using either null data values or empty strings (which I would suggest for CIF2 simply be equivalent), so that [,,] would have the same meaning as [.,.,.] or ["","",""] or ['','','']. That does no mean I recommend writing [,,] as good style, but it has always been the case that CIF has accepted a lot of strange ways of doing CIFS as valid for read and has had good recommendatons for writing so that the result is "clean" for people to read. Regards, Herbert ===================================================== 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@dowling.edu ===================================================== On Thu, 7 Apr 2011, James Hester wrote: > Dear All, > > I apologise for the lack of detail in my introductory posting. If > there is to be no quick agreement on the following, more formal, > proposal, then I am happy to withdraw the proposal completely and we > will continue on our previously agreed path. > > Note that I see no value in picking over Nick et. al's code as that > code is not the final arbiter of every detail of what is or isn't in > the standard - I was simply pointing out that it would be less work to > fix the code to conform to the new standard if we don't deviate too > far from the original. > > Here is my formal proposal: that a list be described by the following > productions: > > <list> = '[' <whitespace>* {<listdatavalue> {<comma or > whitespace><listdatavalue>}*}* ']' > <listdatavalue> = {<list>|<string>}<whitespace>* > > > On Wed, Apr 6, 2011 at 9:14 PM, Herbert J. Bernstein > <yaya@bernstein-plus-sons.com> wrote: >> Dear James, >> >> Before we settle this, I would suggest we all look >> at Nick, Syd and Ian's demonstration software, so we >> are all working from the same base. Is there a >> URL we can all go to to see a reference implementation >> of STAR2, or should we be looking at the DDLm code >> from 2006 and 2007 so see the handling of lists >> referred to. I am particularly concerned about the >> handling of boundary cases, such as trailing commas >> and empty pairs of commas, and embedded comments, >> where actual code is very helpful in understanding >> what is intended. >> >> Regards, >> Herbert >> ===================================================== >> 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@dowling.edu >> ===================================================== >> >> On Wed, 6 Apr 2011, James Hester wrote: >> >>> Dear DDLm-group, >>> >>> In the process of preparing for a vote on accepting the DDLm >>> dictionary, I have come to the conclusion that we need to revisit the >>> question of the separator character for lists. This is because the >>> only fully-functional software for processing DDLm domain dictionaries >>> (Nick, Syd and Ian's demonstration software) expects a comma >>> separator, and my understanding is that Syd and Nick (now) are >>> strongly in favour of sticking with comma as the list separator for >>> STAR2. Furthermore, other non-CIF domains collaborating with Nick and >>> Syd are already using comma as a list separator in STAR2 data files. >>> Additionally, I've formed the view that a comma is a useful visual aid for >>> distinguishing looped items and listed items. >>> >>> I've reviewed our previous discussion starting at message: >>> http://www.iucr.org/__data/iucr/lists/ddlm-group/msg00338.html and >>> culminating in a tally at >>> http://www.iucr.org/__data/iucr/lists/ddlm-group/msg00406.html (with a >>> late vote after this from John W. for spaces only). It seems that the >>> strongest preferences expressed were from Herb (for comma and space) >>> and from John W (for space only in order to avoid mixed-delimiter >>> strings). >>> >>> I would therefore like to propose that we switch to allowing comma >>> *or* space as list item delimiters. This will considerably simplify >>> the work needed to adapt the current DDLm/dREL software and >>> documentation. I am also open to switching back to comma only, but think >>> that that might meet with some resistance. >>> >>> I apologise for reopening this old discussion, but it looks like >>> reintroducing commas will produce the best practical outcome. Note >>> that I would propose keeping the behaviour that was generally accepted >>> in the previous discussion, i.e. >>> >>> * two commas without an intervening value is a syntax error, as is a >>> trailing comma >>> * lists may use a combination of comma and whitespace separation >>> (although one might expect that to be vanishingly rare in practice) >>> but this should be discouraged. >>> >>> If I hear no strong dissenting voices, I will produce some draft text >>> for your comment >>> then edit it into the draft standard when it next comes before COMCIFS. >>> >>> Once we have resolved this issue, I will edit the draft DDL >>> specification to take into >>> account variations in CIF2 syntax from that assumed for the original >>> specification, then >>> present it for your vote. >>> >>> James. >>> -- >>> T +61 (02) 9717 9907 >>> F +61 (02) 9717 3145 >>> M +61 (04) 0249 4148 >>> _______________________________________________ >>> ddlm-group mailing list >>> ddlm-group@iucr.org >>> http://scripts.iucr.org/mailman/listinfo/ddlm-group >>> >> _______________________________________________ >> ddlm-group mailing list >> ddlm-group@iucr.org >> http://scripts.iucr.org/mailman/listinfo/ddlm-group >> > > > > -- > T +61 (02) 9717 9907 > F +61 (02) 9717 3145 > M +61 (04) 0249 4148 > _______________________________________________ > ddlm-group mailing list > ddlm-group@iucr.org > http://scripts.iucr.org/mailman/listinfo/ddlm-group >
_______________________________________________ ddlm-group mailing list ddlm-group@iucr.org http://scripts.iucr.org/mailman/listinfo/ddlm-group
Reply to: [list | sender only]
- References:
- [ddlm-group] Revisiting list delimiters (James Hester)
- Re: [ddlm-group] Revisiting list delimiters (Herbert J. Bernstein)
- Re: [ddlm-group] Revisiting list delimiters (James Hester)
- Prev by Date: Re: [ddlm-group] Revisiting list delimiters
- Next by Date: Re: [ddlm-group] Revisiting list delimiters. .
- Prev by thread: Re: [ddlm-group] Revisiting list delimiters
- Next by thread: Re: [ddlm-group] Revisiting list delimiters. .
- Index(es):