SharePoint の内部Web サービスを使用して Office アプリケーションを拡張する

Pav Cherny

目次

SharePoint の Web サービスとオブジェクト モデル
Outlook 2007 と StsSync プロトコル
Excel 2007 と Excel Web Access
Access 2007 と Access Web データシート コントロール
Word 2007 と MetaWeblog API
PowerPoint 2007 と MOSS 2007
InfoPath 2007 と InfoPath Forms Services
まとめ

Microsoft Windows SharePoint Services (WSS) 3.0 に用意されている 21 個の標準的な Web サービスと Microsoft Office SharePoint Server (MOSS) 2007 に用意されている 19 個の標準的な Web サービスを使用すると、ローカル リソースとリモート リソースからデータを取得したり、Microsoft Office スイートの標準機能を拡張したり、ビジネス アプリケーションを統合したりする非常に柔軟性の高いソリューションを作成することができます。もちろん、この 40 個の Web サービス以外にも便利な Web サービスは多数あります。Microsoft Office Project Server 2007 など、SharePoint と統合するサーバー ソリューションを追加でインストールすると、SharePoint サーバー上では、60 個以上の Web サービスが実行されます。ですが、この数には、皆さんが実装するカスタムの SharePoint Web サービスは含まれていません。Web サービスは、分散型のビジネス アプリケーションの基本構成要素です。Software Plus Services 戦略を展開している現在において、Web サービスは、組織のホスト環境で業務用ソリューションを統合する手段を提供するので、その重要性はさらに高まっています。

このコラムでは、SharePoint 環境で Web サービスを使用するメリット、特に標準的な Office アプリケーションで Web サービスを使用することのメリットについて紹介します。通常、Office アプリケーションでは、SharePoint のリストとライブラリにファイル ベースでアクセスする際に、Microsoft FrontPage や WSS のリモート プロシージャ コール (RPC)、および Web 分散オーサリングとバージョン管理 (WebDAV) を使用しますが、Web サービスも使用します。WSS 3.0 に用意されている基本的な Web サービスがあれば、Microsoft Word 2007、Outlook 2007、Access 2007 など、大半の Office アプリケーションには十分です。ただし、PowerPoint 2007 や Access 2007 など、他の Office アプリケーションでは、MOSS 2007 や他の製品でしか利用できないその他の Web サービスを使用することができます。製品の依存関係については、必要に応じて説明します。このコラムで説明したことをテスト環境で実行するには、コード ダウンロード セクション (technet.microsoft.com/magazine/bb978519) から、このコラムの付属リソースをダウンロードし、詳細な手順を記載した Excel ブックをご利用ください。

この記事では、開発者向けの詳細な説明とビジネス データの統合については説明しません。また、Web サービス、およびビジネス アプリケーションでの Web サービスの用途についての知識があることを前提としています。WSS 3.0 と MOSS 2007 に用意されている組み込みの Web サービスの概要については、まず SharePoint Server SDK の「Web サービス アクセス」(msdn.microsoft.com/library/bb862916.aspx) をご覧になることをお勧めします。

SharePoint の Web サービスとオブジェクト モデル

SharePoint ソリューションの開発時に発生する一般的な問題は、Web サービスとオブジェクト モデルのどちらを使用するかということです。オブジェクト モデルには、Web サービスと比較して、使いやすく、使用できるインターフェイスが多く、オーバーヘッドが少ないというメリットがありますが、COM の依存関係により、SharePoint サーバーでしか使用できないというデメリットもあります。一方、Web サービスには、アクセスしやすいというメリットがあるので、リモート ソースからデータを収集する必要があるビジネス データ Web パーツなどのサーバー側コンポーネントやクライアント アプリケーションで使用するのに適しています。データをローカルの業務用システムからリモートのホスト環境に移行すると、SharePoint ソリューションでは、分散した SharePoint 環境に対応するためにサービス指向アーキテクチャ (SOA) を採用しなければならなくなります。この状況を図 1 に示します。

fig01.gif

図 1 分散された SharePoint 環境における Web サービス (画像をクリックすると拡大表示されます)

