Правило Blending Bull: Вирівняти XML-фід у таблицю#
Правило Align XML to table дає змогу змінити структуру XML-файлу на табличне подання, подібне до CSV-файлу. Воно призначене передусім для обробки джерел даних у форматі XML.
Для чого слугує правило?#
Головна мета цього правила — візуально і структурно наблизити XML-файл до формату CSV. Воно ідеально підходить для ситуацій, коли потрібно:
-
Зробити наочнішим об’ємний XML-фід.
-
Підготувати дані для систем, які краще обробляють дані рядок за рядком.
-
Застосувати правила, які на даних, структурованих за рядками, налаштовуються значно простіше.
-
Використати регулярні вирази в межах окремих позицій.
Як працює правило?#
Під час застосування цього правила Blending Bull знаходить у джерелі даних конкретний визначений елемент, який обмежує одну позицію (наприклад, <SHOPITEM>). Щойно він визначить цей тег, він забезпечить, щоб кожна окрема позиція була в одному рядку.
Отже, цим правилом Blending Bull видаляє розриви рядків, деякі пробільні символи і додає нові розриви рядків. Однак він не зважає на вміст рядків, а тому не гарантує і порядку елементів в окремих рядках. За потреби це потрібно налаштувати іншими правилами.
Приклад роботи правила#
Джерело даних (XML):
<SHOPITEM>
<ITEM_ID>1</ITEM_ID>
<PRODUCTNAME>Біла чашка Karel</PRODUCTNAME>
<PRICE_VAT>123</PRICE_VAT>
</SHOPITEM>
<SHOPITEM>
<ITEM_ID>2</ITEM_ID>
<PRODUCTNAME>Біла чашка Maruška</PRODUCTNAME>
<PRICE_VAT>456</PRICE_VAT>
</SHOPITEM>Під час налаштування правила Align XML to table ми вводимо елемент <SHOPITEM> як той, що обмежує одну позицію. Після застосування правила вихідний файл виглядатиме так:
<SHOPITEM><ITEM_ID>1</ITEM_ID><PRODUCTNAME>Біла чашка Karel</PRODUCTNAME><PRICE_VAT>123</PRICE_VAT></SHOPITEM>
<SHOPITEM><ITEM_ID>2</ITEM_ID><PRODUCTNAME>Біла чашка Maruška</PRODUCTNAME><PRICE_VAT>456</PRICE_VAT></SHOPITEM>Кожна позиція (<SHOPITEM>) — в окремому власному рядку.
Як налаштувати правило?#
-
В інтерфейсі вибраного файлу на вкладці Edit file натисніть кнопку Create new rule.
-
Заповніть Name правила.
-
Як Rule type виберіть Align XML to table.
-
Заповніть назву елемента, який позначає одну позицію у фіді (наприклад,
SHOPITEM). -
Натисніть Save. Після перегенерування ви побачите в попередньому перегляді даних у правій частині екрана, що кожна позиція в одному рядку.
Приклади використання#
-
Правило дає змогу зручно працювати з регулярними виразами всередині окремих позицій. Наприклад, додавати нові елементи, розділяти елементи з параметрами на кілька елементів, видаляти частини даних тощо, що саме пробільні символи і розриви рядків у XML-розмітці ускладнюють.
-
Після вирівнювання даних у таблицю значно простіше застосовувати інші правила, як-от Delete line containing text або Delete empty lines.
Часті запитання#
Для чого слугує правило Align XML to table? #
Переносить кожну позицію XML-фіду в окремий рядок, завдяки чому структурно наближає XML-файл до формату CSV. Результат потім виглядає як таблиця, де кожен рядок відповідає одній позиції.
Для якого формату даних призначене правило?#
Правило призначене передусім для джерел даних у форматі XML. На інші формати, як-от CSV або JSON, воно не поширюється.
Що саме правило зробить із файлом?#
Видалить розриви рядків і деякі пробільні символи всередині кожної позиції та додасть нові розриви рядків так, щоб кожна позиція була в одному рядку. Вміст окремих елементів воно ніяк не змінює.
Чи гарантує правило порядок елементів у рядку?#
Ні. Правило не гарантує порядку елементів в окремих рядках. Якщо вам потрібен конкретний порядок, його потрібно налаштувати за допомогою інших правил.
Який елемент вводити під час налаштування правила?#
Ви вводите назву елемента, який обмежує одну позицію у фіді, наприклад SHOPITEM. Blending Bull потім забезпечить, щоб кожне входження цього елемента було в окремому рядку.
Чому вирівнювання в таблицю корисне?#
Після вирівнювання кожна позиція в одному рядку, що значно спрощує роботу з іншими правилами. Простіше налаштовуються регулярні вирази, спрямовані на вміст окремих позицій, і надійніше працюють правила на рівні цілих рядків — наприклад, Delete line containing text або Delete empty lines.
Де в Blending Bull налаштувати правило?#
В інтерфейсі вибраного файлу перейдіть на вкладку Edit file, натисніть Create new rule, як тип виберіть Align XML to table, введіть назву елемента, що обмежує одну позицію, і збережіть.