Note also that the same chunk can appear more than once if necessary, if so specified in the description of the chunk. This is sometimes necessary in order to implement streaming encoders. The chunk-ordering mechanism present in the first two drafts has been dropped. Instead, rules regarding chunk order are stated in the description of each chunk. Chunks which are critical to the successful display of the file's contents begin with any other uppercase letter.
Critical chunks are necessary in order to properly display the contents of the file.
If an implementation encounters a critical chunk type it does not know how to handle, it must indicate this to the user and not display the contents of the file. A hypothetical vector-graphics chunk would also be a necessary chunk, since without rendering it the image would appear to be blank, or would contain a background bitmap with no other information. Ancillary chunks are ancillary information that enhances the image in some fashion, but without which the image can still be successfully displayed. Examples are the comment and copyright chunks. The author will assign a permanent, unique chunk type.