フロントエンド サブシステムとバックエンド サブシステムの間にある緊密なつながりをなくすことによって、Web サービスは高い柔軟性を実現します。図 1 に示すように、フロントエンド サブシステムは、介在する Web サービスで必要なインターフェイスが提供されれば、基盤となる任意のプラットフォームと連動できます。2008 年 9 月号の記事 (technet.microsoft.com/magazine/cc742803) では、WSS 3.0 に組み込まれている E-mail Integration Web サービス (SharepointEmailWS.asmx) を同じインターフェイスを持つカスタマイズしたバージョンに置き換えることで、このしくみを説明しました。

もちろん、SharePoint の Web サービスを使用する Office アプリケーションなどのクライアント アプリケーションにも同じ原則が当てはまります。これについては、Stephen Toub が執筆した MSDN 記事「Outlook 2003 対応の予定表カスタム プロバイダ」(msdn.microsoft.com/aa168130) で非常にわかりやすく説明されています。この記事では、SharePoint の Lists Web サービス (Lists.asmx) のインターフェイスをミラー化して、SharePoint のリスト アイテムの代わりにカスタム データを Outlook に返すカスタム Web サービスを作成する方法を紹介しています。Outlook の予定表には、イベント ログのエントリ、RSS フィードの項目、ニュースグループの投稿、Windows Live Messenger での会話、コンピュータのシステム復元ポイントなど、さまざまなデータを表示できることが紹介されています。また、この記事の後半では、連絡先リストをサポートするようにソリューションが拡張されています。

2006 年には、Patrick Creehan が、この実装を更新したので、Outlook 2007 でも動作するようになりました (詳細については、Patrick のブログ記事「Outlook 2007 対応の予定表カスタム プロバイダ」(blogs.msdn.com/pcreehan/archive/2006/11/21/custom-calendar-providers-for-outlook-2007.aspx) を参照してください)。

Outlook 2007 と StsSync プロトコル

カスタム リスト プロバイダでは、Outlook を SharePoint と統合できることを活用できることがおわかりいただけたと思うので、今度は、Outlook と SharePoint の相互作用について見てみましょう。Outlook で SharePoint のリストやドキュメント ライブラリのコンテンツにアクセスするには、Lists Web サービス経由で SharePoint と通信します。また、SharePoint のリストとリスト アイテムは、Outlook の標準フォルダと並列に表示されます。Outlook では、新しいアイテムを作成したり、既存のアイテムを更新したりすることができますが、このような処理を行うときには、Lists Web サービスを使用して SharePoint リポジトリを更新しています。相互作用とソリューションのアーキテクチャは、図 2 に示すように比較的単純です。

fig02.gif

図 2 Outlook の StsSync プロトコルのアーキテクチャ (画像をクリックすると拡大表示されます)

必要なリストに接続するため、Outlook では、Outlook でプロトコル ハンドラとして登録されている StsSync プロトコル識別子に基づいた特殊な形式の URL をサポートしています。この登録については、ワークステーションのレジストリ キー HKEY_CLASSES_ROOT\StsSync\Shell\Open\Command で確認できます。Outlook では、この StsSync プロトコル識別子ベースの URL をコマンド ライン パラメータとして受け取り、その構成要素を各部分に分け、このパラメータを使用して指定の SharePoint リストに接続します。

StsSync プロトコル識別子ベースの URL は、文字が暗号化された一般的な形式になっていますが、この文字列の中にいくつかのクエリ文字列パラメータが含まれているので、長くてわかりにくいものになっています。たとえば、次のようなものです。

stssync://sts/?ver=1.0&type=calendar&cmd=add-folder&base-url=http%3A%2F%2Fsharepoint%2FHR%2FAdministration&list-url=%2FLists%2FCalendar%2FAllItems%2Easpx&guid=%7B4DF13090%2DDE1C%2D43EA%2D8B44%2D904869FEABC4%7D&site-name=HR%20Site&list-name=Admin%20Events

さいわい、SharePoint インターフェイスを使用して Outlook を必要なリストにリンクしている場合は、このような URL を直接指定する必要はありません。必要な作業は、Internet Explorer で SharePoint リストを開き、リストの [操作] メニューの [Outlook に接続] をクリックするだけです。このコマンドでは、ExportHailStorm という名前の JavaScript の関数を呼び出します (この関数は、SharePoint サーバーの \%PROGRAMFILES%\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\LAYOUTS\1033\Init.js にあります)。この関数では、リスト パラメータに基づいて StsSync プロトコル識別子ベースの URL を作成し、作成した URL を Internet Explorer に渡します。Internet Explorer では、この URL を登録されているプロトコル ハンドラ (つまり、Outlook) に渡します。Outlook で SharePoint のリストを操作する方法の例については、付属リソースの Excel ブックの Working with Outlook in WSS シートを参照してください。

