LISTSERV mailing list manager LISTSERV 16.0

Help for DATETIME Archives


DATETIME Archives

DATETIME Archives


DATETIME@C4VLPLISTSERV01.LOC.GOV


View:

Message:

[

First

|

Previous

|

Next

|

Last

]

By Topic:

[

First

|

Previous

|

Next

|

Last

]

By Author:

[

First

|

Previous

|

Next

|

Last

]

Font:

Proportional Font

LISTSERV Archives

LISTSERV Archives

DATETIME Home

DATETIME Home

DATETIME  April 2011

DATETIME April 2011

Subject:

Re: Some comments about the BNF

From:

"Ray Denenberg, Library of Congress" <[log in to unmask]>

Reply-To:

Discussion of the Developing Date/Time Standards <[log in to unmask]>

Date:

Thu, 28 Apr 2011 17:36:34 -0400

Content-Type:

text/plain

Parts/Attachments:

Parts/Attachments

text/plain (189 lines)

 From: Saašha Metsärantala
> Sent: Wednesday, April 27, 2011 8:55 AM

 
> > "Century" is explicitly undefined in this specification.
> which I consider is really good! The specification also explains at
> #203 that
> 
> > 00 * first century
> Thus, it seems that "00" would be "explicitly undefined" because the
> term "century" is explicitly undefined.

No, the intent is that the term "century" be undefined, but that, still, '00' means " The interval beginning with year 0000 and ending with year 0099".  I have changed the wording. (And similarly, '20th Century' to "The interval beginning with year 1900 and ending with year 1999.")



> Do both "+00" and "-00" mean "00"? Does this apply to centuries? What
> is the name of the century before the "first century" (noted "00"). If
> both "+00" and "-00" mean "00", we should try to clarify how we handle
> centuries around year "0001".

I think that the change I noted above solves this issue. We do not need to have "named" centuries. 


> > there is no disinction between negative and positive zero, they are
> > both zero.
> The context may also be of great importance. Let's consider
> zoneOffsetHour, where 2011-04-26T12:00:00+00:30 is not the same as
> 2011-04-26T12:00:00-00:30, for example. Thus, "+00" is not the same as
> "-00" when the sign stands before a zoneOffsetHour.

Well I'm talking only about signed zero, not when the plus or minus sign is used for addition or subtraction, or when it is used for a non-zero value, as 00:30, which is not the same case as 00:00.
Clearly, 2011-04-26T12:00:00+00:30 is not the same as 2011-04-26T12:00:00-00:30,
But 2011-04-26T12:00:00+00:00 is the same as 2011-04-26T12:00:00-00:00,


>  I proposed to restrict "February, 29th" to leap years 

I feel that this is an un-necessary complexity.  I'd like to know if anyone else finds this necessary. (Even my wristwatch doesn't restrict February 29 to leap years.)



> > > > choiceListElement = date | date ".." date | earlier | later
> > > choiceListElement = date "," date | date ".." date | earlier | later | date "," choiceListElement | choiceListElement "," date
> > Sorry, this one is not making sense to me.
> My aim is to avoid choice lists with only one date, like this one
> 
> [2011]

This is another case where I'd prefer not to add a significant amount of BNF just to avoid a harmless (albeit not very useful) construct. 



I will address the comments on duration in a separate thread. 




> > > not allow non-integer years, such as 1.2345e3
> This would lead to a year with a value space of 1234.5 which I consider
> should be avoided.

> > > longYear = "y" "-"? positiveDigit ( digit )* ( "e" yearExponent |
> > > digit digit digit digit)
> > positiveDigit ".e" yearExponent
> 
> > Will produce  1.7e8
> I wonder what in today's BNF corresponds to the decimal "7" of this
> example, when there is no room between the dot and the "e". Anyway, I
> consider that the dot is error-prone and would prefer to write 17e7 or
> 170e6 for 170 million years.

Ok. I don't buy the "dot is error-prone" argument but the integral-year argument is convincing. 



> "^" for expanded names
> (with curly braces around the namespace in accordance to the de-facto
> standard), for example, such as
> 
> 2011-21^"{http://www.example.org}some_definition_of_spring"

