manpagez: man pages & more
man plist(5)
Home | html | info | man
plist(5)                    BSD File Formats Manual                   plist(5)


     plist -- property list format




     Property lists organize data into named values and lists of values using
     several Core Foundation types: CFString, CFNumber, CFBoolean, CFDate,
     CFData, CFArray, and CFDictionary. These types give you the means to pro-
     duce data that is meaningfully structured, transportable, storable, and
     accessible, but still as efficient as possible. The property list pro-
     gramming interface allows you to convert hierarchically structured combi-
     nations of these basic types to and from two formats: standard XML and an
     optimized, opaque binary format. This document describes the standard XML
     format. The data can be saved to disk and later used to reconstruct the
     original Core Foundation objects. Note that property lists should be used
     for data that consists primarily of strings and numbers because they are
     very inefficient when used with large blocks of binary data.


     Property lists are constructed from the basic Core Foundation types
     CFString, CFNumber, CFBoolean, CFDate, and CFData. To build a complex
     data structure out of these basic types, you put them inside a CFDic-
     tionary or CFArray. To simplify programming with property lists, any of
     the property list types can also be referred to using a reference of type

     In a CFDictionary, data is structured as key-value pairs, where each key
     is a string and the key's value can be a CFString, a CFNumber, a
     CFBoolean, a CFDate, a CFData, a CFArray, or another CFDictionary. When
     using CFDictionary as a property list, all keys must be strings.

     In a CFArray, data is structured as an ordered collection of objects that
     can be accessed by index. In a property list, a CFArray can contain any
     of the basic property list types, as well as CFDictionary and other CFAr-
     ray objects.


     When property lists convert a collection of Core Foundation objects into
     an XML property list, it wraps the property list using the document type
     tag <plist>. The other tags used for the Core Foundation data types are
     listed in the table below:

     Core Foundation Types with XML Equivalents
         CF type         XML tag
         CFString        <string>
         CFNumber        <real> or <integer>
         CFDate          <date>
         CFBoolean       <true/> or <false/>
         CFData          <data>
         CFArray         <array>
         CFDictionary    <dict>

     When encoding the contents of a CFDictionary, each member is encoded by
     placing the dictionary key in a <key> tag and immediately following it
     with the corresponding value in the appropriate tag from the table above.
     See EXAMPLES below for an example XML data generated from a property

     The XML data format is documented here strictly for help in understanding
     property lists and as a debugging aid. These tags may change in future
     releases so you shouldn't rely on them directly. You should not edit the
     XML data by hand unless you are very familiar with XML syntax and the
     format of property lists. If you want to modify the contents of a prop-
     erty list saved on disk as XML data, use the Property List Editor appli-

     More complete documentation can be found on disk at


     or online at


     The binary property list format is opaque and does not use XML. However,
     binary property lists and XML property lists are generally interchange-
     able. The plutil(1) utility may be used to convert property lists between
     different formats. For example, to view a binary property list in XML
     format on stdout:

           plutil -convert xml1 -o - <file name>


           <?xml version="1.0" encoding="UTF-8"?>
           <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"
           <plist version="1.0">
               <key>Year Of Birth</key>
               <key>Pets Names</key>
               <key>City of Birth</key>
               <string>John Doe</string>
               <key>Kids Names</key>



Mac OS X                         July 9, 2003                         Mac OS X

Mac OS X 10.7 - Generated Sun Aug 21 09:56:07 CDT 2011
© 2000-2024
Individual documents may contain additional copyright information.