ошибка проверки схемы xml "префикс не привязан"
Я совершенно новичок в XML-схеме и пытаюсь получить основы. Вот мой код схемы xml (имя файла: example1.xsd-файл):
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:sample="http://www.example"
targetNamespace="http://www.example.com"
elementFormDefault="qualified">
<xs:element name="school">
<xs:complexType>
<xs:sequence>
<xs:element name="element1" type="xs:string"/>
<xs:element name="element2" type="xs:string"/>
<xs:element name="element3" type="xs:string"/>
<xs:element name="element4" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
вот XML-документ.
<?xml version="1.0" encoding="UTF-8"?>
<sample:school xmlns="http://www.example.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="./example1.xsd">
<element1>hello</element1>
<element2>hello</element2>
<element3>hello</element3>
<element4>hello</element4>
</sample:school>
при попытке проверить xml-файл, я получаю сообщение об ошибке от netbeans, которое говорит: Префикс " sample "для элемента" sample:school " не связан. [9]
3 ответов
в вашем XML вам либо нужно:
A. Удалить sample:
префикс от sample:school
или
B. Изменить xmlns="http://www.example.com"
to xmlns:sample="http://www.example.com"
и добавить sample:
префикс для остальных элементов (<sample:element1>
, <sample:element2>
, etc.)
когда вы получаете такую ошибку, самый простой способ-добавить объявление префикса; в вашем случае, согласно схеме, просто добавьте в свой корневой элемент следующий атрибут:
xmlns:sample="http://www.example.com"
кроме того, это скорее связано с пространства имен XML.
Это не прямой ответ на ваш вопрос, но я пришел сюда, пытаясь решить свои собственные проблемы, так что, возможно, это поможет кому-то тоже.
моя собственная ошибка "префикс ns2 не связан" появилась после обновления с Weblogic 10.3.6 до 12.2.1.2.
в более высокой версии по умолчанию реализация JAXB-Moxy, поэтому мне пришлось изменить javax.XML.связывать.JAXBContext на com.солнце.XML.связывать.П2.ContextFactory.