Naming order of photos (PIF)
PIF (Russian: ПИФ [pif]) — Порядок Именования Фотографий.
Order (with a capital) — this document or the rules set forth in it, or both, depending on the context.
DCS — digital control system (operating, file, database, etc.).
Russian — language represented by ru code in ISO 639-1:2002.
English — language represented by en code in ISO 639-1:2002.
About this Order
The Order is officially supported in Russian and English only.
The original copy of the Order is set forth in Russian.
This copy of the Order is set forth in English.
When specifying the interpretation of the Order, the copy of the Order in Russian is priority.
The Order is originally intended for naming of digital photos, but it approves its use in other appropriate cases.
© A. P. Korzhyts, 2020
© E. V. Abrazhevich, translating into English, 2020
This Order is licensed under the Creative Commons Attribution-ShareAlike 4.0 International license. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/.
- Need for unique photo names for eliminating of threat of loss or damage of photos themselves or information about them because of the same names in the environments of DCSs based on the uniqueness of file names.
- Need for possibility of restoring of photo name if it is damaged.
- Need for permanence of photo name to have possibility to use this name anytime for designation of independent subset of data containing photo-related information.
- Need for informativity of photo name for increasing convenience of human interaction with it.
- Need for compatibility of photo names with various DCSs for portability of photo files between these systems.
- Need for unified naming order of individual subsets of photos for ensuring of productivity when shared using and maintaining of them.
Direction of the solution
The solution should strive for the maximum freedom of use.
The solution should strive for the minimum length of photo name with sufficient uniqueness and informativity of this name.
The solution should strive for the least dependence from additional data carriers for its realization.
The Order is based on chronology used in combination with other initial technical photo parameters that are capable of being represented in standard metadata.
The Order aims to ensure the uniqueness of photo name on a global scale for any shooting parameters if reliable values of parameters are used for composing of photo name.
The order aims to enable to ensure the maximum compatibility of photo name with various DCSs.
The Order is strictly based on the standard metadata tags and sets the mandatory presence of every semantic part of photo name in these metadata tags at least inside the original photo file.
Only values of following initial technical parameters are used:
- date — YYYYMMDD;
- time — HHMMSS in the 24-hour notation;
- time zone — fHHMM or bHHMM, where f — forward, b — backward;
- camera model;
- camera serial number;
- frame designation — simple designation, for example, original name, or composite designation, for example, composed of intracamera folder number and serial frame number;
- addition — simple addition, for example, version, purpose, or composite addition, for example, composed of color space and version. Recommended only for derivative files, if necessary.
Only the following symbols are used:
- a-Z (Latin);
- 0-9 (Arabic numerals);
- _ (underscore).
Combination of uppercase and lowercase letters in photo name is allowed only if the global uniqueness of this name is ensured regardless of the case used, i.e. if there is strict following the Order.
As a result, the solution allows to:
- create globally unique photo names, this allows these names to be permanent;
- ensure the possibility of restoring of photo names from the metadata of these photos;
- ensure the informativity of photo names;
- ensure the compatibility of photo names with various DCSs;
- significantly reduce chance of unwanted human factor occurrence appearing in photo name;
- simplify writing of scripts that use these names;
- make photo names uniform for different photo subsets, but with distinguishable structure for visual perception.
At desire, digressions from strict adherence to the Order are permissible under user's personal responsibility.
Sample of naming scheme
Recommended metadata tags for storing name data
exif:datetimeoriginal | DATE_TIME_TIMEZONE | xmp xmp:createdate | DATE_TIME_TIMEZONE | xmp
datetimeoriginal | DATE_TIME | exif
offsettimeoriginal | TIMEZONE | exif
model | CAMERAMODEL | exif tiff:model | CAMERAMODEL | xmp xmp:creatortool | CAMERAMODEL | xmp
bodyserialnumber | CAMERASERIALNUMBER | exif exifex:bodyserialnumber | CAMERASERIALNUMBER | xmp
crs:rawfilename | FRAMEDESIGNATION | xmp xmp:nickname | FRAMEDESIGNATION | xmp
usercomment | ADDITION | exif exif:usercomment | ADDITION | xmp
dc:identifier | Photo name | xmp iptc4xmpext:digimageguid | Photo name | xmp xmp:identifier | Photo name | xmp xmp:label | Photo name | xmp
Tags belong to the following standards:
- CIPA DC-010-2017 (Exif 2.31 metadata for XMP)
- IPTC Photo Metadata Standard 2019.1
- PLUS Version 1.2.2
- XMP SPECIFICATION PART 1: DATA MODEL, SERIALIZATION, AND CORE PROPERTIES. April 2012
- XMP SPECIFICATION PART 2: ADDITIONAL PROPERTIES. August 2016
If necessary, using of other well-known tags is available, for example, for addition in name.
Values for the tags
exif:datetimeoriginal xmp:createdate ---------------------------- 2019-07-21T00:25:22.00+03:00
datetimeoriginal ------------------- 2019-07-21T00:25:22
offsettimeoriginal ------ +03:00
model tiff:model xmp:creatortool -------------- Canon EOS 600D
bodyserialnumber exifex:bodyserialnumber ------------ 163066096284
crs:rawfilename xmp:nickname ------------ _MG_9966.CR2 IMG_9966.CR2
usercomment exif:usercomment --------- v2 grayscale
dc:identifier iptc4xmpext:digimageguid xmp:identifier xmp:label ----------------------------------------------------------- 20190721_002522_f0300_CanonEOS600D_163066096284__MG_9966_v2 20190721_002522_f0300_CanonEOS600D_163066096284_IMG_9966_v2
Naming with full compliance with the Order
Naming with custom digressions