StsSync の最も重要なパラメータの 1 つは base-url です。このパラメータは、sharepoint/HR/Administration など、SharePoint サイトをポイントします。Outlook では、この URL に Lists Web サービスへの参照を追加します (例、sharepoint/HR/Administration/_vti_bin/Lists.asmx)。これで SharePoint と通信する経路が確保されたことになります。StsSync プロトコル識別子ベースの URL の各構成要素の詳細については、「StsSync 構造の仕様」(msdn.microsoft.com/cc313101) を参照してください。

Excel 2007 と Excel Web Access

図 2 で、SharePoint リストの [操作] メニューの [Outlook に接続] コマンド オプションの下に [スプレッドシートにエクスポート] コマンド オプションがあることに気付いた方がいるかもしれません。このコマンドでは、リストのコンテンツを Excel ファイルにエクスポートします。Excel 2007 では、StsSync プロトコルを使用しません。[スプレッドシートにエクスポート] をクリックすると、ExportList という名前の関数が呼び出されます (この関数は、SharePoint サーバーの \%PROGRAMFILES%\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\LAYOUTS\1033\Core.js にあります)。この関数では、リスト アイテムをエクスポートする興味深い一連の処理を開始します。このコマンドでは Web サービスを使用しません。

ExportList 関数では、ISAPI 拡張 (Owssvr.dll) への HTTP 要求で結果を呼び出し、Web クエリ (.iqy) ファイルを生成して返します。.iqy ファイルには、Owssvr.dll を参照して、SharePoint リストから XML ドキュメントの形式で実際のデータを取得する Web クエリ ステートメントが記載されています。Owssvr.dll は、Web サービスの前身と考えることもできますが、このインターフェイスは、Web サービスの業界標準に準拠していません。ですから、Excel は、既定の設定では Web サービスを使用しないと言っても差し支えないでしょう。

Web サービスを使用する Excel ソリューションは、MOSS 2007 に同梱されている Excel Web Access です (図 3 参照)。実際、Excel Web Access では、Excel Services (ExcelService.asmx) を使用しています。この Web サービスでは、Excel 2007 デスクトップ アプリケーションと同じ演算機能を提供する計算エンジンである Excel Calculation Services (ECS) を使用しています。Excel Web Access は、データ ビューおよびパラメータに対応した分析ツールとして機能するようにデザインされています。特定のセルをパラメータとして割当てて、Excel ブックの特定の部分のみをオンラインで参照できるようにし、Excel ブック自体に SharePoint のアクセス許可を設定することで、管理者は、ユーザーが Excel ブックで何にアクセスできるかを非常にきめ細かに制御できます。セキュリティ上の理由から、Excel Web Access と Excel Services では、Visual Basic コード、フォーム コントロール、外部参照など、Excel 2007 の一部の機能がサポートされていません。しかし、ソリューション開発者は、SharePoint サイトで Excel ブック内からアクセスできるマネージ コードを作成することができます。Excel Services の詳細とステップ バイ ステップ ガイドについては、「ホワイト ペーパー : Excel Services ステップ バイ ステップ ガイド」(technet.microsoft.com/cc263430) を参照してください。

fig03.gif

図 3 Excel と Excel Web Access のアーキテクチャ (画像をクリックすると拡大表示されます)

Access 2007 と Access Web データシート コントロール

SharePoint リストを Excel ブックにエクスポートするのと同様に、[操作] メニューの [Access で開く] をクリックして、リストをデータベースにエクスポートすることができます。[Access で開く] コマンドも、SharePoint からデータを取得する際に、ISAPI 拡張 (Owssvr.dll) を使用しています。[Access で開く] をクリックすると、ExportToDatabase という名前の JavaScript 関数が呼び出されます (この関数は、SharePoint サーバーの %\PROGRAMFILES%\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\LAYOUTS\1033\Core.js にあります)。この関数では、ActiveX コントロール SharePoint.ExportDatabase を起動します。このコントロールは、Owssvr.dll と通信して、Access データベースを作成します。この Access データベースには、SharePoint リスト オブジェクトにリンクされているか、またはエクスポートの設定に基づいて SharePoint からデータベースにコピーされたテーブル、ビュー、レポートなどのオブジェクトが設定されます。Access 2007 で SharePoint リストを操作する方法の例については、付属リソースの Excel ブックの Working with Access in WSS シートを参照してください。

