日本国产亚洲-日本国产一区-日本国产一区二区三区-日本韩国欧美一区-日本韩国欧美在线-日本韩国欧美在线观看

當前位置:雨林木風下載站 > 技術開發(fā)教程 > 詳細頁面

soap規(guī)范(4)

soap規(guī)范(4)

更新時間:2022-04-29 文章作者:未知 信息來源:網(wǎng)絡 閱讀次數(shù):

5.4.2 數(shù)組
SOAP數(shù)組定義為具有"SOAP-ENC:Array"類型或一個從"SOAP-ENC:Array"衍生的類型(參見規(guī)則8)。數(shù)組表示為元素值,對元素的名沒有特別的約束(正如元素值并不約束它們所屬的元素)。

數(shù)組可以包含任意類型的元素,包括嵌套數(shù)組。可以創(chuàng)建新的類型(受SOAP-ENC:Array類型限制)來表示數(shù)組,如整數(shù)數(shù)組或某些用戶定義的枚舉。

數(shù)組值表示為組成這個數(shù)組的項的元素的規(guī)則序列。在數(shù)組值中,元素名對于區(qū)分accesor并不重要。元素可以有任意的名。實際上,元素常常用它們在schema中暗示或確定的數(shù)組類型來命名元素。并且一般情況下對于復合值來說,如果數(shù)組中數(shù)組項的值是single-reference值,則這個數(shù)組項包含它的值,否則,該數(shù)組項通過"href"屬性引用這個值。

下面的例子是一個整型數(shù)組的schema片斷:

<element name="myFavoriteNumbers"
type="SOAP-ENC:Array"/>

<myFavoriteNumbers
SOAP-ENC:arrayType="xsd:int[2]">
 <number>3</number>
 <number>4</number>
</myFavoriteNumbers>

在這個例子中,數(shù)組"myFavoriteNumbers"包括幾個成員,每個成員是一個類型為SOAP-ENC:int的值。注意SOAP-ENC:Array允許不受限制的元素名,它們不傳達任何類型信息,所以在使用時,或者它們有xsi:type屬性,或者它們所屬的元素有SOAP-ENC:arrayType屬性。自然,由SOAP-ENC:Array衍生的類型可以聲明局部元素,但這種情況下要包括類型信息。

上面已經(jīng)提到,SOAP-ENC schema包含了元素的聲明,元素名與"XML Schema Part 2: Datatypes"規(guī)范[11]中的簡單類型一致。其中包括了對"Array"的聲明。于是,我們可以這樣寫:

<SOAP-ENC:Array SOAP-ENC:arrayType="xsd:int[2]">
 <SOAP-ENC:int>3</SOAP-ENC:int>
 <SOAP-ENC:int>4</SOAP-ENC:int>
</SOAP-ENC:Array>

數(shù)組可以包含特定arrayType的任意子類型的實例。即,數(shù)組成員可以是arryType屬性值指定的類型的任意子類型,這個類型對于arrayType屬性中指定的類型來說是可替換的(根據(jù)schema中的替換規(guī)則)。例如,一個整型數(shù)組可以包含從整型衍生的任意類型(如"int"或任意用戶定義的從整型衍生的類型)。同樣,一個"address"數(shù)組可能包含一個address的受限類型或擴展類型如"internationalAddress"。因為提供的SOAP-ENC:Array類型允許任意類型的成員,所以可以包含任意類型的混合除非使用arrayType屬性加以特別的限制。

在實例中,可以使用xsi:type指定成員元素的類型,或通過schema中成員元素的聲明來指定。下面是兩個例子。

<SOAP-ENC:Array SOAP-ENC:arrayType="SOAP-ENC:ur-type[4]">
 <thing xsi:type="xsd:int">12345</thing>
 <thing xsi:type="xsd:decimal">6.789</thing>
 <thing xsi:type="xsd:string">
Of Mans First Disobedience, and the Fruit
Of that Forbidden Tree, whose mortal tast
Brought Death into the World, and all our woe,
 </thing>
 <thing xsi:type="xsd:uriReference">
http://www.dartmouth.edu/~milton/reading_room/
 </thing>
</SOAP-ENC:Array>

<SOAP-ENC:Array SOAP-ENC:arrayType="SOAP-ENC:ur-type[4]">
 <SOAP-ENC:int>12345</SOAP-ENC:int>
 <SOAP-ENC:decimal>6.789</SOAP-ENC:decimal>
 <xsd:string>
