png-registration-20070523 Wed May 23 07:00:00 EDT 2007 PNG-GROUP-DRAFT PNG Development Group PNG-Registration png-mng-misc@lists.sourceforge.net Expires: 23 Nov 2007 23 May 2007 PNG Chunk Registration Process, draft 20070523 File png-registration-20070523.txt 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 png-mng-misc@lists.sourceforge.net or at png-group@w3.org. Distribution of this memo is unlimited. At present, the latest version of this document is available on the World Wide Web from ftp://ftp.simplesystems.org/pub/png- group/documents/. Notices Copyright (c) 1996 Thomas Boutell, 2007 Glenn Randers-Pehrson 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. Abstract This document describes the approval process for registering public PNG chunks. Persons who have contributed to a 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-mng-misc mailing list. Approval of a chunk registration requires at least 5 more YES votes than NO votes, with at least twice as many YES votes as NO votes. PNG Development Group [Page 1] PNG-GROUP-DRAFT PNG Chunk Registration Process 20070523 23 May 2007 Table of Contents 1. Purpose ........................................................ 2 2. Justification and additional aims .............................. 2 3. Prerequisites .................................................. 2 4. Voting ......................................................... 4 4.1. Initiation ................................................ 4 4.2. Casting votes ............................................. 4 4.3. Changing votes ............................................ 5 4.4. Termination ............................................... 5 5. Decision ....................................................... 6 6. Franchise ...................................................... 6 7. Time Stamps .................................................... 7 8. Adoption of this process ....................................... 7 9. Security considerations ........................................ 7 10. Appendix 1: Sample call for votes ............................. 7 11. Credits ....................................................... 9 12. Editor ........................................................ 9 1. Purpose To formally approve or reject a chunk for registration as a public chunk as described in the PNG 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 (png-mng-misc@lists.sf.net) sometimes fail to reach a clear consensus on the desirability of particular chunk definitions. The formal approval process is intended to aid such decisions by * Identifying consensus when it exists. * Giving a limited time period within which objections can be raised. * Encouraging discussion and preventing ambiguities when one party to the discussion simply falls silent. To meet these ends the formal process is based on a discussion and voting process exercised over a limited period of time. 3. Prerequisites * A proposed specification of the chunk must exist in electronic PNG Development Group [Page 2] PNG-GROUP-DRAFT PNG Chunk Registration Process 20070523 23 May 2007 form in a location on the current png-group discussion list FTP server. At present this is the tree based at ftp://ftp.simplesystems.org/pub/png-group/documents/. The proposal must be in a final publishable format, such as that of the PNG 1.0 specification and PNG extensions documents found in ftp://ftp.simplesystems.org/pub/png/documents/. * The specification can be a whole single file, a group of files (which must be named by a single ftp accessible directory name and implies all files in that directory and all directories beneath it), or an identified part of a single file. * The specification should describe the proposed chunk in its unregistered form, to avoid the risk of premature distribution of documents describing public chunks that are not in their final form. The editors will make the necessary changes to the final document, by changing the second letter of the chunk name to uppercase and by removing any private version identification. If any other changes are needed, instructions to the editors should be provided in the proposal. * The specification or the call for votes must state the proposed disposition of the registered chunk: * Inclusion in the PNG core specification * Inclusion in the PNG extensions document * Inclusion in an existing separate document * Inclusion in a new separate document Note that the names of all formally registered chunks will either appear in the PNG specification or in the PNG extensions document. The editors will make the appropriate changes to those documents when a chunk is registered. * Throughout the two-week voting period the specification must remain absolutely unchanged. The two-week discussion period must be restarted upon making any change to the proposed specification, except for * Trivial formatting, grammatical, or spelling changes that do not change the meaning of the specification. * A printing date or authorship change. Upon the objection (on grounds that the change is nontrivial) of any person who would be eligible to vote if the voting period were to start immediately after the close of the discussion period, received by the png-mng-misc server prior to the call for votes, the two-week discussion period must be restarted in the event of any such change. The beginning of the new discussion period will be the time that the message announcing the change was received by the png-mng-misc server. PNG Development Group [Page 3] PNG-GROUP-DRAFT PNG Chunk Registration Process 20070523 23 May 2007 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, execept for trivial editorial changes, 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 a Call for vote on an identified specification. This message must not be received by the png-mng-misc server before two weeks have elapsed since the message initiating or reinitiating the discussion period was received by the png-list server. The message must clearly identify the specification to be voted upon. Appendix 1 gives the recommended format for a call for votes. 4.2. Casting votes Votes are cast by sending a message to the png-mng-misc 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: {YES|NO|ABSTAIN} Name For example: YES cNEW 19991231 ftp://ftp.simplesystems.org/pub/png-group/documents/ png-proposed-chunks-19991231.html 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 PNG Development Group [Page 4] PNG-GROUP-DRAFT PNG Chunk Registration Process 20070523 23 May 2007 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), your vote, 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 YES 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 will not be counted. Any votes not meeting the formatting specifications for the subject and first five body lines described above will not be counted. 4.3. 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, can serve as the call for votes if a separate "call for vote" was not issued. 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 PNG Development Group [Page 5] PNG-GROUP-DRAFT PNG Chunk Registration Process 20070523 23 May 2007 "Received: from grommit.inria.fr (grommit.inria.fr [138.96.48.84]) by dworkin.wustl.edu (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: * Five more YES votes than NO votes are received. * At least twice the number of YES votes as NO votes are received. 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: * Submitted their first (or any subsequent) message received by the png-mng-misc or png-mng-implement list server, or their predecessors, png-list@ccrc.wustl.edu or png-implement@ccrc.wustl.edu, at least 180 days before the termination of the voting period. * Not voted on the same matter during the present voting period using a different name or e-mail address on the fifth line of the vote message. PNG Development Group [Page 6] PNG-GROUP-DRAFT PNG Chunk Registration Process 20070523 23 May 2007 7. Time Stamps The "Received:" field generated by the png-mng-misc 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. Prior to such approval, the PNG group may use the procedure by consensus. 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. Only the first five lines of the message, which contain the words "CALL for 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: CFV: CNEW 19991231 PNG Development Group [Page 7] PNG-GROUP-DRAFT PNG Chunk Registration Process 20070523 23 May 2007 CALL for VOTE cNEW 19991231 ftp://swrinde.nde.swri.edu/pub/png-group/documents png-proposed-chunks-19991231 My Name This is a call for votes on the PNG proposal cNEW 19991231 To vote on this proposal, send a message to png-mng-misc@lists.sf.net The subject line of your message must contain the words VOTE YES|NO|ABSTAIN: 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. YES | NO | ABSTAIN cNEW 19991231 ftp://swrinde.nde.swri.edu/pub/png-group/documents png-proposed-chunks-19991231 Your Name 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 was received by the png-list server (png-mng-misc@lists.sf.net) 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-mng-misc or png-mng-implement was received at least 180 days earlier than the close of the voting period. regards, Chunk Proponent PNG Development Group [Page 8] PNG-GROUP-DRAFT PNG Chunk Registration Process 20070523 23 May 2007 11. Credits Contributors' names are presented in alphabetical order: * Thomas Boutell, boutell at boutell.com * John Bowler, jbowler at acm.org * Adam M. Costello, png.amc+0 at nicemice.net * Lee Daniel Crocker, lee at piclab.com * Tom Lane, tgl at sss.pgh.pa.us * Glenn Randers-Pehrson, glennrp at gmail.com * Greg Roelofs, newt at pobox.com * Willem van Schaik, willem at schaik.com 12. Editor Glenn Randers-Pehrson PNG Development Group 611 Rivershore Court Edgewood MD 21040 Phone: (410) 676-6950 EMail: glennrp at gmail.com End of PNG Chunk Registration Process document. Expires 23 Nov 2007. PNG Development Group [Page 9]