ActiveX コントロール SharePoint.ExportDatabase は Owssvr.dll と通信するので Web サービスは使用しませんが、Access 2007 では、図 4 に示すように Stslist.dll という名前の DLL 経由で SharePoint の Web サービスを使用しています。たとえば、Access 2007 の [外部データ] タブで [SharePoint リスト] をクリックし、リンクしたテーブルのデータ ソースとして使用するリストにリンクできます。このシナリオでは、Access は、サーバーで実行されている Lists Web サービス (Lists.asmx) を呼び出します。その後は、SQL ステートメントを使用して、Access データベースに格納されているデータを検索または更新できます。また、Access では、SharePoint データを最新の状態にするため、リンクされたテーブルのレコードが変更されるたびに Lists.asmx を呼び出します。

fig04.gif

図 4 Access と Access Web データシートのアーキテクチャ (画像をクリックすると拡大表示されます)

Access テーブルは SharePoint にリストとして個別にエクスポートできます。また、Access データベース全体を SharePoint サイトにエクスポートすることもできます。この場合、各テーブルごとに SharePoint リストが作成されますが、すべてのデータは SharePoint サイトに一括でエクスポートされます。SharePoint では、SharePoint リストの参照の整合性を保つことができません (そのため、参照エントリを持つデータベースを SharePoint に移動すると、警告メッセージが表示されます) が、リスト間でもテーブル間の場合と同様に参照を行うことができます。Access データベースのテーブルをエクスポートする際、Access では、Lists.asmx だけでなく Webs Web サービス (Webs.asmx) や Views Web サービス (Views.asmx) とも通信し、各テーブルに対応したリスト、各テーブルの列に対応したサイト内の列、これらのサイト内の列に基づいたリスト ビューを作成します。

エクスポートが正常に完了したら、SharePoint リストをデータシート ビューで表示できます。その場合に必要な作業は、SharePoint リストの [操作] メニューの [データシートで編集] をクリックするだけです。[データシートで編集] をクリックすると、65BCBEE4-7728-41A0-97BE-14E1CAE36AAE という CLSID を使用して Access Web データシート コントロールを参照する Web ページがブラウザで表示されます。その後、Internet Explorer では、ローカル ワークステーション上にあるこの ActiveX コントロールを Web ページに読み込みます。2007 Office system を実行しているワークステーションのレジストリを検索すると、HKEY_CLASSES_ROOT ハイブに、この ActiveX コントロールに対応する登録エントリ (ProgID ListNet.ListNet) が見つかります。また、InprocServer32 レジストリ キーを確認すると、Access Web データシート コントロールは Stslist.dll に実装されていることがわかります。Access Web データシート コントロールでは、Access 2007 と同じ Web サービスを使用しています。

関連情報

SharePoint 製品およびテクノロジ Web サイト

microsoft.com/sharepoint

Windows SharePoint Services TechCenter

technet.microsoft.com/windowsserver/sharepoint

Windows SharePoint Services デベロッパー センター

msdn.microsoft.com/sharepoint

Microsoft SharePoint 製品とテクノロジ チームのブログ

blogs.msdn.com/sharepoint

Word 2007 と MetaWeblog API

Word 2007 では、Metaweblog.aspx という名前のファイルに実装された特殊な Web サービスを使用して、SahrePoint サーバーで MetaWeblog API を活用しています。この API で公開しているメソッドは 3 つ (newPost、editPost、および getPost) だけですが、依然として XML 構造を使用して HTTP 経由で通信しています。WSS 3.0 では、ブログ サイト テンプレートと Web 管理インターフェイスにより、既定でブログがサポートされていますが、MetaWeblog API により、Word 2007 をブログ プログラムとして使用することが可能になり、Web ブラウザ インターフェイスに代わる有効なプログラムとして使用することができます。

MetaWeblog Web サービスでは、他の SharePoint の Web サービスとは異なり、.asmx というファイル拡張子を使用しません。MetaWeblog API は、Dave Winer が 5 年以上前に開発したもので、一般的なブログ ツールでは .aspx ページ経由で、この API にアクセスすることが想定されていました (仕様については、xmlrpc.com/metaWeblogApi を参照してください)。SharePoint では、.asmx という一般的な名前付け規則ではなく .aspx という拡張子を使用することで、このようなブログ ツールとの互換性を維持しています。

