ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages

 

This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).



PLIST(5)                    BSD File Formats Manual                   PLIST(5)

NAME
     plist -- property list format

SYNOPSIS
     plist

DESCRIPTION
     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 produce data that is meaningfully structured, transportable, storable, and accessible, but
     still as efficient as possible. The property list programming interface allows you to convert hierar-chically hierarchically
     chically structured combinations of these basic types to and from standard XML. The XML 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 LIST STRUCTURE AND CONTENTS

     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
     CFDictionary or CFArray. To simplify programming with property lists, any of the property list types
     can also be referred to using a reference of type CFPropertyListRef.

     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 CFDic-tionary. CFDictionary.
     tionary. 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 CFArray objects.

     PROPERTY LIST XML TAGS

     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 ta-ble table
     ble above. See EXAMPLES below for an example XML data generated from a property list.

     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 property list saved on disk as XML data, use
     the Property List Editor application.

     More complete documentation can be found on disk at

     /Developer/Documentation/CoreFoundation/ProgrammingTopics/CFPropertyLists/CFPropertyLists.html

     or online at

     http://developer.apple.com/documentation/CoreFoundation/Conceptual/CFPropertyLists/index.html

EXAMPLES
           <?xml version="1.0" encoding="UTF-8"?>
           <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"
                   "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
           <plist version="1.0">
           <dict>
               <key>Year Of Birth</key>
               <integer>1965</integer>
               <key>Pets Names</key>
               <array/>
               <key>Picture</key>
               <data>
                   PEKBpYGlmYFCPA==
               </data>
               <key>City of Birth</key>
               <string>Springfield</string>
               <key>Name</key>
               <string>John Doe</string>
               <key>Kids Names</key>
               <array>
                   <string>John</string>
                   <string>Kyra</string>
               </array>
           </dict>
           </plist>

SEE ALSO
     plutil(1)

Mac OS X                         July 9, 2003                         Mac OS X

Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.