1Introduction
2============
3
4*Python XMP Toolkit* is a library for working with `XMP
5<http://www.adobe.com/products/xmp/>`_ metadata, as well as
6reading/writing XMP metadata stored in many different file formats.
7
8Python XMP Toolkit is wrapping `Exempi
9<http://libopenraw.freedesktop.org/wiki/Exempi>`_ (using `ctypes
10<http://docs.python.org/lib/module-ctypes.html>`_), a C/C++ XMP library
11based on `Adobe XMP Toolkit <http://www.adobe.com/devnet/xmp/>`_,
12ensuring that future updates to the XMP standard are easily incorporated
13into the library with a minimum amount of work.
14
15Python XMP Toolkit has been developed by:
16
17 * `ESA/Hubble - European Space Agency <http://www.spacetelescope.org>`_
18 * `ESO - European Southern Observatory <http://www.eso.org>`_
19 * `CRS4 - Centre for Advanced Studies, Research and Development in Sardinia <http://www.crs4.it/>`_
20
21Feature Overview
22----------------
23The XMP features provided are similar to that of Adobe XMP Toolkit, which are:
24
25 * Support for parsing, manipulating, and serializing XMP data.
26 * Support for locating the XMP in a file, adding XMP to a file, or updating the XMP in a file.
27 * Support for nearly any file format with smart file handlers for JPEG, TIFF, GIF, PNG, PSD, InDesign, MOV, MP3, MPEG2, MPEG4, AVI, FLV, SWF, ASF, PostScript, P2, SonyHDV, AVCHD, UCF, WAV, XDCAM, XDCAMEX.
28 * An API very similar to Adobe XMP Toolkit.
29 * Based on Exempi 2.1.1 and Adobe XMP Toolkit 4.4.2
30
31Following important features from Adobe XMP Toolkit are not available in Python XMP Toolkit:
32
33  * Localized text support
34  * Methods for working with XMP structs.
35  * Methods for working with XMP qualifiers
36  * Methods for working with XMP Aliases
37
38What is XMP?
39------------
40The Adobe Extensible Metadata Platform (XMP) specification describes a
41widely used method for embedding descriptive metadata within images. XMP
42tags are stored within the image header of all common image formats (JPEG,
43TIFF, PNG, GIF, PSD) and can be read by popular image processing and
44cataloging packages. The XMP standard is also widely used by photographers
45and the publication industry. Users of consumer and professional digital
46cameras may already be familiar with Exchangeable Image File Format
47(EXIF) metadata tags that include camera and exposure information within
48the digital photo file as a set of XMP tags. In practice an XMP header
49is a block of XML text included in the header block of the image file
50and is only supported in image types with header/comment blocks.
51
52The advantages of embedded image identity metadata are numerous. Including
53metadata effectively makes the images self-documenting, which is particularly
54useful when the source URL for an image is lost. This information can now be
55accessed by multimedia management packages, or indexed by databases
56designed to read the embedded information. For instance, an online or desktop
57planetarium program could load an image from the web and extract the
58appropriate metadata to place it in the proper position in the sky.
59