Схема XML: все, последовательность и группы
Я впервые пишу XML-схему и нашел несколько полезных инструментов, которые помогут мне ее написать.
Сейчас я в странной ситуации. Схема, которую я написал, действительна для некоторых инструментов, а не для некоторых других. Эта схема представляет собой смесь «все», «последовательность» и "группа". Вот моя XML-схема:
<?xml version="1.0" encoding="utf-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:group name="test">
<xsd:all>
<xsd:element name="e2" minOccurs="0" maxOccurs="1"/>
<xsd:element name="e3" minOccurs="0" maxOccurs="1"/>
<xsd:element name="e4" minOccurs="0" maxOccurs="1"/>
</xsd:all>
</xsd:group>
<xsd:element name="e0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="e1" maxOccurs="unbounded"/>
<xsd:group ref="test"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
Правильна ли эта схема? Это идет прямо сэтот валидатор а такжеэтот тоже но плагин XML Tools для Notepad ++ сообщает "Невозможно проанализировать файл схемы".
П.С .: Я написал эту схему, потому что хотел иметь элемент "e0" с этим возможность иметь смесь e1, e2, e3 и e4. e2, e3 и e4 должны появляться 0 или 1 раз, а e1 может возникать в незапланированное время. Например, эти XML-файлы должны пройти:
<e0>
<e1/>
<e1/>
<e1/>
<e1/>
<e1/>
<e2/>
</e0>
<e0>
<e2/>
<e3/>
<e4/>
</e0>
<e0>
<e1/>
<e2/>
<e3/>
<e4/>
</e0>
Вы знаете другой способ сделать это?
Спасибо