- Extensible Metadata Platform
The Adobe Extensible Metadata Platform (XMP) is a standard for processing and storing standardized and proprietary metadata, created by Adobe Systems Inc..
XMP standardizes the definition, creation, and processing of extensible
metadata . Serialized XMP can be embedded into a significant number of popular file formats, without breaking their readability by non-XMP-aware applications. Embedding metadata ("the truth is in the file") avoids many problems that occur when metadata is stored separately. XMP is used in PDF,photography and photo editing applications.XMP Data Model
XMP defines a
metadata model that can be used with any defined set of metadata items. XMP also defines particular schemas for basic properties useful for recording the history of a resource as it passes through multiple processing steps, from being photographed, scanned, or authored as text, through photo editing steps (such as cropping or color adjustment), to assembly into a final image. XMP allows each software program or device along the way to add its own information to a digital resource, which can then be retained in the final digital file.XMP is most commonly serialized and stored using a subset of the W3C
Resource Description Framework (RDF), which is in turn expressed inXML .Serialization of XMP
Embedding metadata in files allows easy sharing and transfer of files across products, vendors, platforms, without metadata getting lost; embedding avoids a multitude of problems coming from proprietary vendor-specific metadata databases.
The most common metadata tags recorded in XMP data are those from the Dublin Core Metadata Initiative, which include things like title, description, creator, and so on. The standard is designed to be extensible, allowing users to add their own custom types of metadata into the XMP data. XMP generally does not allow binary data types to be embedded. This means that any binary data one wants to carry in XMP, such as
thumbnail images, must be encoded in some XML-friendly format, such asBase64 .XMP can be used in
PDF and other graphics formats, such asJPEG ,JPEG 2000 ,GIF , PNG,HTML ,TIFF ,Adobe Illustrator , PSD,PostScript , andEncapsulated PostScript . In a typical editedJPEG file, XMP information is typically included alongsideExif andIPTC Information Interchange Model data.XMP metadata can describe a document as a whole (the "main" metadata), but can also describe parts of a document, such as pages or included images. This architecture makes it possible to retain authorship and rights information about, for example, images included in a published document. Similarly, it permits documents created from several smaller documents to retain the original metadata associated with the parts.
XMP Support and Acceptance
XMP Toolkit
The XMP Toolkit implements metadata handling in two libraries:
* XMPCore for creation and manipulation of metadata that follows the XMP Data Model
* XMPFiles for embedding serialized metadata in files, and for retrieving embedded metadata.Adobe provides the XMP Toolkit free of charge under a
BSD license . The Toolkit includes specification and usage documents (PDFs), API documentation (doxygen/javadoc),C++ source code (XMPCore and XMPFiles) and Java source code (currently only XMPCore). XMPFiles is currently available as a C++ implementation in Windows and Mac OS only (notUnix /Linux , not Java).Various XMP Tools (read/write support)
*
ACDSee Pro - can read/write XMP information for DNG, GIF, JPEG, PNG and TIFF files.
* [http://www.itagsoftware.com iTag] - tags and searches for JPEG, RAW and AVI files containing IPTC & XMP headers. Exposes a simpler view of metadata. (Windows, .NET 3.5)
* [http://www.kalimages.com/ Kalimages] - IPTC/XMP editor for jpeg image files indexing digital photos based on metadata (Windows)
* [http://portal.xinet.com/tech/tech_creative.html Xinet WebNative Venture] - DAM (Digital Asset Management) system that allows read/write of XMP across all supported file types.
* [http://www.microsoft.com/windows/products/windowsvista/default.mspx Microsoft Windows Vista] - Photo Gallery saves tags to XMP (Windows)
* [http://www.microsoft.com/downloads/details.aspx?FamilyID=3acbe51c-9d63-48ff-9614-5f30d76061b4&displaylang=en Microsoft Pro Photo Tools] - Geocoding and XMP support (Windows, .NET 3.0)
* [http://libopenraw.freedesktop.org/wiki/Exempi Exempi] - Open Source library for manipulating XMP, built on the Adobe XMP SDK
* [http://grigio.org/xmp_manager XMP Manager] - A GUI (Linux/GNOME) to write XMP metadata from the File Manager
* [http://www.fastpictureviewer.com FastPictureViewer] - Image viewer (Windows) with XMP embedding and/or sidecar files creation (xmp:Rating, xmp:Label, photoshop:Urgency)
*iText - Open Source Java library that can read and write XMP embedded in PDF files.
* [http://www.sno.phy.queensu.ca/~phil/exiftool/ ExifTool] by Phil Harvey, open source PERL module or command line.
*Windows Imaging Component - Microsoft library for working with and processing digital images and image metadata (Windows)
*Windows Live Photo Gallery - a photo management and sharing application released as a part of Microsoft's Windows Live initiative. It is an upgraded version of Windows Photo Gallery, which is a part of Windows Vista.
* [http://code.google.com/p/python-xmp-toolkit Python XMP/AVM Toolkit] - Open Source Python library wrapping the Exempi C API.
* [http://www.exiv2.org/ EXIV2] - Exiv2 is a C++ library and a command line utility to manage image metadata. Exiv2 is available as free software and with a commercial license, and is used in a growing number of projects.The mainstream
IPTC editing tools also support editing of XMP data.Licensing
Adobe has a trademark on XMP, and retains control over the specification.
Initially, Adobe released source code for the XMP SDK under a license called the "ADOBE SYSTEMS INCORPORATED - OPEN SOURCE LICENSE". The compatibility of this license with the
GNU General Public License has been questioned. [ [http://lists.gnu.org/archive/html/gnu-misc-discuss/2005-04/msg00029.html "Adobe Open Source License" GPL compatible? ] ] The license is not listed on [http://www.opensource.org/licenses/index.html the list] maintained by theOpen Source Initiative and is different from the licenses for most of their otheropen source software. [http://partners.adobe.com/public/developer/en/xmp/sdk/XMPlicense.txt]On
May 14 ,2007 , Adobe released the XMP Toolkit SDK under a standard BSD license. [ [http://blogs.adobe.com/gunar/2007/05/xmp_411_sdk_available_under_bsd_license.html From Gunar: XMP 4.1.1 SDK available under BSD license ] ]On
August 28 ,2008 , Adobe posted a public patent license for the XMP specification. [ [http://blogs.adobe.com/gunar/2008/08/public_patent_license_for_xmp_1.html From Gunar: Public Patent License for XMP] ]History
XMP was first introduced by Adobe in April 2001 as part of the
Adobe Acrobat 5.0 software product.In June 21, 2004, Adobe announced its collaboration with the
International Press Telecommunications Council . In July 2004, a working group led byAdobe Systems ' Gunar Penikis and IPTC's Michael Steidl was set up, and volunteers were recruited from AFP (Agence France-Presse),Associated Press , ControlledVocabulary.com, IDEAlliance,Mainichi Shimbun ,Reuters , and others, to develop the new schema.The "IPTC Core Schema for XMP" version 1.0 specification was released publicly on March 21, 2005. A set of custom panels for Adobe Photoshop CS can be downloaded from the IPTC. The package includes a User's Guide, example photos with embedded XMP information, the specification document, and an implementation guide for developers. The "User's Guide to the IPTC Core" goes into detail about how each of the fields should be used and is also available directly as a PDF (see external links below). The next version of the Adobe Creative Suite (CS2) included these custom panels as part of its default set.
The
Windows Photo Gallery , released withWindows Vista , offers support for the XMP standard, the first time Microsoft has releasedmetadata compatibility beyondExif . [ [http://blogs.zdnet.com/Bott/?p=190 Windows Vista’s three killer features | Ed Bott’s Microsoft Report | ZDNet.com ] ]Location in File Types
"For more details you may want to look up the XMP specification which has details on embedding (listed below)".
* TIFF - Tag 700
*JPEG - Application segment 1 (0xFFE1) with segment header "http://ns.adobe.com/xap/1.0/x00 "
*JPEG 2000 - 'uuid' atom with UID of 0xBE7ACFCB97A942E89C71999491E3AFAC
* PNG - inside a 'iTXt' text block with the keyword 'XML:com.adobe.xmp'
*GIF - as an Application Extension
* PDF - embedded in a metadata stream contained in a PDF object
* For file formats that have no support for embedded XMP data, this data can be stored in external .xmp sidecar files.References
See also
*
IPTC Information Interchange Model
* Resource Description Framework (RDF)External links
* [http://www.adobe.com/products/xmp/main.html Adobe XMP Main Page]
* [http://partners.adobe.com/public/developer/en/xmp/sdk/XMPspecification.pdf XMP Specification September 2005]
* [http://xml.coverpages.org/xmp.html XMP Information on coverpages.org]
* [http://wiki.creativecommons.org/XMP Creative Commons XMP Recommendation]
* [http://partners.adobe.com/public/developer/en/pdf/PDFReference16.pdf#page=795 Metadata section in the PDF 1.6 Language Reference]
* [http://www.iptc.org/IPTC4XMP/ IPTC4XMP (IPTC Core) standard]
* [http://www.iptc.org/std/Iptc4xmpCore/1.0/documentation/Iptc4xmpCore_1.0-doc-CpanelsUserGuide_13.pdf Users Guide to the IPTC Core for XMP]
* [http://www.stockartistsalliance.org/tutorials/ "Video Tutorials" that visually introduce the IPTC Core Schema for XMP]
Wikimedia Foundation. 2010.