|
10/05/2009, 02:56 PM
#108
 Originally Posted by s219
It's not an API, it's even simpler than that. But it is documented and supported very well. Unlike an API, the iTunes XML file is self contained. If you have that file and your music files, you're good to go. Doesn't matter if you have iTunes or not, or even if Apple is still in business. A good XML file is its own self-contained definition.
I wanted to clarify that it's not an API because an API implies that Apple is actively helping anyone who wants to work with iTunes and that Palm is asking for more.
So short of Apple purposely deleting the file, that XML file is pretty much like a time capsule listing of all your music and playlists. Want to avoid future risk? Import the time capsule now and then develop your own archive format from here on out.
It doesn't have to be purposefully. That file is there for legacy reasons, it's arcane and bizarrely constructed. It really is a serialized property list, a Mac OS X convention. It's not made for consumption by third parties.
BTW, companies are famous for creating and deprecating APIs all the time -- it's not like they stand behind them forever, or make guarantees. As soon as you hitch your wagon to anyone's OS/app/code horse, you're signing on for the ride, for better or worse. If longevity is important, then you need to secure the capability with some sort of contract or agreement. But the API itself is not a contract by any means.
Ah, I knew someone would jump at that. Companies that maintain an API have an obligation to keep it stable and documented as long as feasible. That's why Sun's Java is still backward compatible and Microsoft still supports Win32: because they handed out SDKs and promised to support them for the foreseeable future. And when change comes it is announced well in advance and is done with care to not break clients that depend on it.
But Apple made no such promise to anyone when it comes to iTunes. At most you can say that Apple tolerates 3rd party access to it but it has no arrangement with them and can change that file at will, make it a binary or stash it in a mini database. All the companies promising their customers iTunes sync do it independently of Apple and just like Palm are promising something Apple did not endorse in any way. There is nothing especially shady about what Palm is doing, the vendor ID is an implementation detail.
|
|
|