schema定义元素无限嵌套?

如题
如何实现类似










上面想给代码加颜色,多加了个颜色标签
[code="java"]
<?xml version="1.0" encoding="UTF-8"?>
xmlns:tns="http://www.example.org/ns"
targetNamespace="http://www.example.org/ns"
elementFormDefault="qualified">

<element name="foo">
    <complexType>
        <sequence>
            <element ref="tns:item"/>
            <!-- 这个也行
            <element name="item" type="tns:ItemType"/>
             -->
        </sequence>
    </complexType>
</element>


<element name="item" type="tns:ItemType"/>

<!-- minOccurs="0" 一定要为0 否则死循环 -->
<complexType name="ItemType">
    <sequence>
        <element name="item" type="tns:ItemType" minOccurs="0"  maxOccurs="unbounded"/>
    </sequence>
</complexType>


[/code]

内部的 element type设为 complexType 自身即可;

[code="java"]
<?xml version="1.0" encoding="UTF-8"?>
xmlns:tns="http://www.example.org/ns"
targetNamespace="http://www.example.org/ns"
elementFormDefault="qualified">

<element name="foo">
    <complexType>
        <sequence>
            <element ref="tns:item"/>
            <!-- 这个也行
            <element name="item" type="tns:ItemType"/>
             -->
        </sequence>
    </complexType>
</element>


<element name="item" type="tns:ItemType"/>

<!-- minOccurs="0" 一定要为0 否则死循环 -->
<complexType name="ItemType">
    <sequence>
        <element name="item" type="tns:ItemType" [color=blue]minOccurs="0"[/color]  maxOccurs="unbounded"/>
    </sequence>
</complexType>


[/code]