建立其他節點或類型的參考
您可以使用全域節點建立可重複使用的資料型別 (結構片段),以在適合該結構的結構描述中使用。 您只能使用 架構節點直接 子系的節點來建立全域類型。
您也可以使用不是 架構 節點直接子系的節點資料類型來建立迴圈參考。 這在結構描述中代表遞迴結構時很有用。
本主題提供各種全域節點類型及如何參照它們來加以使用的逐步說明。
建立全域宣告
您可以使用記錄、欄位或屬性,建立全域類型。 從記錄建立的全域類型只能用在記錄,從欄位建立的類型只能用在欄位,而從屬性建立的類型只能用在屬性。 下列程序說明如何定義和使用全域宣告。
從節點建立全域宣告
選取您要全域使用其類型的 [記錄 ]、[ 欄位屬性] 或 [欄位元素 ] 節點。
在 [ 屬性 ] 視窗中,在 [ 資料結構類型 ] 清單中輸入名稱,以做為複雜類型的全域名稱,然後按 ENTER。
建立全域定義的時序群組節點、選擇群組節點或 [所有群組] 節點
選取您要在其中插入全域定義群組節點的 [記錄 ] 節點。
在 BizTalk 功能表上,指向 [ 插入架構節點],然後按一下 [ 順序群組]、[ 選擇群組] 或 [ 所有群組],視需要。
在新插入的群組中建立結構。 例如,插入 Record 或 Field Element 節點,以表示群組節點內資料的結構。
注意
時序群組、 選擇群組和 所有群組 節點只能包含對應至 XML 元素的節點,因此不能包含 欄位屬性 節點。
選取在步驟 2 插入的群組節點
在屬性視窗中,按一下 [群組參考],在 [值] 欄位中輸入名稱,然後按 ENTER 鍵。
藉由在 [群組參考 ] 屬性中提供名稱,您就擁有全域定義的群組節點,之後您就可以將其他群組節點與這個全域定義的類型產生關聯, (結構) 。
建立全域定義的屬性群組節點
選取您要在其中插入全域定義屬性群組節點的[記錄] 節點。
在 BizTalk 功能表上,指向 [ 插入架構節點],然後按一下 [ 屬性群組]。
這會將 [屬性群組] 節點新增至所選 [記錄 ] 節點中子節點的結尾。
將適當的 欄位屬性 或 屬性群組 節點新增至您的 屬性群組。
或者,如果您想要重新命名 [屬性群組] 節點,請選取 [ 屬性群組 ] 節點,並將其 [ 群組參考 ] 屬性變更為您選擇的新名稱。
屬性群組一律為全域性,且在使用時會從其位置參照。
使用已全域定義的類型或群組
選取要使用全域定義類型的節點。
在屬性視窗中,從 [資料結構類型] 屬性的下拉式清單中選取全域定義的類型, ([記錄] 節點) 、[資料類型] 屬性 ([欄位元素] 和 [欄位屬性] 節點) ,或 [群組參考 (時序群組]、[選擇群組]、[所有群組] 和 [屬性群組] 節點) 。 如需這些屬性的詳細資訊,請參閱 UI 指引和開發人員 API 命名空間參考。
注意
您可以在全域定義的類型或群組出現的任何結構描述位置,對其進行後續的變更。 在這些位置的單一任意位置中進行變更時,會在所有這類位置上套用變更。
建立全域宣告之後,您無法在單一步驟中刪除它。 不過,您可以使用 [ 清除全域資料類型 ] 對話方塊在儲存架構時,使用下列程式加以刪除。
刪除全域宣告
刪除使用此全域類型或群組的所有節點,或指定不同的類型或群組供所有這些節點使用,或將兩種方法的組合使用。 如需刪除節點的逐步指示,請參閱 刪除節點。
儲存規格時,會出現 [ 清除全域資料類型 ] 對話方塊。 選取您想要從規格中完全刪除的全域宣告,然後按一下 [ 確定]。
注意
每次使用未使用的資料類型儲存架構時,就會顯示 [ 清除全域資料類型 ] 對話方塊。 若未出現此對話方塊,則表示結構描述中的其他位置已使用所有的資料型別,或是結構描述自開啟後未曾修改過 (在後者的情況中,它可能仍包含先前保留的未使用資料型別)。
建立另一個節點的迴圈參考
您可以建立節點的循環參考來代表遞迴的結構描述項目。 若要這麼做,您可以建立一個類型由封閉式記錄所定義的節點。 例如,假設有一個執行個體訊息是包裝在具有相同結構的任意數目信封中。 使用循環參考時,您可以建立一個定義此種執行個體訊息的結構描述。
建立迴圈參考
選取您要為其建立遞迴參考的 記錄 節點。 這是代表遞迴結構頂端的節點。
在屬性視窗中,確認[資料結構類型] 具有值。
確認 Record 節點具有與其相關聯的具名類型,因為當類型包含本身時,會定義遞迴結構。 只有透過巢狀方式使用具名的全域類型,類型才能包含其本身。
選取子 Record 節點或插入子 Record 節點。
針對子Record節點,在 [屬性視窗] 的 [資料類型]清單中,選取步驟 2 中所識別的資料結構。
重要
重複節點的 Min Occurs 屬性必須設定為零 (0) 。 將它設定為一個 (1) 會導致無限迴圈。
匯入包含遞迴項目的結構描述時,「BizTalk 編輯器」並不會自動檢查來確認遞迴項目是否有效。