XML Web Service 基礎結構
XML Web Service 在選擇作業系統、物件模型和程式語言上必須無從驗證,才能成功地運作於 Web 的異質性環境上。此外,要讓 XML Web Service 和其他 Web 型式的技術享受相同的普遍性,它們必須:
- 鬆散結合:如果兩個系統唯一的必要工作,是了解前面所述的自我描述、文字型訊息,則這兩個系統會被視為鬆散結合。反過來說,緊密結合的系統則在於需要執行極多的自訂額外負擔以進行通訊,並且系統之間必須有深入的了解。
- 普遍的通訊:現在或不久的將來,所有人在建立作業系統時,應該都會加入連接至網際網路的能力,因此提供了普遍的通訊管道。於是,將任何系統或裝置連接至網際網路的能力將確保這類系統和裝置可供連接至網際網路的任何其他系統或裝置普遍地使用。
- 通用資料格式:透過在專有、封閉迴圈的通訊方法上採用現有開放的標準,支援相同開放標準的任何系統都可了解 XML Web Service。由於使用 XML Web Service 和其用戶端共享的自我描述、文字型訊息,而不需知道每個基礎系統的組成元件,就可以讓自發與不同系統之間的通訊順利進行。XML Web Service 使用 XML 來取得此功能。
XML Web Service 採用一個提供下列功能的基礎結構:尋找 XML Web Service 的探索機制、定義如何使用這些服務的服務說明、以及用以通訊的標準 Wire 格式。下列圖例顯示這個基礎結構的範例。
XML Web Service 基礎結構
基礎結構片段 | 角色 |
---|---|
XML Web Service 目錄 | XML Web Service 目錄提供一個集中位置,讓您尋找其他公司所提供的 XML Web Service。UDDI 註冊等類的 XML Web Service 目錄可扮演此角色。XML Web Service 用戶端可能需要也可能不需要參考到 XML Web Service 的目錄。 |
XML Web Service 探索 | XML Web Service 探索為尋找 (或探索) 一個或多個使用 Web 服務描述語言 (WSDL) 描述 XML Web Service 之相關文件的過程。DISCO 規格定義了尋找服務描述的演算法。若 XML Web Service 用戶端知道服務描述的位置,它們可略過探索程序。 |
XML Web Service 描述 | 若要知道如何與特定的 XML Web Service 互動,就必須提供定義 XML Web Service 所支援互動方式的服務描述。XML Web Service 用戶端必須知道如何與 XML Web Service 互動,方能使用它。 |
XML Web Service Wire 格式 | 為啟用通用的通訊,XML Web Service 通訊使用了開放的 Wire 格式,這是支援最普遍 Web 標準的任意系統所了解的協定。SOAP 為 XML Web Service 通訊的主要通訊協定。 |