PowerPoint 2007 と MOSS 2007

WSS 3.0 環境では、PowerPoint 2007 は Web サービスを使用しませんが、ドキュメント ライブラリにあるプレゼンテーションにアクセスする際には、FrontPage RPC、WSS RPC、および WebDav 経由で SharePoint と通信します。ですが、MOSS 2007 を使用すると、PowerPoint では、SharePoint スライド ライブラリと Slide Library Web サービス (SlideLibrary.asmx) を活用することができます。

スライド ライブラリは、特殊なドキュメント ライブラリです。スライド ライブラリは、PowerPoint の "スライドの発行" 機能と組み合わせて使用できます。スライドの発行機能を使用すると、プレゼンテーションをスライドに分割して、スライドを個別のファイルとしてフォルダやライブラリに保存することができます。スライドをスライド ライブラリに発行する際、PowerPoint では、Webs.asmx および Slidelibrary.asmx と通信して、URL を検証し、スライドで競合が発生しないことを確認します。スライド ライブラリに同じ名前のスライドがある場合、既存のスライドを上書きするか、または現在のスライドの発行をスキップすることを確認するメッセージが表示されます。

スライド ライブラリにアップロードしたスライドは、他のプレゼンテーションで使用することができますが、オリジナルのスライドは SharePoint サーバーのスライド ライブラリに格納された状態で維持されます。SharePoint では、各スライドにタイムスタンプが追加されるので、PowerPoint では、このタイムスタンプや他のメタデータ (スライドの作成元となった PowerPoint プレゼンテーションの名前など) を確認して、Slide Library Web サービス経由で更新を検出することができます。更新が行われた場合は、現在、プレゼンテーションで使用しているスライドを置き換えるのか、または変更されたスライドを追加するのかを選択できます。概要については、「スライド ライブラリを使用して PowerPoint 2007 スライドのコンテンツを共有および再利用する」(office.microsoft.com/en-us/powerpoint/HA012261671033.aspx) を参照してください。また、付属リソースの Excel ブックの Working with Slide Libraries シートも参照してください。

PowerPoint 2007 でスライドを発行する際に「<ライブラリ> に発行された n 枚のスライドのうち、n 枚は発行に失敗しました。発行をやり直してください。」というエラー メッセージが表示されることがあります。この問題は、アクセス許可の不足や WebDAV との通信の問題が原因で発生することがあります。この問題は、ローカル ファイル システムのフォルダにスライドを発行し、Windows エクスプローラを使用してスライド ライブラリの UNC パス (たとえば、\\sharepoint\SlideLib instead of sharepoint/SlideLib) に移動して、スライド ライブラリに手動でファイルをコピーすることで回避できます。Windows エクスプローラでは、PowerPoint 2007 と同じ WebDAV リダイレクタを使用しますが、スライドの競合検出には SlideLibrary.asmx を使用せず、WebDAV を使用して、ファイルが既に存在するかどうかを検出します。図 5 に PowerPoint 2007 とスライド ライブラリ アーキテクチャを示します。

fig05.gif

図 5 PowerPoint とスライド ライブラリのアーキテクチャ (画像をクリックすると拡大表示されます)

InfoPath 2007 と InfoPath Forms Services

このコラムは、InfoPath 2007 と InfoPath Forms Services を紹介せずに終わることはできません。事実、InfoPath 2007 は、このコラムで紹介した Office アプリケーションの中で Web サービスを最も使用するアプリケーションです。もちろん、InfoPath フォームでは、データ ソースとして Web サービスをフル活用することは可能です。ですが、フォームの開発は行わず、外部データ ソースを使用しないシンプルなフォーム テンプレートの発行にとどまったとしても、InfoPath 2007 では、図 6 に示すように、FrontPage または WSS の RPC や WebDav だけでなく、Web サービス経由で SharePoint と通信します。SharePoint フォーム ライブラリにフォーム テンプレートを発行する方法の例については、コード ダウンロードに含まれている Excel ブックの Working with InfoPath Forms Services シートを参照してください。

fig06.gif

図 6 InfoPath と InfoPath Forms Services のアーキテクチャ (画像をクリックすると拡大表示されます)

