PARSER ERROR CODES

cvc-complex-type.2.4.a: неприпустимий дочірній елемент

XSDHub · Перевірено 5 листопада 2026 · Як перевіряються посібники

Валідатор зустрів дочірній елемент, який неможливо прийняти в поточній позиції батька. Розмітка може залишатися синтаксично правильною: порушено модель вмісту зі схеми, а не правила закриття тегів XML.

Що повідомлення означає буквально

Фраза starting with element називає перший перехід, який не відповідає очікуваній моделі. Перелік очікуваних назв описує дозволене продовження саме тут, а не всі оголошення проєкту. У зразку quantity має стояти перед price; перестановка зберігає обидва значення й виправляє послідовність.

Три поширені причини для перевірки

  1. Серіалізатор записує поля в порядку, відмінному від xs:sequence. Алфавітне сортування властивостей може утворити правильні теги в неправильних позиціях.
  2. Пропущено обов’язковий попередній елемент. Додавання очікуваного поля наприкінці не допоможе, якщо його місце перед названим вузлом.
  3. Не збігаються простір імен, написання або батьківський контейнер. Оголошення схожого елемента в сусідньому типі не дозволяє його всюди.

Виправлення та повторна перевірка

Знайдіть оголошення батька й пройдіть модель від першої дитини. Порівнюйте фактичні вузли з xs:sequence або вибраною гілкою xs:choice до найпершої невідповідності. Виправте порядок у джерелі експорту, після чого перевірте весь документ: початкове порушення іноді приховує наступні помилки, які стають видимими лише після його усунення.

Коли причина у просторі імен

Коли локальна назва вже збігається з очікуваною, порівняйте разом URI простору імен і local-name. Враховуйте успадкований xmlns та скидання xmlns="". Зміна префікса зі збереженням URI не змінює ідентичність елемента; видалення префікса без відповідного default namespace може її змінити.

Як зіставляти звіти рушіїв

System.Xml.Schema називає цей виміряний випадок has invalid child element, а libxml2 — This element is not expected. Нижче залишено буквальні результати запуску. Не замінюйте сувору послідовність на xs:any лише заради успіху перевірки: система одержувача все ще може потребувати початкового порядку полів.

Повні перевірені пари XML та XSD

Відкрийте потрібний варіант у редакторі й натисніть Validate XML. Завантаження прикладу не запускає перевірку та не надсилає документи; серверний режим потребує окремої згоди.

Журнали отримано 5 листопада 2026 року під час запуску саме тих файлів, які наведено нижче. Завантажити виміряні результати та хеші SHA-256.

Unexpected child / cvc-complex-type.2.4.a

Помилковий XML

<order>
  <price>12.50</price>
  <quantity>3</quantity>
</order>
Повна помилкова XSD
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="order">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="quantity" type="xs:positiveInteger"/>
        <xs:element name="price" type="xs:decimal"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

Завантажити XML · Завантажити XSD

Відкрити помилкову пару →

Виправлений XML

<order>
  <quantity>3</quantity>
  <price>12.50</price>
</order>
Повна виправлена XSD
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="order">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="quantity" type="xs:positiveInteger"/>
        <xs:element name="price" type="xs:decimal"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

Завантажити XML · Завантажити XSD

Відкрити виправлену пару →

Один зразок у різних рушіях

РушійПомилка: справжній звітВиправлено
Apache Xerces-J 2.12.2
Validation
cvc-complex-type.2.4.a: Invalid content was found starting with element 'price'. One of '{quantity}' is expected.
PASS
.NET 8.0.33 · System.Xml.Schema
Validation
The element 'order' has invalid child element 'price'. List of possible elements expected: 'quantity'.
PASS (no warnings)
XSDHub libxml2/WASM 0.7.2
Validation
Element 'price': This element is not expected. Expected is ( quantity ).
PASS
XSDHub xmlschema 4.3.1 · XSD 1.0
Validation
Unexpected child with tag 'price' at position 1. Tag 'quantity' expected.
PASS
SaxonЗіставлення з EE: cvc-complex-type.2.4.a позначає відповідне обмеження XSD. Запуск Saxon-EE та буквальне формулювання не заявлено: ліцензія EE недоступна. Saxon-HE не виконує XSD-валідацію.Не запускався

Зіставлення із Saxon та межі перевірки

Документація Saxonica відносить обробку XSD до Enterprise Edition. Рядки Saxon зіставляють обмеження та не видають вигадані повідомлення за результат. Чотири виміряні рядки стосуються Xerces, .NET, локального рушія редактора й другого рушія XSDHub.

Успішні виправлення стосуються цих самодостатніх зразків XSD 1.0. Вони не підтверджують виконання бізнес-правил для іншого документа чи версії схеми.

Продовжити діагностику

Усі коди помилок парсерів · Валідатор XML та XSD

Першоджерела