Я собираюсь вырвать свои волосы, пытаясь понять, почему это не подтвердится. Я продолжаю получать ошибку
cvc-elt.1: не удается найти объявление элемента 'ret'. [13]
Прежде чем я получил сообщение об ошибке в schemaLocation, и он говорил мне, что URI должны быть одинаковой длины или чего-то еще, но я исправил это, сделав schemaLocation, target и targetNamespace одинаковыми.
Но он все еще не может найти мое объявление элемента "ret", и я не могу понять, почему. Теперь я не очень хорош в пространствах имен, я не понимаю их так же, как и все остальное.
Любая помощь будет очень полезна, чтобы выяснить, как исправить эту ошибку.
О, также мой файл .xsd называется "ret" и мой первый элемент тоже. Я не думаю, что это вызывает проблему, но это никого не смущает. Это просто требование, которое у меня есть.
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="urn:My.Namespace"
xmlns:target="urn:My.Namespace ret.xsd"
elementFormDefault="qualified"
>
<xs:element name="ret">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" ref="feed" />
<xs:element ref="doc-copyright" />
</xs:sequence>
<xs:attribute fixed="1.0" name="version" type="xs:string" />
<xs:attribute name="date" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
Это часть моего .xsd файла
<?xml version="1.0" encoding="UTF-8"?>
<ret
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.w3schools.com"
xsi:schemaLocation="urn:My.Namespace ret.xsd">
</ret>
Эта часть XML-файла не проверяется. Если мне нужно опубликовать больше, я могу. Это довольно долго, хотя. Мне интересно, если эта ошибка, потому что My.Namespace не является допустимым пространством имен? Я просто не понимаю.