やさしく解説するマイクロソフトの最新技術 (第10回)

マイクロソフト株式会社 ソリューションデベロッパー事業部
デベロッパーマーケティング部 テクニカルスペシャリスト
奥津 和真 kazumao@microsoft.com




 少々、時期はずれになってしまいましたが、本年も宜しくお願い申し上げます。実は正月早々、最近流行しているインフルエンザにかかってしまいまして、珍しく5日間も寝込むことになりました。そんな事もありまして前号は休載という形にさせて頂いたという訳です。続きを楽しみにされていた読者の方に対してお詫び申し上げます。

 さて、前回はXMLとは何か?・どう利用されるものなのか?という点について解説しました。常々、XMLという言葉だけが内容の充実と比較して、少々先行しすぎている様な気がしています。前回も書いたとおり確かに多くの可能性を秘めていますが、今は「土台作りの時期」であり、開発者にとっては、絶好の「勉強のための時間」でもあります。…とは、言うものの全く動作環境の無い状態では手のつけようがありませんので、今回は製品版のリリースが近いInternet Explorer 5(IE5)によって提供されるXMLパーサーと、実現される機能について解説いたします。

● Microsoft XMLパーサー

 XMLを処理するといった事を考える時に、重要なものとしてXMLパーサーがあります。XMLパーサーを一言で説明すると、XMLを構文解析するためのプログラムという事になります。要するにテキストベースであるXMLを読み込んで、文法チェックや、必要に応じて文書型との検証などを行った後、メモリ上に展開してくれるものになります。データを利用する様々なプログラムは、そのメモリ上に展開されたデータにアクセスし、様々な処理を実現します。従って、XMLパーサーがXML対応システムの鍵を握っていると言ってもよいでしょう。言葉だけで説明すると解りにくいと思いますので、図で説明しましょう。例えば下記のようなサンプルドキュメントがあったとして、これをMicrosoft XMLパーサーに通すと、図のようなツリー構造でメモリー上に展開されます。ツリー状に展開されたデータに対してはDocument Object Model(DOM)を利用してアクセスする事になります。

・ サンプルドキュメント

 
 <root>
   <customer id=“345”>
    <name>
     <first>Kazuma</first>
     <last>Okutsu</last>
    </name>
    <orders>
     <order date=“99/02/05”/>  
     <order date=“99/02/08”/>  
    </orders>
   </customer>
   <customer id=“120”>
 … (中略)
 </root>
 




ツリー構造への展開

 この様な機能をもつXMLパーサーですが、IE5には、新しいMicrosoft XMLパーサーが搭載されています。実はIE4においても、アクティブチャネルの為の定義ファイルであるCDFファイルや、MicrosoftがMarimbaと共同開発したソフトウェア自動配布/インストールのための仕組みであるOpen Software Description Format(OSD)などがフォーマットとしてXMLを利用していたため、XMLパーサーが搭載されていたのです。しかし、IE4のXMLパーサーはXML 1.0がW3Cにて勧告される以前のドラフト段階の仕様に従って実装されているということや、機能が非常に限定されているため、例えば、他のプログラムからXMLパーサーを利用するといった事には、様々な力技を必要とするのです。IE5に搭載されている新しいXMLパーサーは、様々なオープンスタンダードや現在仕様策定中のドラフト仕様に対応し、IE4に搭載されたものと比較すると大幅な機能アップとパフォーマンスの向上が行われています。また、下記の各種オープンスタンダード等に対応しています。(IE5リリース時点で予定されているものであり、ベータ版では異なる部分もあります。)

・ W3C XML 1.0
・ W3C DOM
・ W3C Namespace in XML
・ W3C XSL (Working Draft)
・ XML Schemas (Technical Preview)

● Internet Explorer 5で実現される機能

 XMLパーサーの機能は理解して頂いたと思います。IE5では、そのXMLパーサーを利用して下記のような機能を実現しています。

・ XSLやCSSを利用したXMLの閲覧
 これは、今までのようなHTMLだけではなくて、XMLドキュメントを直接閲覧する事ができるようになるという機能です。ただし、前回もお話した通り、XMLには見た目の定義は含まれませんので、XMLドキュメントの中でCSSもしくはXSLを利用したスタイルシートを指定する必要はあります。

・ Data Islandsのサポート
 名前からすると何の事だか全く解りませんが、これは、通常のHTMLで作成されたページの中で、例えば表組みの部分だけXMLを利用したデータを表示するような機能です。HTMLの中でXMLとそれに対応するスタイルシートを指定すると表示されるページの一部分だけがXMLを利用して表示されます。これはHTMLとの統合性という意味において便利だと思われます。

・ Dynamic HTMLのData BindingでXMLを利用するためのDSOのアップデート
 以前、このコーナーでお話ししたData BindingでXMLをデータソースとして利用するためのData Source Object(DSO)がアップデートされました。XML用のDSOはIE4には同梱されていた訳ではなくに米国Microsoft社のWebサイトにて公開されていましたが、パフォーマンスなどを更に向上させたアップデート版が登場します。これにより、XMLドキュメントのダウンロードとHTMLページへのデータ結合が簡単に迅速に行えるようにもなります。

・ Webページ作成へのXMLの利用
 Webページの作成の際に、独自のタグを作成して利用する事が可能になりました。当然、現時点ではIE5でしか利用が出来ないということを考えると、通常のWebサイトでの利用は難しい訳ですが、Cascade Style Sheets(CSS)と独自タグを結びつけてオーサリングに利用できますので、複雑なWebアプリケーションを構築する場合には非常に便利かもしれません。

 IE5側としての機能という形で列挙すると、こんな内容になります。もちろん、XMLパーサーを利用する事によって、「XMLドキュメントの解析と加工」という大きな機能が増えたとも言えるわけです。これによって将来出てくると思われるXMLベースの様々なサブセット言語への対応も比較的容易に行えるかもしれません。また、Officeの次期バージョンであるOffice 2000とのデータの連携という意味でもXMLは利用されています。

 今回は、IE5のXML関連機能について解説したが、次回は、Windows DNAフレームワークの中間層を受け持つWebサーバ(IIS)上でのXMLパーサーの利用について、具体的な利用法に利点と欠点などを交えて解説したいと思います。いつものように、ご意見・ご要望などは冒頭のアドレスまでお願いいたします。皆様からのメールをお待ちしております。また、次号でお会いしましょう。

○ 参考資料
・W3C Extensible Markup Language (XML) 1.0
 http://www.w3.org/Press/1998/XML10-REC
・W3C Document Object Model Level 1 specification.
 http://www.w3.org/Press/1998/DOM-REC/
・W3C Cascading Style Sheets Level 2 Specification
 http://www.w3.org/Press/1998/CSS2-REC
・W3C Extensible Stylesheet Language (XSL) Version 1.0 Working Draft
 http://www.w3.org/TR/WD-xsl
・ Site Builder Network Web Site
 http://www.microsoft.com/sitebuilder/
・Site Builder Network Japan Web Site
 http://www.microsoft.com/japan/sitebuilder/



Contents         Windows Consortium ホームページ