Использование XML в качестве (только для чтения) удобочитаемого источника данных для вопросов опроса - PullRequest
1 голос
/ 22 ноября 2008

Анкеты для научных или маркетинговых исследований в основном состоят из вопросов в следующей форме:

INTRO: Укажите, насколько вы согласны со следующими утверждениями ...

ОПЦИИ: очень - скорее - так себе - скорее нет - совсем нет

ПУНКТ 1: я люблю кока-колу

...

ПУНКТ n: ...

Давайте назовем все это МАСШТАБ . Одна шкала состоит из нескольких предметов, имеет вступление, имеет определенное количество опций. В базе данных есть таблицы «intro», «option», «items» и «scale» с необходимыми внешними ключами. С помощью соответствующих запросов я выбираю эту информацию и вставляю их в форму просмотра, чтобы отобразить шкалу моего вопросника.

Это нормально, пока нет сторонних разработчиков, которые должны редактировать эти шкалы. Недавно мне пришел альтернативный подход. Я подумал, что для весов можно было бы использовать файлы XML , содержащие все вышеупомянутые данные, включая переводы.

Я знаю, что XML - это средство передачи, а не хранилище данных, я знаю, что запрашивать XML не так просто, как использовать SQL для базы данных ... но как насчет третьей стороны? Стоит ли мне разрабатывать для них бэкэнд, где они могут редактировать вопросы? Что вы думаете об этом? Возможно, вы знаете альтернативный третий способ хранения вопросов (шкал) для опросов?

РЕЗЮМЕ ТАК ДАЛЕЕ : хорошо, кажется, что интерфейс редактирования - лучшее решение. Может ли кто-нибудь написать что-нибудь о вопросе speed относительно XML ...

Ответы [ 5 ]

3 голосов
/ 22 ноября 2008

Лучшим способом было бы создать этот простой бэкэнд для нетехнических третьих лиц.

Нетехнические пользователи, вероятно, столкнутся с проблемами при редактировании файла XML, и как бы вы проверили, правильно ли отформатирован файл после того, как он его отредактировал? Ваше программное обеспечение должно будет проверять ввод и выдавать значимые сообщения об ошибках, что означает, что вы все равно будете писать элементарный бэкэнд.

1 голос
/ 23 ноября 2008

Что касается представления, XSLT (таблицы стилей XML для преобразования) может преобразовать документ в «презентабельный» интерфейс. Однако вам все еще понадобится механизм для захвата и сохранения результатов. Но если он в формате XML, вы можете поместить практически любой мыслимый интерфейс перед ним, даже без использования XSL.

Одним из преимуществ подхода XML по сравнению с реляционной базой данных является встроенная изменчивость, которую вы можете предложить. Я создал несколько таких систем, и придумать разумную структуру базы данных, которая также может справиться с изменчивостью структуры опроса и данных, сложно.

1 голос
/ 22 ноября 2008

Вы уже взглянули на MS InfoPath? Это именно то, что они делают, и это работает довольно хорошо.

0 голосов
/ 25 ноября 2008

Если вы хотите, чтобы он был в XML, то я предлагаю вам взглянуть на интерпретатор интерактивной схемы (http://sourceforge.net/projects/interactive/).

0 голосов
/ 23 ноября 2008

Было бы проще сделать это через бэкэнд (это правильный термин?), Чем анализировать файл конфигурации (по сути, ваш xml-файл) каждый раз, когда что-то менялось.

...