xml-名称相同但类型不同的元素

xml-名称相同但类型不同的元素,xml,Xml,理想情况下,我希望能够在complexType的不同元素中使用相同的子元素名称。结果是一个测验目录。一些子元素也是complexType。这样可能吗? 这就是我到目前为止所做的: <?xml version="1.0" encoding="UTF-8"?> <xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name=

理想情况下,我希望能够在complexType的不同元素中使用相同的子元素名称。结果是一个测验目录。一些子元素也是complexType。这样可能吗? 这就是我到目前为止所做的:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">


<xs:element name="catalog"/>

<xs:complexType name="textint">
    <xs:sequence>
        <xs:element name="s" type="xs:string"/>
        <xs:element name="i" type="xs:int"/>
        <xs:element name="s" type="xs:string"/>
    </xs:sequence>
</xs:complexType>


<xs:complexType mixed="true" name="inttext">
    <xs:sequence>
        <xs:element name="i" type="xs:int"/>
        <xs:element name="s" type="xs:string"/>
        <xs:element name="i" type="xs:int"/>
        <xs:element name="s" type="xs:string"/>
    </xs:sequence>
</xs:complexType>




<xs:element name="Qstr">
    <xs:complexType>
        <xs:sequence>
            <xs:element name="text" type="xs:string"/>
            <xs:element name="a" type="xs:string"/>
            <xs:element name="b" type="xs:string"/>
            <xs:element name="c" type="xs:string"/>
            <xs:element name="d" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>
</xs:element>





<xs:element name="Qfl">
    <xs:complexType mixed="true">
        <xs:sequence>
            <xs:element name="text" type="textint" />
            <xs:element name="a" type="xs:int"/>
            <xs:element name="b" type="xs:float"/>
            <xs:element name="c" type="xs:int"/>
            <xs:element name="d" type="xs:int"/>
        </xs:sequence>
    </xs:complexType>
</xs:element>




<xs:element name="Qinttext">
    <xs:complexType mixed="true">
        <xs:sequence>
            <xs:element name="text" type="xs:inttext"/>
            <xs:element name="a" type="xs:int"/>
            <xs:element name="b" type="xs:int"/>
            <xs:element name="c" type="xs:int"/>
            <xs:element name="d" type="xs:int"/>
        </xs:sequence>
    </xs:complexType>
</xs:element>




<xs:element name="Qtextint">
    <xs:complexType mixed="true">
        <xs:sequence>   
            <xs:element name="text" type="xs:textint"/>
            <xs:element name="a" type="xs:textint"/>
            <xs:element name="b" type="xs:int"/>
            <xs:element name="c" type="xs:int"/>
            <xs:element name="d" type="xs:textint"/>
        </xs:sequence>
    </xs:complexType>
</xs:element>



</xs:schema>


在Unix系统中是否可以使用网络通信机制?
插座
消息队列
管
信号量
意大利之音:
Rom
雅典娜
波恩
马德里
Wurzel von 100 ist的模具:
10
2,76
5.
1.
1+1 = ?
2.
1.
3.
4.
斯宾宁。。。
…哈本8贝恩
…sind Insekten
…辛德·沃格尔
…werden bis zu 100 Jahre alt
斯潘尼恩·霍普施塔特:
马德里
巴塞罗那
Rom
伦敦

是的,这是完全可能的。元素A作为元素X的子元素不必具有与元素A作为元素Y的子元素相同的类型。要实现这一点,您需要在定义X和Y类型的复杂类型中使用局部元素声明(
,而不是

<?xml version="1.0" encoding="UTF-8"?>

<catalog>

    <Qstr>
        <text>Welcher Mechanismus kann unter Unix zur Kommunikation über das Netzwerk verwendet werden?</text>
        <a>Sockets</a>
        <b>Message Queues</b>
        <c>Pipes</c>
        <d>Semaphore</d>
    </Qstr>

    <Qstr>
        <text>Die Hauptstadt von Italien ist:</text>
        <a>Rom</a>
        <b>Athen</b>
        <c>Bonn</c>
        <d>Madrid</d>
    </Qstr>

    <Qfl>
        <text>Die Quadratwurzel von 100 ist:</text>
        <a>10</a>
        <b>2,76</b>
        <c>5</c>
        <d>1</d>
    </Qfl>

    <Qinttext>
        <text>1+1 = ?</text>
        <a>2</a>
        <b>1</b>
        <c>3</c>
        <d>4</d>
    </Qinttext>

    <Qtextint>
        <text>Spinnen...</text>
        <a>...haben 8 Beine</a>
        <b>...sind Insekten</b>
        <c>...sind Vögel</c>
        <d>...werden bis zu 100 Jahre alt</d>
    </Qtextint>

    <Qstr>
        <text>Die Hauptstadt von Spanien ist:</text>
        <a>Madrid</a>
        <b>Barcelona</b>
        <c>Rom</c>
        <d>London</d>
    </Qstr>

</catalog>