The plist format (which I would name NSPList for NextStep PList) I describe is now known by the J-heads at Apple as "Classic" or "old style" plists. They are trying to deprecate them. They are fools.
There are still plenty of them around and thus the libraries to read and write them are still (and ever will be) supported.
However - the J-headed XML fashion followers decided to "modernize" the plist and thus created a really lame and bloated XML-ization of them. So, while dictionaries used to be written:
{ key = value; key2 = value2; }
Now we have to have something like
\n<dict>\n <key><string>key</string></key><data><string>value</string></data>\n <key><string>key2</string></key><data><string>value2</string></data>\n</dict>\n
See, lots more readable (NOT).
The only advantage seems to be the addition of type tags - string, date, real, int, etc. Frankly I was happy with "everything is a string".
Anyhow, I still use NS style plists all the time. I have parsers in Java, C++, and Smalltalk. You can write a recursive descent plist parser in about a page of code. Once you have one you never write IO code to save data again.
Pretty close
The plist format (which I would name NSPList for NextStep PList) I describe is now known by the J-heads at Apple as "Classic" or "old style" plists. They are trying to deprecate them. They are fools.
There are still plenty of them around and thus the libraries to read and write them are still (and ever will be) supported.
However - the J-headed XML fashion followers decided to "modernize" the plist and thus created a really lame and bloated XML-ization of them. So, while dictionaries used to be written:
{ key = value; key2 = value2; }
Now we have to have something like
<dict>
<key><string>key</string></key><data><string>value</string></data>
<key><string>key2</string></key><data><string>value2</string></data>
</dict>
See, lots more readable (NOT).
The only advantage seems to be the addition of type tags - string, date, real, int, etc. Frankly I was happy with "everything is a string".
Anyhow, I still use NS style plists all the time. I have parsers in Java, C++, and Smalltalk. You can write a recursive descent plist parser in about a page of code. Once you have one you never write IO code to save data again.
That was lovely cheese.
--Wallace, The Wrong Trousers