# cvc-elt.1.a: не знайдено оголошення елемента

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

Схема оголошує stock у urn:example:stock, а помилковий XML містить stock без простору імен. Додавання потрібного default namespace змінює повні назви stock і його дитини sku. Вони відповідають кваліфікованим оголошенням цієї схеми без зміни самих значень даних.

1. URI кореня відрізняється від targetNamespace або namespace зовсім відсутній. Регістр, кінцевий слеш та інші символи ідентифікатора важливі.
2. Вибрано неправильну вхідну схему. Файл із повторно використовуваними типами може не містити глобального оголошення документа застосунку.
3. Змінилися назва кореня або версія словника. Схоже оголошення з іншого випуску не доводить сумісність отриманого документа.

Запишіть корінь як {URI}local-name і порівняйте з xs:element верхнього рівня обраного проєкту. Переконайтеся, що застосунок справді передає цю схему валідатору. Для багатофайлового контракту завантажте залежності та виберіть його справжній вхідний XSD. Після ремонту кореня знову перевірте нащадків: elementFormDefault може виявити окремі невідповідності кваліфікації.

У цьому зразку причина безпосередньо пов’язана з namespace: єдина зміна XML додає xmlns="urn:example:stock". Оголошення xmlns:xsi або підказка schemaLocation самі не переміщують stock до потрібного URI. Натомість інше написання префікса зі збереженням правильної прив’язки не змінює ідентичність елемента.

Виміряний читач .NET із ReportValidationWarnings видає попередження для stock і sku без подій помилки. Такий результат не підтверджує покриття схемою. Xerces, libxml2 і другий рушій XSDHub відхиляють цей самий корінь. Окремий strict-wildcard-зразок пояснює відмінне формулювання is not declared.


## Undeclared root / cvc-elt.1.a — Broken

```xml
<stock>
  <sku>BK-204</sku>
</stock>
```

```xml
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:example:stock" elementFormDefault="qualified">
  <xs:element name="stock">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="sku" type="xs:string"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>
```

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

## Undeclared root / cvc-elt.1.a — Corrected

```xml
<stock xmlns="urn:example:stock">
  <sku>BK-204</sku>
</stock>
```

```xml
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:example:stock" elementFormDefault="qualified">
  <xs:element name="stock">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="sku" type="xs:string"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>
```

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

### Apache Xerces-J 2.12.2

```text
cvc-elt.1.a: Cannot find the declaration of element 'stock'.
```

Corrected: PASS.

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

```text
No error event; warnings:
Could not find schema information for the element 'stock'.
Could not find schema information for the element 'sku'.
```

Corrected: PASS.

### XSDHub libxml2/WASM 0.7.2

```text
Element 'stock': No matching global declaration available for the validation root.
```

Corrected: PASS.

### XSDHub xmlschema 4.3.1 · XSD 1.0

```text
'stock' is not an element of the schema
```

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)
