Батько вже прийняв увесь дозволений моделлю вміст, проте з’являється ще один дочірній елемент. Xerces повідомляє, що в цій позиції жодна дитина не очікується. Синтаксичний розбір самого тега при цьому може бути успішним.
Що повідомлення означає буквально
У batch дозволено лише один line. Другий line перевищує maxOccurs="1"; видалення випадкового дубля виправляє навчальний документ. Для справжніх даних спершу з’ясуйте походження кожного запису: приклад не дає підстав викидати значущу інформацію з виробничого обміну.
Три поширені причини для перевірки
Кількість дітей перевищує максимум. Без явного maxOccurs типовим значенням є один, а не необмежене число повторень.
Виведено дві взаємовиключні гілки xs:choice. Після завершення дозволеної гілки інша може стати неприпустимим доповненням.
Поле потрапило на неправильний рівень вкладення. Дані наступного запису опинилися в уже завершеному контейнері попереднього запису.
Виправлення та повторна перевірка
Розгляньте обмеження дитини та навколишніх частинок, а тоді порахуйте фактичні входження в порядку документа. Визначте місце, після якого валідатор очікує закриття батька. Виправте цикл експорту, межу контейнера або об’єднання джерел. Перевірте справжній багаторядковий зразок, щоб підтвердити збереження всіх потрібних записів, а не тільки зникнення повідомлення.
Коли причина у просторі імен
Зміна namespace не змусить вичерпану модель прийняти додаткову дитину. Неправильний URI міг вплинути на попередній вибір гілки, тому спочатку розберіть ранні діагностики. Коли другий line має те саме повне ім’я, що й успішно прийнятий перший, найсильніша підказка стосується кількості повторень.
Як зіставляти звіти рушіїв
Суфікс a часто називає інше допустиме продовження, а суфікс d вказує на завершення приймання дітей. Збільшення maxOccurs змінює контракт і може приховати випадкове дублювання джерела. Зіставте цей крок із вимогами одержувача перед редагуванням XSD заради успішного результату.
Повні перевірені пари XML та XSD
Відкрийте потрібний варіант у редакторі й натисніть Validate XML. Завантаження прикладу не запускає перевірку та не надсилає документи; серверний режим потребує окремої згоди.
cvc-complex-type.2.4.d: Invalid content was found starting with element 'line'. No child element is expected at this point.
PASS
.NET 8.0.33 · System.Xml.Schema Validation
The element 'batch' has invalid child element 'line'.
PASS (no warnings)
XSDHub libxml2/WASM 0.7.2 Validation
Element 'line': This element is not expected.
PASS
XSDHub xmlschema 4.3.1 · XSD 1.0 Validation
Unexpected child with tag 'line' at position 2.
PASS
Saxon
Зіставлення з EE: cvc-complex-type.2.4.d позначає відповідне обмеження XSD. Запуск Saxon-EE та буквальне формулювання не заявлено: ліцензія EE недоступна. Saxon-HE не виконує XSD-валідацію.