Проверка файлов, имеющих древовидные структуры - PullRequest
3 голосов
/ 21 мая 2011

Я ищу валидатор для проверки файлов конфигурации на основе древовидной структуры.egastudent.name joe a.student.class arts

Можете ли вы предложить какие-либо идеи по проверке такой конфигурации.До сих пор я искал и мог найти валидатор только для XML-файлов.

Ответы [ 4 ]

8 голосов
/ 21 мая 2011

К сожалению, проверка схемы для файлов конфигурации редко встречается вне XML.Единственный другой вариант, о котором я знаю, это Config4J (который я написал).

Если вы посещаете веб-сайт, то вам нужно прокрутить вниз до нижней части главной веб-страницы для доступа кполный набор руководств (доступны как в PDF, так и в HTML версиях).Я рекомендую вам взглянуть на следующие части руководств, чтобы получить обзор Config4J и решить, удовлетворяет ли он вашим потребностям в валидации.

В главах 2 и 3 «Руководства по началу работы» представлен обзорСинтаксис конфигурации и API.В частности, в разделе 3.10 приведен краткий пример языка схемы.

Глава 9 «Руководства по началу работы» содержит полное определение языка схемы.

Глава 3 «Java»«Руководство по API» обсуждает API для написания собственных типов схем для расширения функциональности языка схем.

Обновление: Я обнаружил из ответа kiran.kumar M, что Java и Rubyреализации YAML имеют валидатор схемы с именем Kwalify .

Обновление: Для JSON теперь существует язык схемы .

1 голос
/ 28 мая 2011

Попробуйте www.yaml.org. Yaml поддерживает древовидные структуры.

Вот список нескольких парсеров, jYaml, SnakeYaml, YamlBeans Yaml - это формат файлов, поддерживающий сложные иерархические структуры. Большинство структурных проверок могут выполняться автоматически синтаксическими анализаторами, перечисленными выше. Вам может понадобиться дополнительный код для подтверждения потребностей вашего бизнеса.

Также доступно несколько онлайн-валидаторов

см .:

http://yaml -online-parser.appspot.com /

http://instantyaml.appspot.com/

Также см. https://stackoverflow.com/questions/450399/which-java-yaml-library-should-i-use

Проверка https://stackoverflow.com/questions/287346/yaml-validation

0 голосов
/ 28 мая 2011

Не видя ни одной формы образца. Если вы хотите проверить структуру чего-либо, и семантика не является проблемой, вы можете использовать lex / yacc (читайте flex / bison).

В зависимости от проблемы можно выйти и использовать вола после этого. В основном начинаю писать мини-компилятор.

0 голосов
/ 24 мая 2011

Если структура такая же, как у файла свойств Java, вы можете прочитать свойства из него.Затем вам нужно решить, что вы подразумеваете под «подтвердить».Если возможно, у вас, вероятно, есть простой способ решить вашу проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...