Of Mans First Disobedience, and the Fruit
Of that Forbidden Tree, whose mortal tast
Brought Death into the World, and all our woe,
 </xsd:string>
 <SOAP-ENC:uriReference>
http://www.dartmouth.edu/~milton/reading_room/
 </SOAP-ENC:uriReference >
</SOAP-ENC:Array>

數(shù)組值可以是結(jié)構或其它復合值。例如"xyz:Order"結(jié)構數(shù)組:

<SOAP-ENC:Array SOAP-ENC:arrayType="xyz:Order[2]">
 <Order>
 <Product>Apple</Product>
 <Price>1.56</Price>
 </Order>
 <Order>
 <Product>Peach</Product>
 <Price>1.48</Price>
 </Order>
</SOAP-ENC:Array>

數(shù)組成員值也可以是數(shù)組。下例是兩個字符串數(shù)組組成的數(shù)組:

<SOAP-ENC:Array SOAP-ENC:arrayType="xsd:string[][2]">
 <item href="#array-1"/>
 <item href="#array-2"/>
</SOAP-ENC:Array>
<SOAP-ENC:Array id="array-1" SOAP-ENC:arrayType="xsd:string[2]">
 <item>r1c1</item>
 <item>r1c2</item>
 <item>r1c3</item>
</SOAP-ENC:Array>
<SOAP-ENC:Array id="array-2" SOAP-ENC:arrayType="xsd:string[2]">
 <item>r2c1</item>
 <item>r2c2</item>
</SOAP-ENC:Array>

包含數(shù)組的元素無需命名為"SOAP-ENC:Array"。它可以有任意的名,只要元素的類型是SOAP-ENC:Array或由之衍生的類型。例如,下面是一個schema片斷和與之一致的數(shù)組實例。

<simpleType name="phoneNumber" base="string"/>

<element name="ArrayOfPhoneNumbers">
<complexType base="SOAP-ENC:Array">
<element name="phoneNumber" type="tns:phoneNumber" maxOccurs="unbounded"/>
</complexType>
<anyAttribute/>
</element>

<xyz:ArrayOfPhoneNumbers SOAP-ENC:arrayType="xyz:phoneNumber[2]">
 <phoneNumber>206-555-1212</phoneNumber>
 <phoneNumber>1-888-123-4567</phoneNumber>
</xyz:ArrayOfPhoneNumbers>

數(shù)組可能是多維的。在這種情況下,在arrayType屬性的asize部分將不止有一個值:

<SOAP-ENC:Array SOAP-ENC:arrayType="xsd:string[2,3]">
 <item>r1c1</item>
 <item>r1c2</item>
 <item>r1c3</item>
 <item>r2c1</item>
 <item>r2c2</item>
 <item>r2c3</item>
</SOAP-ENC:Array>

雖然上面的例子把數(shù)組編碼為獨立的元素,但元素值也可以是嵌入形式,而且若元素值是single reference時,必須編碼為嵌入形式。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統(tǒng)下載排行

主站蜘蛛池模板: 国产a不卡片精品免费观看 国产a国产 | 美女三级毛片 | 亚洲欧美日韩高清mmm777 | 美女超爽久久久久网站 | 性满足久久久久久久久 | 亚洲久久久久久久 | 国产一区二区在线观看视频 | 久久乐国产综合亚洲精品 | 国产资源在线免费观看 | 99久久精品久久久久久婷婷 | 521a久久九九久久精品 | 国产精品hd免费观看 | 中文字幕日本在线视频二区 | 欧美另类xx| 欧美人与动人物a级网站 | 久久久久久久蜜桃 | 亚洲第一区精品观看 | 久久99国产精一区二区三区 | 91精品国产肉丝高跟在线 | 超级碰碰永久免费视频播放 | 最新69成人精品毛片 | 亚洲欧美小视频 | 欧美啪啪片 | 黄网站色在线视频免费观看 | 欧美午夜a级限制福利片 | 最近中文字幕 | 久久免费国产精品一区二区 | 巨大乳女人做爰视频在线看 | 视频二区在线 | 欧美国产一区视频在线观看 | 久久亚洲伊人中字综合精品 | 精品国产一区二区三区19 | 中文字幕xxx | 中文字幕在线观看第一页 | 日本免费一区二区在线观看 | 国产精品吹潮香蕉在线观看 | 一二三四日本高清 | 免费日本视频 | 久久精品国产400部免费看 | 精品国精品国产自在久国产不卡 | 99精品视频在线观看re |