我已經問過這個問題。我想我以前可能會問這個問題。我想要一個相同類型的xsd元素在xsd中出現三次。我想知道這是否可能。定義一個具有相同屬性和元素名稱的XSD
我在下面給出了我的預期xml輸出。
<Primary>
<Name>Harold</Name> (guy1 data)
<Mobile>2356</Mobile>
</Primary>
<Primary>
<Name>Finch</Name>(guy2 data)
<Mobile>4567</Mobile>
</Primary>
<Primary>
<Name>John</Name>(guy3 data)
<Mobile>1234</Mobile>
</Primary>
我爲這個預期的xml創建了XSD。
<xs:element name="primary" minOccurs="0" maxOccurs="unbounded">
<xs:complexType >
<xs:sequence>
<xs:element name="name" type="xs:string"></xs:element>
<xs:element name="mobile" type="xs:string"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
這是我想要的場景。我知道主標籤在我的xml中會出現三次。我想知道是否可以讓這些元素在xsd中出現三次。也許像這樣
<xs:element name="primary" minOccurs="0" maxOccurs="unbounded">
<xs:complexType >
<xs:sequence>
<xs:element name="name" type="xs:string"></xs:element>
<xs:element name="mobile" type="xs:string"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="primary" minOccurs="0" maxOccurs="unbounded">
<xs:complexType >
<xs:sequence>
<xs:element name="name" type="xs:string"></xs:element>
<xs:element name="mobile" type="xs:string"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="primary" minOccurs="0" maxOccurs="unbounded">
<xs:complexType >
<xs:sequence>
<xs:element name="name" type="xs:string"></xs:element>
<xs:element name="mobile" type="xs:string"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
如果這是一個愚蠢的問題,我很抱歉。我對XSD和XML非常陌生。我需要它在xsd中出現三次的原因是我在Visual Studio 2012中從Tf xml生成器創建xml。我需要在xsd中將數據映射爲一對一。如果我使用複雜的類型和順序,它只會在xsd中出現一次,並且我不能將man 2和guy 3的數據與標籤相關聯,因爲它在xsd中只出現一次。我試圖這樣做,因爲我試圖避免編碼。如果我不能這樣做,我會在visual studio ssis包中使用腳本組件。