[fitsbits] Start of the CONTINUE keyword Public Comment Period

Rob Seaman seaman at noao.edu
Thu Jul 12 12:21:12 EDT 2007


Perhaps the discussion from 1993 and 1994 could be included verbatim,  
or linked by thread off the web page?  I'd hate to hold a debate on a  
topic that was already batted around a dozen years ago.  Is the  
registry page the entire text of the proposed convention?  Like Tom  
said, you need to cover the obvious corner cases, at least by  
verbiage like "it is undefined what string is conveyed if a card  
ending is '&' is not followed by CONTINUE".

1) Couldn't the reordering question be dealt with via appending &NNN  
instead of &?  That could resolve some of the corner cases, too, and  
you wouldn't need to reserve multiple CONT_NNN keywords.  We should  
be leery of implicitly requiring that all FITS headers be now  
considered strictly ordered, when there is no practical way to  
enforce this.  In particular, this has the side effect of making the  
interpolation of any new keyword questionable other than immediately  
before END.

2) What is the reason for not strictly requiring that such a  
continuation string end with ampersand-quote?  What advantage is  
conveyed by permitting semantically null trailing whitespace that  
merely confuses the handling?  Surely it should be incumbent on the  
author of such keywords to trim meaningless characters, not  
generations of readers yet unborn to dodge around them.

3) One suspects a number of conventions will depend on valueless  
keywords.  The standard (2.1b) is rather convoluted on how this works:

	5.1.2.2 Value Indicator (bytes 9–10)
	If this field contains the ASCII characters “=”, it indicates the  
presence of a value field
	associated with the keyword, unless it is a commentary keyword as  
defined in §5.4.2.4.
	If the value indicator is not present or if it is a commentary  
keyword then columns 9–80
	may contain any ASCII text.

Which basically just acts to preserve the legality of COMMENT,  
HISTORY and <blank> keywords to have an equals sign in column 9.

4) In general, the nature of a convention versus a standard is that  
others are perfectly within their rights to violate a convention for  
either good or not-so-good reasons.  The behavior here seems simple,  
but that's where the risk lies.  Nobody would be unsurprised that  
deleting the INHERIT keyword turns inheritance off - it's almost a  
feature.  Delete the CHECKSUM keyword and you simply remove an  
assertion about the contents of the file.  One can even productively  
use DATASUM and CHECKSUM independently.  (I'll have to check if we  
made that legal.)  On the other end of the spectrum, conventions like  
tiled image compression and foreign file encapsulation involve very  
specific FITS usage - a file must adhere to the standard and  
additionally must adhere to the complex requirements of the convention.

The CONTINUE convention, however, is different in providing a more  
general capability that could be used, for instance, within any other  
convention.  Deleting a CONTINUE card could in principle change the  
meaning of any header in arbitrary ways.  I wonder if perhaps we  
shouldn't rather be discussing how best to add this capability to the  
core FITS standard.  Whether convention or new feature of the  
standard, however, the loopholes should be closed before adoption.

Rob





More information about the fitsbits mailing list