InfoPath 2007 で使用する重要な Web サービスは、Webs.asmx と Lists.asmx です。InfoPath では、Web サービスからサイト内の列やコンテンツ タイプの定義に関する情報を取得したり、取得した情報を使用して、[フィールドまたはグループの選択] ダイアログ ボックスのサイト内の列ボックスにデータを設定したりします。InfoPath では、Lists Web サービスを使用して、SharePoint サイト内での関連付けを行うことなく新しい列を作成します。また、Lists Web サービスを使用して、フォーム ライブラリを作成したり、フォーム テンプレートのコンテンツ タイプの定義を作成したりします。実際のテンプレートのアップロード時には、FrontPage の RPC、WSS の RPC、および WebDAV を使用して、単に template.xsn という名前のテンプレートを新しいライブラリの Forms サブフォルダに配置します。

ブラウザに対応したフォーム テンプレートについては、InfoPath の発行ウィザードで、ブラウザを使用してフォームにデータを入力できるようにするオプションが提示されることがあり、このオプションを使用して作成できます (ただし、このオプションが提示されるかどうかは、SharePoint サーバーで MOSS 2007 または Microsoft Office Forms Server 2007 を使用しているかどうかによって異なります)。InfoPath では、FormServerDetector.aspx という Web ページ (たとえば、sharepoint/_layouts/FormServerDetector.aspx?IsFormServerEnabled=check) を使用して、InfoPath Forms Services がインストールされていて、現在の SharePoint サイトに対して有効になっているかどうかを検出します。InfoPath Forms Services がインストールされ、かつ有効になっている場合は、<server IsFormServerEnabled = 'true' /> が返されます。その後、ブラウザを使用してフォームにデータを入力できるようにすると、InforPath 2007 では、発行処理で Forms Services Web サービス (FormsServices.asmx) を呼び出して、フォーム テンプレートをブラウザ対応にします。ブラウザ対応の InfroPath フォームの詳細については、「Microsoft Office Forms Server 2007 の全般的な参照情報」(msdn.microsoft.com/aa701145) を参照してください。

まとめ

Web サービスは、SharePoint プラットフォームの重要な要素です。Web サービスを使用することで、ローカル リソースとリモート リソースにアクセスしたり、分散型のビジネス アプリケーションを統合したり、Office アプリケーションに有益な機能を提供したりするビジネス ソリューションを実現することができます。Office アプリケーションにとって最も重要な Web サービスは、WSS 3.0 に同梱されている Webs.asmx と Lists.asmx で、これらのサービスは、SharePoint サイト、リスト、およびライブラリと連動するうえで重要な役割を果たします。その次に使用頻度の高い Web サービスは、Views.asmx です。この Web サービスでは、リスト ビューを操作する方法を提供します。多くの Office アプリケーションでは MOSS 2007 の展開を必要としませんが、PowerPoint 2007、InfoPath 2007 などの一部の Office アプリケーションを使用する場合は、MOSS 2007 を展開すると、MOSS 2007 でのみ利用できるスライド ライブラリ、Forms Services などの高度な機能を活用できるというメリットがあります。

Software Plus Services 戦略を展開している現在において、Web サービスは、ホストされたバックエンド環境を業務用のフロントエンド アプリケーションから切り離すという重要な役割を果たします。SharePoint は、オンライン コラボレーションを促進する重要なテクノロジです。Office アプリケーションと Office アドインは、今後もローカル ワークステーションで実行されますが、Web サービスを他の Web テクノロジと組み合わせて使用すると、分散環境にある企業のファイアウォールを越えて機能やデータにシームレスにアクセスできるようになります。SharePoint サーバーで、20 個、40 個、または 60 個以上の Web サービスをホストしているのは単なる偶然ではありません。Web サービスは、使いやすさ、アクセスのしやすさ、および柔軟性という特性を兼ね備えた適切なビジネス ソリューションであり、オブジェクト モデルは、このような Web サービスを構築するのに適したモデルです。

Pav Cherny は、主にコラボレーションとユニファイド コミュニケーションに関するマイクロソフト テクノロジを扱う IT 専門家であり、IT 関連書籍の執筆も行っています。これまでに、IT の運用とシステム管理についてのホワイト ペーパー、製品マニュアル、書籍などを執筆してきました。Pav は、ドキュメント管理とローカライズ サービスの専門企業 Biblioso Corporation の代表取締役です。