Один способ создать интерфейс для редактирования информации в конкретном 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.
Steven Pemberton из W3C и CWI написал полезное tutorial introduction to XForms; Я поддерживаю list of pointers тому и другим материалам, связанным с XForms, которые также могут быть полезны.
См. Также http://stackoverflow.com/q/4833116/873282 – koppor