I was intrigued by the bundled .key file that Keynote presentations are saved in, and I had heard that Keynote was built on XML (APXL to be exact), so I decided to check it out.
At my company, we create a Windows-based PowerPoint monthly report (with Word tables and Excel charts) and I am interested in making a case for making it in Keynote. The typography alone might do it, but what if you added automating the content as well? You see, the presentation always has the exact same number of slides and the same tables and charts.
Read the rest of the article for some background info on the Keynote file format...
I'm only into my first hour of investigation, but here's what I've discovered so far (and I know VERY LITTLE about XML):
<slide id="slide-1" master-slide-id="master-slide-1"> This could give you a way of identifying the beginning of each slide.
<array>
<array>
<null/>
<string>Company1</string>
<string>Company2</string>
<string>Company3</string>
<string>Company4</string>
</array>
<array>
<string>Year-Over-Year</string>
<string>250</string>
<string>110</string>
<string>15</string>
<string>25</string>
</array>
</array>
So, change the data in the second array and you've changed the data in the chart which Keynote will render the next time the presentation is opened. I'd like to find a better way to identifiy specific objects, though. "<!--" comments don't work because Keynote will wipe them out on the next save. If someone figures out how to comment out objects, please post it!)Mac OS X Hints
http://hints.macworld.com/article.php?story=20030323092127481