The Extensible Metadata Platform (XMP) is a standard developed and promoted by Adobe. This is an attempt to develop a single, flexible model for storing arbitrary metadata related to digital media files. Typically, XMP is embedded within the file itself, but there are instances where XMP is stored in standalone files, called sidecar files, alongside the media file.
XMP is composed of several related specifications:
- The XMP packet format itself. XMP packets are XML documents using RDF constructs to encode metadata. Using RDF/XML-based packets provides both machine- and human-readable metadata that requires little preknowledge of the XMP format itself, whereas legacy metadata standards are typically not human-readable.
- The file format specifications. For common file formats, XMP is stored in well-defined locations within the file, enabling XMP-aware software to easily read, modify and inject XMP into the file where it will be most accessible to other applications. Because of certain properties of the XMP packet format (an easily identifiable plaintext header), it is possible to easily read metadata from other, undocumented file formats, though injecting new metadata in such cases is not advised.
- The schema. XMP itself defines the structure for how to encode and store metadata, but it also includes a large number of schema developed by Adobe which define standard metadata elements, or fields, in a way that allows users and vendors to cooperate and interoperate. It is possible, and within the "spirit" of the standard, to define custom schema for storing metadata where existing schema are not suitable.
XMP enables a number of useful applications:
- Inserting descriptive metadata into files so that they contain identifying information - captions, titles, copyright statements, and more - without relying on external databases.
- Managing version control of media files - each XMP-containing document contains a variety of globally unique identifiers that are useful for describing the relationship between different versions of files, files which incorporate elements of other files, and more.
- Synchronizing disparate metadata formats - such as IPTC and EXIF - into a single, easily human- and machine-readable format.
Few, if any, current stitching products are XMP aware. As a result, output from common stitchers will not contain any of the XMP present in the original source file(s). Adobe Photoshop and ExifTool can both be used to synchronize XMP metadata from source images into stitched output files.