Ваша проблема возникает из-за области видимости ваших объявлений в XML Schema. Ваше объявление <xs:complexType name="contactType"> находится в target namespace "
http://test.org ", поскольку вы указали это пространство имен в атрибуте targetNamespace в начале схемы.
Однако, когда вы используете contactType в <xs:element name="contact" type="contactType" maxOccurs="unbounded" />, вы обращаетесь к нему в качестве ссылки без указания пространства имен. Это ошибка.
Решить эту проблему можно добавив префикс пространства имен к типу при его использовании, таким образом:
Эта строка означает, что мы используем тип contactType из пространства имен "
http://www.w3.org/2001/XMLSchema ", которое было связано с префиксом xs:.
В итоге ваш код будет выглядеть следующим образом:
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://test.org"
elementFormDefault="qualified">
Но в учебном источнике всё именно так. В чем дело-то?