# cvc-complex-type.2.4.d: дитина більше не очікується

Батько вже прийняв увесь дозволений моделлю вміст, проте з’являється ще один дочірній елемент. Xerces повідомляє, що в цій позиції жодна дитина не очікується. Синтаксичний розбір самого тега при цьому може бути успішним.

У batch дозволено лише один line. Другий line перевищує maxOccurs="1"; видалення випадкового дубля виправляє навчальний документ. Для справжніх даних спершу з’ясуйте походження кожного запису: приклад не дає підстав викидати значущу інформацію з виробничого обміну.

1. Кількість дітей перевищує максимум. Без явного maxOccurs типовим значенням є один, а не необмежене число повторень.
2. Виведено дві взаємовиключні гілки xs:choice. Після завершення дозволеної гілки інша може стати неприпустимим доповненням.
3. Поле потрапило на неправильний рівень вкладення. Дані наступного запису опинилися в уже завершеному контейнері попереднього запису.

Розгляньте обмеження дитини та навколишніх частинок, а тоді порахуйте фактичні входження в порядку документа. Визначте місце, після якого валідатор очікує закриття батька. Виправте цикл експорту, межу контейнера або об’єднання джерел. Перевірте справжній багаторядковий зразок, щоб підтвердити збереження всіх потрібних записів, а не тільки зникнення повідомлення.

Зміна namespace не змусить вичерпану модель прийняти додаткову дитину. Неправильний URI міг вплинути на попередній вибір гілки, тому спочатку розберіть ранні діагностики. Коли другий line має те саме повне ім’я, що й успішно прийнятий перший, найсильніша підказка стосується кількості повторень.

Суфікс a часто називає інше допустиме продовження, а суфікс d вказує на завершення приймання дітей. Збільшення maxOccurs змінює контракт і може приховати випадкове дублювання джерела. Зіставте цей крок із вимогами одержувача перед редагуванням XSD заради успішного результату.


## Extra child / cvc-complex-type.2.4.d — Broken

```xml
<batch>
  <line>A</line>
  <line>B</line>
</batch>
```

```xml
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="batch">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="line" type="xs:string" maxOccurs="1"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>
```

[Open broken pair](https://xsdhub.com/?example=parser-extra-child&variant=bad#workbench)

## Extra child / cvc-complex-type.2.4.d — Corrected

```xml
<batch>
  <line>A</line>
</batch>
```

```xml
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="batch">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="line" type="xs:string" maxOccurs="1"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>
```

[Open corrected pair](https://xsdhub.com/?example=parser-extra-child&variant=good#workbench)

### Apache Xerces-J 2.12.2

```text
cvc-complex-type.2.4.d: Invalid content was found starting with element 'line'. No child element is expected at this point.
```

Corrected: PASS.

### .NET 8.0.33 · System.Xml.Schema

```text
The element 'batch' has invalid child element 'line'.
```

Corrected: PASS.

### XSDHub libxml2/WASM 0.7.2

```text
Element 'line': This element is not expected.
```

Corrected: PASS.

### XSDHub xmlschema 4.3.1 · XSD 1.0

```text
Unexpected child with tag 'line' at position 2.
```

Corrected: PASS.

Saxon EE was not available; no measured Saxon wording is claimed.

[All parser codes](https://xsdhub.com/learn#parser-error-codes)
[Download engine evidence](https://xsdhub.com/parser-error-examples/engine-evidence.json)
