NewsDX 第32号
2010年10月01日作成
奥井康弘
今回のNEWSDXのコーナーでは、W3Cの最近のセマンティックWebやWebサービス関連の動向について説明する。
セマンティックWeb
2009年後半にW3Cでは、セマンティックWeb関連の規格の動きが目立っていた。セマンティックWebと言えば、Webの未来像としてティム・バーナーズ=リーが提唱し、W3Cでも2000年頃から熱心に取り組んできたものである。昨今の全文検索エンジン全盛の中で、セマンティックWebの動きは一般の話題にはそれほど上らなくなったが、学術的な分野での関心は引き続いているようである。今回紹介する動きはOWL2とSPARQL1.1である。どちらも既存規格のバージョンアップ版である。
OWL2がW3C勧告となる
セマンティックWebを実現するための概念としてオントロジーがあるが、この考え方に基き、W3Cが開発したのがWeb Ontology Language(その略称は頭文字をそのまま並べたWOLではなくOWLとなっている)である。このOWLは、初版が2004年にW3C勧告となったが、その後のバージョンアップ版としてOWL2の規格策定が進み、2009年10月27日に関連する一群の規格がW3C勧告となっている。
OWL2関連規格は、全部で13個の資料が存在する。このように多数の規格群で成り立っているので、全体を理解するためにはこれらの規格群を分類する必要がある。以下、『中核となる規格』『関連規格』『ユーザー向け資料』『グループノート』に分類してそれぞれの規格を列挙する。
『中核となる規格』
■ OWL 2 Web Ontology Language Structural Specification and Functional-Style Syntax
OWL2オントロジーの構成を定義し、さらに、そのサブセットであるOWL2 DL(DLとは知識表現言語Description Logicsのこと)のオントロジーを定義している。
■OWL 2 Web Ontology Language Mapping to RDF Graphs
OWL2オントロジー構成のRDFグラフへのマッピングを定義している。OWL2オントロジーの交換の主要な手段。
■OWL 2 Web Ontology Language Direct Semantics
OWL2オントロジーの意味をモデル理論的意味論(Model Theoretic Semantics)の観点で定義した
規格。
■ OWL 2 Web Ontology Language RDF-Based Semantics
「RDF Semantics」の拡張を使ってOWL2オントロジーの意味を定義した規格。
■ OWL 2 Web Ontology Language Conformance
OWL2に対応したツールの要件と、適合性を判定するためのテストケース集をまとめた規格。
『関連規格』
■ OWL 2 Web Ontology Language Profiles
実装をより簡単かつ効率的に行えるようにしたOWL2の3つのプロファイルを定義した規格。
■OWL 2 Web Ontology Language XML Serialization
OWL2オントロジーの交換のためのXML記法を定義した規格。
『ユーザー向け資料』
■OWL 2 Web Ontology Language Document Overview
OWL2の全体像を知るための資料。OWL1との関連の説明も含まれている。
■OWL 2 Web Ontology Language Primer
初心者向けのOWL2の入門書。
■OWL 2 Web Ontology Language New Features and Rationale
OWL2の新機能について説明した資料。
■OWL 2 Web Ontology Language Quick Reference Guide
OWL2の構成についての簡略化されたガイドとなる資料。
『その他の資料(グループノート)』
■OWL 2 Web Ontology Language Manchester Syntax
OWL2用の読みやすい文法を定義した規格。
■OWL 2 Web Ontology Language Data Range Extension: Linear Equations
OWL2において、有理数を係数とする線型方程式を取り込むための文法とセマンティクスを規定した規格。
策定が進むRDFのための照会言語SPARQLバージョン1.1
セマンティックWebの理論的基盤となっており、Web上のリソースを記述するための言語であるRDF(Resource Description Framework)のための照会言語であるSPARQLは、2008年1月15日にW3C勧告となっているが、そのバージョンアップ版である1.1関連の規格の策定が進んでいる。以下の規格は2010年1月26日および2010年6月1日に公開されたワーキングドラフトである。
■ SPARQL 1.1 Query Language
RDF用の照会言語。
■ SPARQL 1.1 Update
RDFグラフの更新を行うための言語。
■ SPARQL 1.1 Service Description
SPARQLプロトコル経由で使用可能なSPARQLサービスを発見する方法とそれを記述するボキャブラリーを定義した規格。
■SPARQL 1.1 Federation Extensions
分散照会を実行するために拡張されたSPARQL照会言語の文法およびセマンティクスを定義した規格。
■ SPARQL 1.1 Protocol for RDF
SPARQLのプロトコルを定義した規格。
■ SPARQL 1.1 Property Paths
基本的なグラフ・パターンの一部分を記述し、任意の長さの経路にまで拡張できるようなプロパティ・パスと呼ばれるものを定義した規格。
■ SPARQL 1.1 Uniform HTTP Protocol for Managing RDF Graphs
ネットワーク操作可能なRDFのセマンティックWebを管理するHTTPの最小セットを規定した規格。
■SPARQL 1.1 Entailment Regimes
単純含意(simple entailment)による照会ではなく、RDFS含意(RDFS entailment)などの他の含意形態に対してSPARQLを使う方法について説明した規格。
OWLやSPQRQLを使ってセマンティックWebを実現するためには、実装が進まなければならない。オープンソースのプロジェクトが多く存在するようであるが、セマンティックWebに関連した製品を出している企業もある。たとえば、オラクルは「Oracle Database 11g Enterprise Edition」のオプションとして提供されている地理空間データ管理用の「Oracle Spatial 11g」においてOWLをサポートしており、SPARQLライクなグラフパターンをSQLに埋め込んで照会を行うこともできるとのことである。また、Oracle 11gのプラグイン「Jena Adaptor for Oracle Database 11g Release 2」はSPARQLをサポートしているとのことである(サポートされているのは、既に勧告になっているOWL1.0、SPARQL1.0であろうが)。
いずれにしても、OWL1.0、OWL2.0、SPARQL1.0など基盤となる規格はW3C勧告として出来上がっているので、セマンティックWebが普及するにためには、応用分野が広がり、実装製品のラインナップが揃うことが必要である。今後の動きに注目したい。
W3Cで進められている Webサービス関連の規格
SOA(Service-Oriented Architecture:サービス指向アーキテクチャ)の実現手段として、機能コンポーネント間でのメッセージのやり取りにWebサービス関連規格を用いることが可能だが、W3CでもWebサービス関連の規格がいくつか持ち込まれ、作業が進められている。勧告にはなっているがここ1年程の間に以下の規格が公開されている。
■Web Services Transfer (WS-Transfer)
Webサービス・リソースをXMLで表現したものに対するアクセスを行うためのSOAPベースのプロトコル。
■ Web Services SOAP Assertions (WS-SOAPAssertions)
メッセージ交換において1.1あるいは1.2のいずれかのバージョンのSOAPを使用するための要件を表す2つのWS-Policyアサーションを定義した規格。
■Web Services Metadata Exchange (WS-Metadata Exchange)
Webサービスのエンドポイントに関連付けられたメタデータをWS-Transferのリソースとして表現したり、WS-Addressingのエンドポイント参照に埋め込んだり、Webサービスのエンドポイントから取り出したりできるかを定義した規格。
■Web Services Fragment (WS-Fragment)
WS-Transferを拡張し、メッセージ交換においてXML全体を取り込まずにWS-Transferによって使用可能にされたリソースのフラグメントを取り出したり、操作できるようにした規格。
■Web Services Eventing (WS-Eventing)
Webサービスがイベント通知メッセージを受信できるように登録するためのプロトコル。
■ Web Services Event Descriptions (WS-EventDescriptions)
エンドポイントが、それが生成するイベントの構造と内容を公開するためのメカニズムを規定したもの。
■Web Services Enumeration (WS-Enumeration)
ログやメッセージキューなどの列挙情報をたどるのに使う、XML要素を列挙するためのSOAPベースのプロトコル。
Webサービス関連規格はもちろんこれだけではなく他にも数多く存在する。それらはOASISなどの他の団体で標準化作業が進められており、むしろW3CはWebサービスに関してはこれまで目立った活動は行われてこなかった。今回紹介したような規格は、他の規格と競合しているものもあり、それらをサポートするベンダー間や標準化団体間でのせめぎ合いの構図も垣間見える。たとえば、WS-Eventing は、2006年10月にOASIS標準となっているWS-BaseNotification(WS-Notificationを構成する規格の一つ)と競合する規格であり、このようなWS関連規格でのベンダー間の綱引きが存在する(WS-BaseNotificationの策定には、実はIBM、TIBCOも加わっているが、これがOASIS標準になる前の2006年3月にW3CにWS-Eventingが「Member Submission」として提出されている。(「Member Submission」は、W3Cのメンバーが自分たちが有用だと考える技術仕様を提案できるプロセス。W3Cでの通常の規格化とは異なるプロセスだが、この規格のように、その後、標準化に向けた検討が始まることもある)」)
Webサービスに関しては、必要とする規格が多いということや、このような複雑な競合関係などもあり、真の意味での標準化が図られておらず、このあたりがWebサービスやSOAの普及を妨げている要因だと考えられる。Webサービス、そしてSOAが単なるベンダー毎の異なる仕組みで実装され、真の意味での互換性がなくなってしまうことがないよう、規格間での競合が収束・解消されることを期待したい。