Одним из способов создания интерфейса для редактирования информации в определенном словаре XML является использование XForms. (Я думаю, что это, безусловно, самый простой и лучший, но YMMV.) Учитывая соответствующую инфраструктуру (см. Ниже), использование XForms для того, что вы описываете, будет включать:
- Написать форму, используя XHTML + XForms. Укажите виджеты редактирования для тех частей XML, которые пользователь хочет редактировать; сделать другие части XML доступными только для чтения (или вообще не отображать их). Определите, как вы хотите, чтобы отредактированные данные были представлены. Стиль с использованием CSS.
- Когда пользователь открывает форму, процессор XForms автоматически загружает XML-документ и предоставляет виджеты редактирования, как указано в XForm, указанном вами на шаге 1. Пользователь редактирует.
- Когда пользователь нажимает кнопку «Отправить», браузер отправляет данные обратно на сервер в виде XML, а программное обеспечение на сервере выполняет необходимые проверки (это пользовательский ввод из открытого Интернета, его нужно проверить) и обрабатывает его соответствующим образом.
Как вы можете видеть, это немного проще, чем использовать AJAX (по крайней мере, после настройки инфраструктуры).
Какая инфраструктура необходима для XForms, зависит отчасти от того, какую реализацию XForms вы используете.
Для клиентских реализаций XForms (таких как XSLTForms из AgenceXML или Formula из EMC) вам потребуется (a) копия программного обеспечения на вашем сервере (в случае XSLTForms это означает одну таблицу стилей XSLT, одну Библиотека Javascript и один файл CSS), (b) возможно, соответствующая ссылка в самой форме (как это нужно сделать, зависит от реализации), и (c) сервер, готовый принимать запросы PUT. В некоторых контекстах (c) будет сложнее всего выполнить настройку, но подойдет любой сервер, который предоставляет интерфейс WebDAV, поэтому SVN с автоматическим версионированием, Apache (один или поверх Subversion) и другие инструменты все могут быть использованы.
Для серверных реализаций (таких как Orbeon Forms или BetterForm) вам необходимо установить реализацию XForms и запустить ее на своем веб-сервере; поскольку они, как правило, являются сервлетами, вам нужно будет поместить их в движок сервлетов. Как правило, они поставляются с какой-либо формой сервера WebDAV.
Стивен Пембертон из W3C и CWI написал полезное учебное введение в XForms ; Я веду список указателей на это и на другие материалы, связанные с XForms, которые также могут быть полезны.