Semantic Web: 人と機械のコミュニケーションの仕組みとしての Web
武田英明
国立情報学研究所<takeda@nii.ac.jp>"The Semantic Web is an extension of the current web
in which information is given well-defined meaning,
better enabling computers and people to work incooperation."1"The Semantic Web is a vision: the idea of having dataon the web defined and linked in a way that it can beused by machines not just for display purposes, but forautomation, integration and reuse of data acrossvarious applications."2
1. Semantic Web というアプローチ
Web というアプローチは瞬く間に産業から我々の生活まで深く浸透してしまっている．もはや
我々は Web 以前の不便さを思い出すことも忘れてしまっているようである．しかし現在の Webはこれだとして Web は次にどこへ向かったらよいのであろうか．その答の一つが Web の創始者であり現在の World Wide Web Consortium(W3C)のdirector である Tim Berners-Lee が目標と掲げる
Semantic Web である．
Semantic Web はこれまで人に理解することを中心とした Web から機械（エージェント）にも理解できるようした Web である．そうすることで，Webのコンテンツを計算機が自動処理をして，その統合や再利用できるようになる．
ではこれまでの Web はそのような機械処理には向いていなかったのであろうか．XML はすでにタグをコンテンツにあわせて設計することでコンテンツを処理可能にしている．XML では不足なのであろうか．例えば次のような XML の記述を考えてみよう．
<person><name> Hideaki Takeda</name><age> 20</age></person>
これが名前が Hideaki Takeda で年齢が 20 才である個人というものを指しているということは人間にとっては自明であるが，実は計算機にとって<person>や<name>を上のような自然言語でい1

The Semantic Web, Scientific American, May 2001, Tim
Berners-Lee, James Hendler and Ora Lassila
2
http://www.w3.org/2001/sw/

図1 Semantic Webのアーキテクチャ(Tim Berners-Lee
http://www.w3.org/2000/Talks/1206-xml2k-tblより)った概念として理解することはできない．あるいは<個人><名前>Hideaki Takeda</名前><年齢> 20</年齢></個人>と書いたとき，この２つが同じことを指すことは分からない．さらには個人の記述としてこれは十分なのか，といったことも分からない．
すなわち XML ではシンタックスの定義だけで意味（セマンティクス）の定義をしていない．そこでセマンティックスの記述も与えようというのが Semantic Web である．
もし上記のような意味理解を計算機が可能になれば，Web の情報は計算機によって必要な部分が切り出されたり，必要な項目だけが検索されたり，さらには結合されたりと，多様な利用が可能になる．
この実現には記述を受け入れる仕組みと記述する仕組みが必要となる．Semantic Web では上記のような意味の情報はメタデータであるとしてこのメタデータを拡張することで実現しようとしている．またその記述の仕組みとしては
RDF(Resource Description Framework), RDF
Schema, XML Schema, DAML+OIL などの言語を階層的に定義しつつある(図 1 参照)．

２．Semantic Web の実際
以下では上で述べた各言語についてその特徴を簡単にまとめる．詳細は各言語の仕様にあたっていただきたい．
RDF(Resource Description Framework)
RDF はその名のとおり，Resource Description すな
わちメタデータのための枠組みである．この RDFが以下のより高度な記述の基本として利用されている．RDF ではまたモデルとシンタックスが分離されているところに特徴がある．RDF では極めて単純なモデルすなわち SVO（主語-述語-目的語）という 3 つ組でデータを表現する．これを順にResource, Property, Value と呼ぶ．Value は Resourceを指してよいので，ネットワークとして定義することができる．
RDF Schema
RDF は SVO あるいはそれを連ねたセマンティッ
クネットとしてデータを記述するが，これはフラットな表現で複雑な表現をつくるは難しい．そこで階層的表現を可能とするように RDF の拡張として RDF Schema が提案された．RDF Schema では class や class-subclass 関係，property-subproperty関係が用意され，オブジェクト指向風（あるいはフレーム風）表現が可能となる．また property に定義域 domain，値域 range の制約をつけることができる．
DAML+OIL
DAML+OIL は RDF Schema に加えてより詳細なクラス定義や制約を記述可能にしたものである．クラス定義としては必要条件，必要十分条件を分けて記述することができ，またクラスの論理操作（和，積，否定）もつくることができる．また
property 制約という形でクラスのスロットの定義をすることができる．また型制約や個数制約などの制約も可能である．例えば先に挙げた個人に関する XML 記述に相当するもの DAML+OIL で書くと図２のようになる．
DAML-S
DAML-S では静的なページではなく Web サービ
ス で 使 われる よ う なプロ セ ス をもっ た 動 的 なWeb を記述することを試みている．サービスはサービスの静的な記述である ServiceProfile とプロセスの中身を記述する ServiceModel，アクセス手段 を 記 述 す る ServiceGrounding か ら な る ．
ServiceModel は Sequence や Split などプロセス記述の要素を組み合わせて表現される．
３．Semantic Web の課題
Semantic Web は大いなる可能性をもっているものの，まだまだ発展途上の技術である．Semantic Webが発展するには次のようなことが必要であろう．
(1) 仕様の確定と展開(推論など)[Semantic Web 関係者]

<daml:DatatypeProperty rdf:ID="age"><rdfs:comment>
age is a DatatypeProperty whose range is
xsd:decimal..age is also a UniqueProperty (can only haveone age)</rdfs:comment><rdf:typerdf:resource="http://www.daml.org/2001/03/daml+oil#Uniq
ueProperty"/><rdfs:range
rdf:resource="http://www.w3.org/2000/10/XMLSchema#nonNegativeInteger"/></daml:DatatypeProperty><daml:Class rdf:ID="Person"><rdfs:subClassOf rdf:resource="#Animal"/><rdfs:subClassOf><daml:Restriction daml:mincardinality="1"><daml:onProperty rdf:resource="#name"/></daml:Restriction></rdfs:subClassOf></daml:Class><Person rdf:ID="Hideaki"><rdfs:label>Adam</rdfs:label><rdfs:comment>Hideaki is a person. His name is Hideaki
Takeda and his age is 20.</rdfs:comment><name>Hideaki Takeda</name><age><xsd:integer rdf:value="20"/></age></Person>

図2

DAML+OIL による定義例(一部)(2) 利用者に普及すること[Semantic Web 関係者，アプリケーション関係者，一般ユーザ](3) よいオントロジーの提供[Semantic Web 関係者，アプリケーション関係者](4) よいドメインをみつけること[アプリケーション関係者]
これはどのような言語や仕様にとってもいわれることだが，Semantic Web では本質的に必要とされるものである．というのは Semantic Web にとって流布して共 有されることがその存在意義だからである．
参考文献
基本的に以下の活動やプロジェクトの Web ページから仕様などド キュメントが手に入るので参考にされたい．
[Semantic Web] http://www.w3.org/2001/sw(RDF, RDF Schema, XML Schema など)[Dublin Core Metadata Initiative]
http://dublincore.org/[DAML] http://www.daml.org/(DAML+OIL, DAML-S など)[On-To-Knowledge Project]
http://www.ontoknowledge.org/ (OIL など)