Ok, I've changed 'q' to '^'.

 

> there is a semantic difference between
> 
> 2011?
> 
> on the one hand and
> 
> (2011)?

No.


> 
> or between
> 
> 2011?-04
> 
> on the one hand and
> 
> (2011)?-04

The first is not intended to be valid. That is, if there are no parentheses then there may only be a single '?' and it has to be at the end of the date string.  I'll re-examine the bnf to be sure this is clear.

 
> > > the numbering #317, #3171 and #316 in our specification
> > I have wanted to retain original numbering
> My aim was not to focus on four digits numbers. My suggestion was to
> move
> #316 upwards by two rows to retain original numbering. 

Ok.

> When it comes to lists, I would appreciate a distinction between "dates
> with x's" and "date without x's", which would allow for a more accurate
> formulation. 

Right now x's are allowed in dates within a list.  Thus,

{1959, 196x} would mean any of the years 1959 through 1969.   I can't see any reason not to allow this. I'm not sure what you are asking for.


....Furthermore, I wonder whether we could allow for
> temporalExpression in lists and whether we propose any c14n within
> lists.

Right now, the bnf would not allow a temporal expression in a list. While I could imagine this might be useful, I would want to see a use case before changing the bnf to allow it. 


> > consecutives | date ("," inclusiveListElement)+
> ( inclusiveListElement "," )* ( consecutives | date ","
> inclusiveListElement | inclusiveListElement "," date ) ( ","
> inclusiveListElement )*
> 
> This would thus allow for lists such as:
> 
> {2011..2013, 2015}

> clarify and formulate the reasons behind the SYNTACTIC differences
> between inclusive lists and choice lists.

I've re-examined this and concluded that there really doesn't need to be a difference (the reasons I had weren't important enough for the distinction) and I have re-written this as:

inclusiveList = “{“ listContent “}”
choiceList = “[“ listContent “]”

listContent = earlier
| (earlier “,”)? listElement ("," listElement)*
| (earlier “,”)? (listElement",")+ (later)
| (earlier “,”)? (later)

listElement = date | consecutives


I think that handles everything.


 
> An other suggestion is also to reformulate the second example of #317,

I have removed that example. The BNF doesn't support, it would be complex to do so, and I had intended to delete it anyway.



> > uncertOrApprox = date ("?" | "~")
> uncertOrApprox = ( dateAndTime | longYear | yearMonth | yearMonthDay )
> ( "~" | "?" ) ( qualifier )?
> 
> This would allow for uncertain or approximate long years and also avoid
> constructs like
> 
> 2011?? (* with double question marks *)

But the date definition already includes yearMonth and yearMonthDay (as well as some other things that yours doesn't). It doesn't include longYear or dateAndTime.

So I have re-written it as:
uncertOrApprox = (date | dateAndTime | longYear) ("?" | "~")

However I cannot see how the double question mark can be constructed. 


Thanks for all the comments.

--Ray

Top of Message | Previous Page | Permalink

Advanced Options


Options

Log In

Log In

Get Password

Get Password


Search Archives

Search Archives


Subscribe or Unsubscribe

Subscribe or Unsubscribe


Archives

August 2019
February 2019
December 2018
November 2018
October 2018
January 2018
August 2017
July 2017
June 2017
April 2017
March 2017
February 2017
August 2016
July 2016
May 2016
April 2016
March 2016
February 2016
January 2016
December 2015
November 2015
October 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
December 2014
November 2014
March 2014
September 2013
May 2013
February 2013
October 2012
September 2012
August 2012
May 2012
March 2012
December 2011
November 2011
September 2011
August 2011
July 2011
June 2011
May 2011
April 2011
March 2011
February 2011
January 2011
December 2010
November 2010
October 2010
September 2010
August 2010
July 2010
June 2010
February 2010
January 2010
December 2009
November 2009

ATOM RSS1 RSS2



LISTSERV.LOC.GOV

CataList Email List Search Powered by the LISTSERV Email List Manager