Анализ XML-кода - PullRequest
       8

Анализ XML-кода

2 голосов
/ 12 января 2012

У меня было несколько XML-файлов, которые являются исходным кодом для потока, реализованного в ETL (Informatica).

Мне нужно создать решение для анализа этих XML и создания отчета по нему.Цель состоит в том, чтобы проверить, были ли соблюдены домашние нормы разработки.

Меня не волнует проверка XML в вопросах DTD или XSD (кстати, файлы XML действительны и могут быть проанализированы), но мне нужно построить несколько правил, таких как:

-Этот узел должен иметь этот атрибут в false

-Если атрибут узла "A" является "blablabla", узел "B"должно быть установлено значение "X"

-etc ...

Я думаю, что XSLT или XQuery могли бы быть хорошим решением с отчетом в качестве вывода, но кто-нибудь знает, если естьМожет ли существующий инструмент анализа кода (с открытым исходным кодом или бесплатное программное обеспечение) проверять XML с помощью домашних правил?

1 Ответ

3 голосов
/ 12 января 2012

Во-первых, вы, вероятно, должны проверять свои XML-файлы на соответствие схеме (XSD), я бы посчитал это хорошей практикой. Тем не менее, правила, которые вы описываете, такие как:

Если атрибут узла "A" равен "blablabla", узел "B" должен быть установить значение "X"

не может быть проверено только схемой.

Это распространенная проблема, поэтому вместо того, чтобы придумывать собственное решение, я бы рекомендовал взглянуть на существующие решения, такие как Schematron . На их веб-сайте технология описывается так:

Язык для утверждений о наличии или отсутствии шаблоны в документах XML. Смотрите этот обзор для более информация.

Прошло много времени с тех пор, как я его использовал, но я помню, что это было довольно хорошо для такого рода вещей.

...