NEWS DX 第29号
2007年08月01日作成
MS Office製品関連のXML仕様の標準化
2007年1月にMicrosoftがOffice2007を発表したが、それに含まれるWordに対しWordprocessingML、Excelに対しSpreadsheetML、PowerPointに対しPresentationMLと呼ばれるXMLタグセットが「Office Open XML」として規定されている。この仕様は言わば、Office製品のデータ設計仕様を公開したものであり、Office 2003の時に「Office 2003 XML リファレンス スキーマ」としてすでにXMLのスキーマを公開していたものを、バージョンアップしたものである。
現在、ISOにおいて、この「Office Open XML」の国際標準化に向けた作業が進んでいる。
これまでの経緯として、Microsoftは、「Office Open
XML」を、まずECMA(European Computer Manufacturer Association)に提出し、2006年12月に「ECMA-376:Office Open XML」としてECMA標準とした。これが、現在ECMAを通じてISOに提出され、Fast-Track手続き(※ISO内で最初から規格を作成して国際規格まで完成させるのではなく、他の標準化団体で策定された仕様を持ちこんで国際規格にすることにより規格制定までの期間を短くするもの)に従い、1ヵ月のレビュー期間を経て2007年4月2日から国際規格原案(DIS 29500)として5ヵ月投票に掛けられている。
MicrosoftがISOに自社製品のデータ形式を提出したのは、昨今のオープン化の流れに沿ったものであると同時に、昨年ISOで、オープンソースのオフィス製品OpenOffice.orgのデータ形式(XML)がOASIS経由で提出され、2006年12月に国際規格になったことに対抗した処置でもある。
アイデンティティ管理の標準
アイデンティティ管理とは、コンピュータシステムで提供されるサービスを利用する際のユーザーIDの管理のことである。インターネット上で公開されている様々なサービスもユーザーIDを使うことが多い。また、企業内システムでもIDやパスワードでアプリケーションへのアクセスを制限している。ただし、すでに退職した人でもユーザーIDが抹消されずにアクセスできてしまうという問題も生じている。インターネットの普及によって、様々な人からアプリケーションがアクセスできるようになっている状況において、IDを適正に管理するのは、重要なことである。
このアイデンティティ管理に関する標準仕様を開発しているのが、リバティ・アライアンスと呼ばれる団体である。2001年に発足後、現在約150の企業が参加している。マネジメント・ボードは、AOL、エリクソン、Fidelity Investments、フランス・テレコム、HP、インテル、ノベル、NTT、オラクル、サン・マイクロシステムズで構成されている。
Liberty Alliance の開発する仕様は、大きく分類して以下の3 つである。
■Identity Federation Framework(ID-FF)
アイデンティティの連携と管理を実現するための仕組みである。これによって、複数の アプリケーション間でのシングルサインオンが可能となる。
■Identity Web Services Framework(ID-WSF)
アイデンティティサービスの作成/検索/消費のためのフレームワークを定義している。
■Identity Service Interface Specification(ID-SIS)
ID-WSF上に構築されたサービスの作成作業を容易にするために定められた仕様群である。
上記ID-FFの正式名にも含まれているが、最近、「アイデンティティ・フェデレーション」という言葉をIT業界でよく耳にする。「アイデンティティ」とは、Webサービス、Webアプリケーションなどを使用するときのIDのことである。「フェデレーション」は「連携」という意味がある。つまり、「アイデンティティ・フェデレーション」とは、様々なWebサービスやWebアプリケーションにおいて、これまで個別にID管理が行われていたものを統一的に管理して利用できるようにしようというものである。
インターネットの普及によってWeb上の様々なサイトでIDとパスワードを登録しているが、いくつもの異なるID/パスワードを持っていると、どのサイトでどのID/パスワードを登録したかを忘れ、何度も確認するという手間がかかり、画面の周りにID/パスワードを書いた付箋を貼り付けて置くといった不用心なWeb利用を誘発する。また、複数のサイトが連携してサービスを提供する際に、サービスをまたいで利用する時にいちいちログインしなおさなければならないという問題にもなる。
アイデンティティ・フェデレーションは、このような問題を解決するために様々なWebサービス間でID情報を連携させるための仕組みである。
このアイデンティティ・フェデレーションについては、Liberty Allianceに対抗する形で元々Microsoft,IBM,VeriSignが策定したWS-Federationが存在する。これが2007年5月2日にOASISに提出され、WS-Federation技術委員会が発足した。アイデンティティ・フェデレーションに関する仕様が、統合の方向に向かうのか、あるいは対抗勢力間での争いが起こるのかが注目される。
照会言語の標準化
2007年に入ってから、XMLの照会言語に関連する規格が相次いでW3Cで勧告となった。それらは以下の通りである。
■ XQuery 1.0: An XML Query Language
XQueryのコア仕様。様々な種類のXMLデータに広く応用される照会言語を定義している。
■ XQuery 1.0 and XPath 2.0 Data Model (XDM)
XPath 2.0、XSLT 2.0、XQueryのデータモデルであるW3C XQuery 1.0 and XPath 2.0 Data Modelの定義。
■ XQuery 1.0 and XPath 2.0 Functions and Operators
XML Schema Part 2: Datatypes Second EditionとXQuery 1.0 and XPath 2.0 Data Modelで定義されるデータ型のコンストラクター関数、演算子や関数を定義。また、XQuery 1.0 and XPath 2.0 Data Modelで定義されるノードやノード配列の関数や演算子に関しても定義され、これらはXML Path Language (XPath) 2.0、XQuery 1.0: An XML Query Language、XSL Transformations (XSLT) Version 2.0やその他XML標準で使用される。
■ XML Path Language (XPath) 2.0
XQuery/XPath Data Modelで定義されるデータモデルに適合した値を処理する式言語であるXPath2.0は、XPath1.0の上位集合であり、より豊富なデータ型に対応し、XML Schemaによる検証で得られる型情報を活用する追加機能を持つ。
■ XQuery 1.0 and XPath 2.0 Formal Semantics
XQuery 1.0とXPath 2.0のセマンティクスに関する正式な定義。
■ XML Syntax for XQuery 1.0 (XQueryX)
XQuery 1.0のXML構文を定義した規格。
■ XSLT 2.0 and XQuery 1.0 Serialization
XQuery 1.0 and XPath 2.0 Data Modelによって定義されるデータモデル・インスタンスをオクテット配列に配置するシリアライゼーションを定義したもの。XSLT 2.0やXQuery 1.0など他の仕様で使用されるコンポーネント。
■ XSL Transformations (XSLT) Version 2.0
XSLT2.0のシンタックスとセマンティクスを定義。XSLT 1.0の改訂版であり、XSLT 2.0 Requirementsで記述されるXSLT 2.0の要件を満たすもの。
OracleやIBMなどがドラフト時点から既にXQuery対応を行っているが、正式にW3C勧告になったことによって、今後のバージョンアップで機能が確定することになる。XMLのデータベース利用が今後増えることが予想されるので、その格納方法、照会方法が統一されるという意味においてXQuery仕様が確定したことは歓迎されるだろう。
XQuery関連規格に、XSLT2.0があることにも注目したい。XSLT1.0では実現できなかった一時的なツリーの操作が可能になるなど大きな進歩が見られる。これについては本誌別記事で扱われているので、そちらを参照されたい。