Я пытаюсь заставить Eclipse проверить созданный мной XML-файл по схеме, которую я тоже создал, но она не работает, у меня нет записи "Проверить" в контекстном меню.
Я использую Eclipse 3.6.2 с ADT 10.0.1 и в Справке -> О программе -> Сведения об установке, вкладка Плагины. У меня есть Eclipse XML Editors and Tools версия 1.1.103.
В соответствии с тем, что я нашел на веб-сайте Eclipse и другими вопросами по SO, я должен иметь возможность щелкнуть правой кнопкой мыши по XML-файлу и нажать «Подтвердить». Мое контекстное меню не имеет записи "Проверить", и все, что я нахожу, предполагает, что оно есть. Я вошел в Eclipse Preferences -> XML -> XML Files -> Validation и поставил галочку «Включить проверку разметки», но это ничего не изменило ..
Кроме того, изменение значения noNamespaceSchemaLocation на что-то неправильное не приводит к ошибкам при сохранении файла XML. Понятия не имею, что мне здесь не хватает
Идея состояла в том, чтобы на панели свойств в Eclipse был раскрыт раскрывающийся список для атрибута «name» элемента, отображающий допустимые значения, что, я надеюсь, произойдет, как только я смогу проверить XSD.
Похожие вопросы
eclipse: проверить xml с помощью xsd , как и я, решение не найдено, хотя ответ принят. В комментариях упоминается платформа Web Tools, которая установлена.
Проверка XML и автозаполнение в Eclipse Я сделал то, что упоминает принятый ответ
Файлы
Они, наверное, ужасны, я раньше не делал много XML.
res/xml/magicks.xml
<?xml version="1.0" encoding="utf-8"?>
<magicks xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="magicksschema.xsd">
<magick name="Haste" description="Increases the wizard's movement speed by up to double for 10 seconds.">
<combination>
<element name="Lightning"/>
<element name="Arcane" />
<element name="Fire" />
</combination>
</magick>
</magicks>
res/xml/magicksschema.xsd
:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<xs:element name="magicks">
<xs:complexType>
<xs:sequence>
<xs:element name="magick" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="combination">
<xs:complexType>
<xs:sequence>
<xs:element name="element" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="name">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Water" />
<xs:enumeration value="Life" />
<xs:enumeration value="Shield" />
<xs:enumeration value="Cold" />
<xs:enumeration value="Lightning" />
<xs:enumeration value="Arcane" />
<xs:enumeration value="Earth" />
<xs:enumeration value="Fire" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="name" type="xs:string" />
<xs:attribute name="description" type="xs:string" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
Редактировать
- Обновлена схема до версии @Per Normann