хранилище конфигурации

xml конфигурация config хранилище параметры

Добрый день всем.

Возникла у меня на работе такая задача -- создать некое хранилище конфигурации, к которому в дальнейшем нужно будет прикрутить веб.интерфейс для редактирования.
Есть продукт А, который существует в разных версиях и работает на разных платформах. Конфигурационные параметры меняются от версии к версии и от платформы к платформе.

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

Поясню на примере. Пусть будет параметр process_number который на платформе win32 может меняться в диапазоне от 1 до 20, на *bsd в диапазоне от 1 до 10, а на платформе mac вообще не используется. А есть параметр config_path который должен содержать путь к конфигу и проверять, есть ли права на запись.

я никак не соображу, как эти вот проверки внутрь xml запихать... покурил документацию по xml на предмет составления DTD и последующей проверки, но это оказалось не то.

Как вообще по правильному всё это делается? Может вообще я зря на xml смотрю?
Ответы:
да на xml то пожалуйста, достаточно удобный читаемый и машиной и человеком формат. ну только обрабатывать надо каким нибудь нормальным языком программирования, php там например раз уж веб интерфейс. поскольку DTD для такого действительно не подойдёт
да причем тут пхп то?
проблема в том, как в конфигурации прописать правила и ограничения для параметра, а не в том, как и на чём потом всё это обрабатывать
Для спецификации ограничений и спецификации структуры XML-файла придумали разные языки, наибольшую поддержку среди инструментов получила XML-Schema [1].
чем больше я читаю про xml тем больше понимаю, что мою задачу одними только его средствами не решить никак. И громоздкость тут ни при чем, просто DTD немного для других задач создавался.


17 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.