PadML home / Specifications / Album Package 1.0 specifiation sheet.
The notion of photo album refers to two things. First the data, which in our case is the picture files (usually Jpeg photos extracted from digital cameras). And the metadata, also know as data about data, which is in our case information about photos themselves (titles, dates, or whatever you would add). It is now to consider an album to be a collection of data and metadata.
Album package solution is a way to gather both data and metadata for the purposes exposed in chapter below.
Exchanging photo albums is probably the most interesting purpose because it concerns many people who no only want to exchange picture files, but also information they could have added to each photo within their favorite digital picture management software like titles and comments.
However, digital picture management softwares usually store their metadata in a proprietary format, thus preventing the exchange of photo albums between two different softwares.
Album Package offers a way to perform full exchange by defining a standardized format.
Archiving is also very important, it is essential to save metadata in an open format that will be undoubtedly readable in the future even without the application that created the document. Nobody can be certain that a given software will longer exist, thus still allowing to read photo albums archived in the past.
It is furthermore a good thing to gather both data and metadata in a same place to preserve the photo album integrity. In contrary to desktop applications that store metadata in a cataloging file or web applications that store metadata in a database, Album Package stores data and metadata in a same directory regarding to the filesystem.
Strict separation of information and presentation permits to use the MVC paradigm. In term of publishing, this means that it is preferable to not mix metadata and presentation information. For instance, some gallery softwares directly include the metadata into HTML pages, it is therefore impossible to change the presentation or to retrieve the metadata with ease.
Album package conserves the metadata in PadML, free of presentation information so that publishing services can apply on the fly any sort of presentation and change it on demand.
An album package basically consists of a directory containing every album's files. Directory extension is ".album" so that smart operating systems will present it as being a single virtual file hence facilitating end-user to manipulate the album package.
Ex : MyHolydays.album
In the album package's root directory presented above is stored a file named "index.xml" that contains album's metadata written in XML using the PadML document type.
This file will furthermore link to the photo files stored in the album package directory (see PadML 1.0 specification sheet for details). There is no obligation to place photo files in the root directory or in sub-directories as long at it remains coherent to the path specified in the PadML code. Relative paths are defined within the root of the album package.
Ex : MyHolydays.album/index.xml
In addition to original full-sized photo files, the album package may contain downsized photo files. It is recommended to include a downsize slightly inferior to average screen resolution (ex : 640x480px) that could be used for the web, and an even more downsized one (ex: 160x120px) to use for thumbnail display.
Again, the "index.xml" metadata file will link to the different alternate sizes of a photo in the PadML code (see PadML 1.0 specification sheet for details).
Ex : MyHolydays.album/Thumbs/photo-1_small.jpg, MyHolydays.album/Images/photo-1_medium.jpg, MyHolydays.album/Originals/photo-1_full.jpg
According to PadML specification, it is possible to build multimedia albums containing photos, videos, panoramas and sounds.
Album Package becomes even more powerful in this case by storing in its directory every multimedia files pointed out by the PadML code in the "index.xml" file.
Ex : MyHolydays.album/Video/video-1.mp4
Example of Album Package :