APPENDIX H
1126
Compatibility and Implementation Notes
162. Although the
ID
entry is not required, all Adobe applications that produce
PDF files include this entry. Acrobat adds this entry when saving a file if it
is not already present.
163. Adobe applications pass the suggested information to the MD5 message
digest algorithm to calculate file identifiers. Note that the calculation of
the file identifier need not be reproducible; all that matters is that the
identifier is likely to be unique. For example, two implementations of this
algorithm might use different formats for the current time, causing them
to produce different file identifiers for the same file created at the same
time, but the uniqueness of the identifier is not affected.
164. The Acrobat Web Capture plug-in treats external streams referenced with-
in a PDF file as auxiliary data. Such streams are not used in generating the
digital identifier.
165. In Acrobat 4.0 and later versions, if the indirect reference to an image
XObject is not removed from the
O
array when its reference count reaches
0, the XObject is never garbage-collected during a save operation. The im-
age set’s reference to the XObject may thus be considered a weak one that
is relevant only for caching purposes; when the last strong reference goes
away, so does the weak one.
166. Acrobat viewers use an indirect object reference to a shared string for each
URL in a URL alias dictionary. These strings can be shared among the
chains and with other data structures. It is recommended that other PDF
viewer applications adopt this same implementation.
167. Acrobat provides various user-specified options for determining how the
region specified by the crop box is to be imposed on the output medium