# cvc-complex-type.2.4.b: содержимое элемента неполно

Родитель закрывается раньше, чем его модель содержимого допускает завершение. Все уже прочитанные дети могут быть правильными; нарушение обнаруживается именно на закрывающем теге, потому что обязательное продолжение отсутствует.

Сообщение о неполном содержимом означает, что хотя бы одна обязательная частица схемы не удовлетворена. Здесь quantity принят, но price отсутствует. У price не указан minOccurs, поэтому действует значение один. Исправленный документ добавляет десятичную цену внутри order перед его закрытием.

1. Экспорт пропустил обязательное поле с пустым значением в базе. Отсутствие исходного значения не делает объявленный дочерний элемент необязательным.
2. Повторяемая группа встретилась меньше положенного числа раз. Проверять нужно ограничения группы и её ребёнка, а не только ближайший minOccurs.
3. Начата ветвь выбора, но её обязательное содержимое не завершено. Выбор ветви может требовать дополнительные потомки перед закрытием контейнера.

Прочитайте ожидаемые имена в диагностике и найдите их объявления внутри указанного родителя. Подсчитайте вхождения с учётом окружающих групп. Восстановите отсутствующее значение на правильном месте; если отсутствие допустимо по смыслу, изменение схемы согласуют с её владельцем. Пустой тег вместо числа может устранить нехватку ребёнка и сразу вызвать отдельную ошибку типа.

Иногда видимый ребёнок существует, но относится к другому URI из-за унаследованного namespace или xmlns="". Обычно перед сообщением о неполноте тогда появляется unexpected-child. Начинайте с первой диагностики, иначе добавление второго похожего элемента может замаскировать неправильный экспорт.

Фраза .NET The element … has incomplete content относится к тому же проверенному закрывающему родителю. Успех проверки синтаксиса доказывает только корректность разметки. Он не устанавливает наличие всех обязательных детей и не заменяет валидацию XML вместе с настоящей схемой.


## Incomplete content / cvc-complex-type.2.4.b — Broken

```xml
<order>
  <quantity>3</quantity>
</order>
```

```xml
<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>
```

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

## Incomplete content / cvc-complex-type.2.4.b — Corrected

```xml
<order>
  <quantity>3</quantity>
  <price>12.50</price>
</order>
```

```xml
<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>
```

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

### Apache Xerces-J 2.12.2

```text
cvc-complex-type.2.4.b: The content of element 'order' is not complete. One of '{price}' is expected.
```

Corrected: PASS.

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

```text
The element 'order' has incomplete content. List of possible elements expected: 'price'.
```

Corrected: PASS.

### XSDHub libxml2/WASM 0.7.2

```text
Element 'order': Missing child element(s). Expected is ( price ).
```

Corrected: PASS.

### XSDHub xmlschema 4.3.1 · XSD 1.0

```text
The content of element 'order' is not complete. Tag 'price' expected.
```

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)
