Разбор XML-файлов с использованием XSD-схем на примере анализа аварийности

Разбор XML представляет собой процесс анализа XML-файлов с использованием XSD-схем. Сценарий позволяет проверять соответствие XML-файлов предопределённой схеме, извлекать информацию об авариях и проводить статистический анализ данных.

Данные для анализа берутся с сайта ГИБДД (http://stat.gibdd.ru/). В результате мы получаем структурированные данные об авариях, которые можно легко анализировать и интерпретировать.

Примечание: Демопример имеет ограничение демонстрации всех возможностей при запуске на демостенде (Запустить демо). Рекомендуем установить пример локально.

Запустить демо

Установить локально

Описание алгоритма

1. Импорт данных

В подмодели Импорт данных осуществляется подключение к файлам XSD-схем и импорт таблиц данных из файлов формата XML.

а) Настройка подключения

При подключении требуется настроить подключение набора XSD-схем. Для этого необходимо добавить новый файл с расширением «.xsd» в список, который необходимо выбрать в диалоге выбора файла.

б) Импорт из XML-файла

Извлекаем необходимые данные через импорт из XML-файла в узлы: Карточка ДТП, Информация о ДТП и Дополнительная информация о ДТП. Для этого задаем путь к импортируемому файлу и связываем его с входным портом.

После загрузки данных в соответствующие узлы можно приступать к преобразованию данных.

2. Обработка данных

В подмодели Обработка данных преобразуются данные в требуемый для дальнейшей обработки формат.

а) Преобразование данных

С помощью компонента калькулятор осуществляем преобразование даты, названий и категорий.

б) Фильтр данных

В подмодели Условия ДТП используется компонент фильтр строк. В нем отсекаются ненужные значения полей.

3. Формирование статистики по ДТП

а) Общая статистика ДТП

В узле Общая статистика ДТП суммируются общие данные о пострадавших в ДТП.

Для получения информации по Количеству ДТП, Количеству пострадавших данные трансформируются с помощью кросс-таблицы.

Таблица «Общая статистика ДТП»

Муниципальное образование Количество ДТП Количество погибших Количество раненых
Московская область, Егорьевский район 41 11,00 47,00
б) Аварийность по дорогам

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

Таблица «Аварийность по дорогам»

Наименование дороги/улицы Количество ДТП Количество погибших Количество раненых Количество ДТП с НДУ Количество погибших с НДУ Количество раненых с НДУ
МОСКВА-ЕГОРЬЕВСК-ТУМА-КАСИМОВ 6 2 7 1 1 0
МБК-ЕГОРЬЕВСК-МЕТК 5 1 10 1 0 4
УЛ СОВЕТСКАЯ (Г ЕГОРЬЕВСК) 4 0 4 1 0 1
УЛ СОВЕТСКАЯ (Г ЕГОРЬЕВСК) 4 0 4 1 0 1
КАДАНОК-РЯЗАНОВКА-СТ.СПАСС-ДВОЙНИ 3 3 1 0 0 0
ЕГОРЬЕВСК-Б.ГРИДИНО-СЕМЕНОВСКОЕ 3 0 3 2 0 2
ЕГОРЬЕВСК-КОЛОМНА-КАШИРА-НЕНАШЕВО 2 0 4 0 0 0

Скачайте и откройте файл в Loginom. При необходимости Loginom CE можно скачать бесплатно

Скачать демопример

Минимальные требования к системе:

  • Операционная система: Windows 10 и выше
  • CPU x64: 2 core 1
  • Оперативная память: 4 GB
  • Жесткий диск: 10 GB

1 Поддерживается работа на x64 процессорах Intel Core, AMD FX и более новых, содержащих инструкции SSE4.2 (POPCNT, LZCNT).