PNG Chunk Registration Process, draft 19960926



Status of this Memo

This document is an informal draft of the PNG development group.

Comments on this document can be sent to the PNG specification maintainers at or at

Distribution of this memo is unlimited.

At present, the latest version of this document is available on the World Wide Web from


Copyright © 1996 Thomas Boutell

Permission is granted to copy and distribute this document for any purpose and without charge, provided that this notice is preserved, and that any substantive changes or deletions from the original are clearly marked.


This document describes the approval process for registering public PNG chunks. Persons who have contributed to the PNG mailing list at least 180 days prior to the end of the voting period are eligible to vote. A two-week voting period follows a two-week discussion period. Votes are cast by electronic mail to the png-list mailing list. Approval of a chunk registration requires at least 10 YES votes with at least twice as many YES votes as NO votes.

Table of Contents

1. Purpose

To formally approve or reject a chunk for registration as a public chunk as described in the PNG 1.0 specification. This method can also be used to resolve other issues that need to be decided by the PNG group.

2. Justification and additional aims

Discussions on the PNG discussion list ( at present fail to reach a clear consensus on the desirability of particular chunk definitions. The formal approval process is intended to aid such decisions by To meet these ends the formal process is based on a discussion and voting process exercised over a limited period of time.

3. Prerequisites

4. Voting

4.1. Initiation

Voting can be initiated after a two-week discussion period. The proposed chunk specification must be available and must not change for a period of at least two weeks before a vote can be called for. The chunk proponent starts this clock running by notifying the list that the proposed specification is available. Short proposals should also be posted to the list, to save people the trouble of downloading them. If discussion exposes flaws, the specification can be revised, thus starting a new two-week discussion period.

Any person can initiate the voting period by submitting the first YES vote on an identified specification. This message also serves as the call for votes. This message must not be received by the png-list server before two weeks have elapsed since the message initiating or reinitiating the discussion period was received by the png-list server. There is no provision for issuing a call for votes without also voting YES at the same time. The message must clearly identify the specification to be voted upon. Appendix 1 gives the recommended format for a call for votes.

Casting votes

Votes are cast by sending a message to the png-list indicating a YES, NO, or ABSTAIN vote. Voters must take care to make their intentions clear (i.e. "YES" or "NO" or "ABSTAIN" and precisely what chunk specification is being voted on). It is possible that votes will be tallied automatically. Therefore, to ensure that a vote is correctly registered, the first five lines of the message must conform to the following format:
Name <voter@host.domain>
For example:
Glenn Randers-Pehrson <>
There should be no other topics of discussion in the same message. An "Oh, by the way, I vote NO on cNEW" buried in the text of a long message might get overlooked by a person tallying the votes and would most certainly be missed by an automatic vote tallying robot. It is acceptable and useful to include additional explanations in the message, but the vote itself must be placed at the beginning.

The subject of the message must contain the word "VOTE" (in uppercase letters) and the name of the proposal being voted upon. The string "Re:" must not not appear in the subject. An example of a correctly formatted subject line is

Subject: VOTE on cNEW 19991231.
Only one vote should be included in a message. If a group of chunks is being voted on as a whole, then only one message is necessary, but if different chunks are being separately voted upon during the same period, separate messages are required. The decision whether to group or separate chunks for voting is up to the person casting the initial YES vote.

Persons are expected to identify themselves with their own name and their preferred e-mail address on the fifth line of the message, regardless of the account name from which they actually submit the message.

Any votes received prior to the call for votes (i.e. the first YES vote after the close of the discusson period) will not be counted.

Changing votes

A person can submit a changed vote any time prior to the expiration of the voting period. Only the latest vote, determined by the time it was mailed by the voter (from the "Date:" field of the message), that is received by the png-list server prior to the expiration of the voting period, will be counted. ABSTAIN votes are not counted. A person can cast an ABSTAIN vote to withdraw a YES or NO vote without having to cast a NO or YES to countermand it. The first YES vote, even if countermanded, continues to serve as the call for votes.

The name and e-mail address on the fifth line of the changed vote must match those of the original vote, even if the new vote is submitted from another e-mail account.

4.4. Termination

The voting period ceases two weeks after the initiation, at the same time of day as the initiation. The time of the call for votes is determined by the "Received:" line generated by the png-list e-mail server, e.g. in the message header
"Received: from ( [])
by (8.6.10/8.6.6.yuck) with ESMTP id KAA10764 for 
<>; Sun, 22 Sep 1996 10:11:58 -0500"
the date and time are "Sun, 22 Sep 1996 10:11:58 -0500", and the voting period ends on Sunday, 06 Oct 1996 10:11:58 -0500.

The voting period ceases immediately and the proposal is rejected upon approval of a competing specification for the same chunk name.

5. Decision

A chunk specification is approved if both of the following conditions are met at the end of the voting period: If these conditions are met, then the chunk becomes registered immediately upon the close of the voting period, and people can start using it in its registered form. The PNG editors will include the chunk specification, or a reference to it, in the next release of the PNG documentation.

If these conditions are not met the chunk specification is rejected. The same chunk cannot be brought up again for another discussion period and vote either until a 180-day waiting period has elapsed, to allow for implementation and testing, or until a substantial change to the specification is made.

6. Franchise

Any person is eligible to vote who has:

7. Time Stamps

The "Received:" field generated by the png-list server is used to determine the exact times of the the beginning of the discussion period and the voting period, the close of the voting period, and for all other timing purposes except that the sender's "Date:" field is used to determine the order of precedence of multiple votes from the same person.

8. Adoption of this process

Adoption of this process for registering PNG chunks will be voted upon using the same process as used for approving a chunk registration. It will take effect immediately upon the successful completion of the required discussion and voting periods. Discussion periods for proposed chunks, but not voting periods, can run concurrently with the voting period for adoption of this process.

If approved, this document will be converted by the editor to a non-draft form and maintained in the appropriate public documents directory on the png-group discussion list FTP server.

The process described in this document can also be used in a suitably amended form for registering chunks in related formats such as MNG, provided it is separately adopted for use for the other format.

9. Security considerations

This process depends upon the integrity of the persons involved. We have no reason to believe that other measures are required. In the event of a prank or fraudulent vote, we will deal with it harshly, outside the scope of this process.

This process depends upon the continued availability of the png-list server and its connection to the Internet. We will deal with system failures on a case-by-case basis, outside the scope of this process.

10. Appendix 1: Sample call for votes

This is a recommended format for a call for votes, to be used by the first person submitting a YES vote. Only the first five lines of the message, which contain your own YES vote, are mandatory; the rest can be omitted if it is clear that all participants are already aware of the voting process. When there has been a long lapse between votes, or when new people have become eligible to vote, the complete message should be sent.
Subject: VOTE on CNEW 19991231

cNEW 19991231
My Name <myusername@myhost.mydomain>

This is a call for votes on the PNG proposal

     cNEW 19991231

To vote on this proposal, send a message to

The subject line of your message must contain the words

     VOTE on cNEW 19991231

and must NOT contain the string "Re:" (i.e. do not try to
cast your vote by "replying" to this message.  You must
manually construct the proper subject line).

The body of your message must contain the following five
lines, which must appear first in the message.

cNEW 19991231
Your Name <yourusername@yourhost.yourdomain>

After these five lines you can add an explanation of your
vote, if you desire.  Providing the rationale for a NO vote
is particularly encouraged.

The voting period closes exactly two weeks after the time
that this message or any earlier valid YES vote on this proposal
was received by the png-list server (

You can change your vote by submitting a new message.  Only
the last message sent by you and received by the png-list
server prior to the close of the voting period will be counted.
Your messages can be sent from different e-mail accounts, but
the fifth line of all of your messages, containing your name
and your preferred e-mail address, must be identical.

You are eligible to vote if your earliest message to png-list
was received at least 180 days earlier than the close of the
voting period.


                       Chunk Proponent

11. Credits

Contributors' names are presented in alphabetical order:

12. Editor

Glenn Randers-Pehrson
U.S. Army Research Laboratory
Aberdeen Proving Ground, MD 21005-5066

Phone: (410) 278-6554

EMail: or

End of PNG Chunk Registration Process document. Expires 26 Mar 1997.