На самом деле, ваш XSD пронизан множеством проблем. Попытайтесь использовать достойный редактор XSD/XML, он должен помочь вам больше, чем вы думаете.
Проблема:
- атрибуты мощностных (мин/макс Встречается) не применима к глобальным объявлениям элементов.
- Если вы ссылаетесь на тип, вы должны иметь определение этого типа, простого или сложного, где-нибудь.
Я хотел бы начать с образцом XML, так как вы знаете, что уже:
<Cluster>
<Node>node1</Node>
<Node>node2</Node>
</Cluster>
Тогда вы могли бы использовать приличный инструмент для создания XSD, предмет, который более сложен, чем простой XML вы просто визуализируется:
<?xml version="1.0" encoding="utf-8"?>
<!--W3C Schema generated by QTAssistant/W3C Schema Refactoring Module (http://www.paschidev.com)-->
<xsd:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="Cluster">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="unbounded" name="Node" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
Здесь вы можете увидеть maxOccurs, а затем изменить его на нужное значение. По мере того, как вы более знакомы с синтаксисом XSD, вы можете начать редактировать рабочий XSD во что-то, что имеет больше смысла; в конце концов, вероятность XSD может не всегда быть приятной толпой ...
Этого достаточно! Добавьте также maxoccurs = unbounded. Вы можете найти некоторые рекомендации по XSD и спискам здесь: http://www.xfront.com/ElementHierarchy.html –