On the recommendation from Dries and some prodding from Jeremy I decided that maybe I should post something regarding some work I did a few months ago.
Drupal is amazing with how it's able to provide information about its runtime and environment even though PHP has little of the functionality to provide it. Specifically the Forms API layer allows you to programmatically access all the "metadata" related to any form.
$form = array();
$form['form_id'] = 'system_site_information_settings';
$form_state = array('storage' => NULL, 'submitted' => FALSE);
$form['form'] = drupal_retrieve_form($form['form_id'], $form_state);
drupal_prepare_form($form['form_id'], $form['form'], $form_state);
This bit of code will provide an array that has everything related to the system_site_information_settings form. All fields on the form including their types are provided within the array.
Using this with a remote system or a rich environment (flash, javascript) it's possible to recreate an interface for the end user to work with. Once all the information is collected the fields could be sent back to Drupal to then be used with drupal_execute.
I've developed a bit of code to try this out. It's very alpha and did work at one time. Basically there are a few Services modules that provide the needed form functionality, and another that provides some basic node listing functionality. The node listing functionality should probably be provided by the built in node service.
If there is interest in this project I may press on. Right now I'm holding back because I feel it would be hard to get either of the interdependent projects up to their respective central locations (Apples App Store and drupal.org). I suspect getting a project for drupal.org would not be that hard but getting the App side of the project past Apples app requirements maybe impossible.
The relavant repositories are publicly accessible from our git server. I'll be updating the licensing information soon and putting all the code under the GNU GPLv2.
git://git.7sudos.com/ipad_service.git
git://git.7sudos.com/form_service.git
git://git.7sudos.com/drupal_ipad.git


