Валідатор XML
Перевірте, чи правильно сформовано документ XML, перш ніж публікувати стрічку даних, карту сайту, SVG або файл конфігурації. Валідатор перевіряє теги, атрибути, вкладеність і символи та повідомляє про першу проблему, вказуючи її рядок, стовпець і пояснення аналізатора, наприклад невідповідність закривального тега. Для правильно сформованих документів відображаються кореневий елемент, кількість елементів і атрибутів, а також глибина вкладеності. Інструмент перевіряє правильність формування, а не правила DTD чи XSD.
Поширені запитання
Чим правильно сформований XML відрізняється від дійсного XML?
Правильно сформований XML відповідає базовим правилам синтаксису: має один кореневий елемент, належно вкладені й закриті теги та атрибути в лапках. Валідний XML додатково відповідає DTD або XML Schema, які визначають дозволені елементи. Цей інструмент перевіряє правильність формування, яку кожен аналізатор XML вимагає перед будь-якою іншою перевіркою.
Що саме перевіряється?
Валідатор перевіряє, чи є рівно один кореневий елемент, чи закрито кожен тег у правильному порядку, чи дозволені назви тегів і атрибутів, чи взято значення атрибутів у лапки й чи не повторюються вони, а також чи немає сторонніх символів поза елементами. Допускаються декларація XML, коментарі, секції CDATA та інструкції обробки.
Що означають типи помилок?
Помилки поділяються на чотири групи: структура документа, теги, атрибути й символи. У рядку помилки назву групи наведено звичайними словами, а в рядку з подробицями — точне пояснення аналізатора, наприклад очікуваний тег. В обох рядках указано номер рядка та стовпця, де виникла проблема.
Чому відхиляється атрибут без значення?
HTML дозволяє булеві атрибути, як-от <input disabled>, але XML вимагає, щоб кожен атрибут мав значення в лапках. Напишіть disabled="disabled" або вилучіть атрибут. Це саме правило діє для файлів SVG і XHTML.
Чи можна перевірити за допомогою цього інструмента HTML?
Лише XHTML, тобто HTML, записаний як XML. Звичайний HTML допускає незакриті елементи, як-от <br> або <img>, а також атрибути без лапок, що не дозволено в XML, тому такий файл зазвичай буде позначено як неправильно сформований.
Чи підтримуються декларації DOCTYPE та сутності?
DOCTYPE із деклараціями сутностей приймається під час синтаксичної перевірки, але сутності ніколи не розгортаються й зовнішні файли не завантажуються. Завдяки цьому перевірка відбувається швидко й захищена від атак із розгортанням сутностей. Попередньо визначені сутності, як-от & і <, завжди дозволені.
Чи підтримуються простори імен?
Імена з префіксами, як-от svg:rect або xsi:schemaLocation, дозволені як назви елементів і атрибутів. Валідатор не визначає URI просторів імен і не перевіряє, чи оголошено кожен префікс.
Що показує статистика валідного документа?
Кореневий елемент — це зовнішній тег. Elements — кількість усіх елементів, зокрема кореневого, а Attributes — кількість усіх атрибутів у документі. Максимальна глибина — найглибший рівень вкладеності, де кореневий елемент — це рівень 1. Ці числа допомагають упевнитися, що стрічка даних або експорт містить усе потрібне.
Як рахуються номери рядків і стовпців?
Відлік обох починається з 1 від початку вхідних даних. Позиція вказує, де аналізатор помітив проблему; для незакритого тега це може бути сам відкривальний тег. Повідомляється лише про першу помилку.
Який максимальний розмір XML і чи можна його перетворити?
Вхідні дані можуть мати розмір до 5 MiB. Щоб перетворити правильно сформований документ на JSON, YAML, CSV або інший формат, скористайтеся Конвертером форматів даних або інструментом XML у JSON.