RDFとOWLで何が決まるのか:厳密さはどこまで要るか【2026年版】

この記事の概要
本記事は全4回シリーズの第2回です。
第1回では、関係を明示する道具としてのオントロジーを扱いました。
今回は、その関係を厳密に書くための標準を見ます。
経営者の方はここだけで足ります
厳密さは目的ではありません。
コストです。
自社がどこまで形式を上げるべきかは、Part 6で扱います。
Part 1からPart 5までは実装者向けの内容なので、読み飛ばして構いません。
Part 1. 事実を3つ組で書くRDF
RDF(Resource Description Framework)は、事実をトリプル(主語、述語、目的語の3つ組)で表す仕組みです。
書き方はこうなります。
:Mary rdf:type :Person . # Mary は Person である
:Woman rdfs:subClassOf :Person . # Woman は Person のサブクラス
:John :hasWife :Mary . # John の妻は Mary
どんな複雑な知識も、この3つ組の集まりに分解できます。
第1回で扱った「注文サービスは決済サービスを呼び出す」も、(注文サービス, calls, 決済サービス)という1本のトリプルです。
ここで、第1回で使ったナレッジグラフという言葉の中身が決まります。
ナレッジグラフとは、実体としてはトリプルの集合であり、主語と目的語を節点、述語を辺と見なしたグラフのことです。
節点と辺という別々の概念があるのではなく、同じ3つ組を2通りの見方で読んでいるだけです。
Part 2. トリプルの上に取り決めを置くOWL
トリプルは事実を並べる仕組みです。
「この領域ではこういう決まりが成り立つ」という取り決めは、まだ書けません。
それを書くための言語がOWL(Web Ontology Language)です。
W3Cの入門文書(W3C勧告、2012年12月11日)は、OWLをこう説明しています1。
OWL is a computational logic-based language such that knowledge expressed in OWL can be reasoned with by computer programs either to verify the consistency of that knowledge or to make implicit knowledge explicit.
計算論理にもとづく言語であり、OWLで表した知識は、その知識に矛盾がないかを検証するため、あるいは暗黙の知識を明示するために、プログラムで推論できる、という説明です。
目的が2つ書かれている点に注目してください。
矛盾の検証と、暗黙の知識の明示です。
OWLの基本的な考え方は次のようになります。
オントロジーの中で述べられる言明を、OWL 2では公理(axiom)と呼びます1。
そしてオントロジーは、自身の公理が真であると主張します1。
言い換えると、オントロジーとは公理の集合です。
公理が扱う対象は、個体、クラス、プロパティの3つに分かれます。
第1回で挙げた5つの構成要素と対応させると、クラスがclass、個体がindividual、プロパティと関係がproperty、制約が公理の一部にあたります。
Part 3. 書いていないことが導かれる
OWLの中核にあるのは推論です。
入門文書は含意(entailment)をこう定義しています2。
we say, a set of statements A entails a statement a if in any state of affairs wherein all statements from A are true, also a is true.
言明の集合Aが真であるどんな状況でもaが真になるとき、Aはaを含意する、という定義です。
推論器(reasoner)と呼ばれるプログラムが、この含意を自動で計算します。
最小の例を出します。
公理1: SubClassOf(:Woman :Person) # Woman は Person のサブクラス
公理2: ClassAssertion(:Woman :Mary) # Mary は Woman
この2つから、「Mary は Person である」が導かれます。
どこにも書いていませんが、必ず真になります。
「WomanとManは排反である」という公理を足せば、「Mary は Man ではない」も導けます。
矛盾する公理を書けば、推論器が不整合を検出します。
第1回で扱った多段推論は、この含意計算の素朴な形にあたります。
線を2本たどって新しい事実を出す操作は、推論器が公理から結論を出す操作と、やっていることが同じです。
Part 4. 書いていないことは「無い」ではない
データベースとオントロジーでは、書かれていないことの扱いが正反対になります。
入門文書は、データベーススキーマとの違いをこう述べています3。
If some fact is not present in a database, it is usually considered false (the so-called closed-world assumption) whereas in the case of an OWL 2 document it may simply be missing (but possibly true), following the open-world assumption.
データベースでは、ある事実が存在しなければ偽と見なされます。
これを閉世界仮定と呼びます。
「注文テーブルに行がなければ、その注文は存在しない」という読み方です。
OWLの文書では、事実が無いことは単に欠けているだけで、真である可能性が残ります。
これを開放世界仮定と呼びます。
「Johnに妻の記述が無い」からといって「Johnは独身である」とは結論しません。
この違いは、AIに知識を渡す場面で効いてきます。
グラフに書いていない関係について、AIにどう振る舞わせるかという設計です。
「グラフに無い関係は不明と答えよ」と指示することは、開放世界仮定の考え方をプロンプトで再現する作業にあたります。
第3回で扱う実測でも、この点が具体的な形で表れました。
グラフに記録されていない関係について、AIが「グラフに関係が無いので手動確認が要る」と答えた場面があります。
正直な振る舞いではありますが、実際にはその関係は存在していました。
書いていないことを未知として扱うと、未知が回答の欠落として出てきます。
Part 5. 実際に動いている大規模オントロジー
オントロジーは、AIが話題になる前から実務で使われてきました。
3つ挙げます。
Gene Ontologyは、遺伝子の機能を記述するための共有語彙と関係の体系です4。
SNOMED CTは臨床医療用語の体系で、SNOMED Internationalが維持しています5。
schema.orgは、Webページの構造化データのための語彙で、Google、Microsoft、Yahoo、Yandexによって共同で設立されました6。
いずれも、組織や国をまたいで同じ概念を同じ意味で使う必要から生まれています。
第1回で挙げた、暗黙知が外に出る、用語のずれが見える、変更の影響範囲が見える、一度作れば何度も使える、という4つの効果は、これらの現場で先に実証されてきたものです。
なお、厳密なオントロジーを最初から用意しなくても、文書から関係を取り出して使う手法があります。
GraphRAGは、文書からエンティティの知識グラフを導く段階を手法の中に含んでおり、あらかじめ人手で整えたオントロジーを前提にしていません7。
厳密な形式が使える段階に達していなくても、関係を使う道はあるということです。
Part 6. 厳密さはコストである
ここから先は、かなうテックが実務で使っている判断であり、公式の指針ではありません。
RDFとOWLと推論器を一式そろえた形と、社内文書に関係を書き出しただけの形の間には、連続した段階があります。
どこで止めるかは、目的で決まります。
AIに地図を渡したいだけであれば、文書か、第3回で扱うナレッジグラフの仕組みで足ります。
この場合でも、使う関係の型の一覧(呼び出す、依存する、〜の一部である、など)だけは先に決めておく価値があります。
型が決まっていないと、第1回で述べた「選べる関係が有限になる」という効果が消えます。
チームで長く運用し、整合性を機械で検証したくなったら、スキーマを明文化する段階に進みます。
許されるクラスと関係の型を文書に固定し、そこから外れた記述を弾けるようにする形です。
実行時に違反を弾く強制力が要るなら、オントロジー単体では足りません。
第1回のPart 7で扱ったとおり、そこはアプリケーションの層が担います。
中小企業の現場で言えば、多くの場合はいちばん軽い段階で止まります。
RDFで書く必要も、推論器を動かす必要もありません。
決めるべきことは1つです。
自社の業務で使う関係の型を、いくつに絞って、どこに書いておくか。
厳密さを上げる判断は、それが必要になる問いが実際に出てきてからで間に合います。
Part 7. 業務で言うと何にあたるか
用語のずれの可視化は、この回の内容と直結します。
「営業が言う案件」と「経理が言う案件」が別物だとしたら、それはクラスが2つあるということです。
同じ言葉に2つのクラスが割り当てられている状態は、書き出して初めて見えます。
規程や契約の見直しも同じ構造です。
「この条項は、どの法令にもとづくか」「この条項を変えたら、どの他の条項に波及するか」は、どちらも関係をたどる問いです。
条文と条項の関係を一度書き出しておけば、見直しのたびに全文を読み直す必要がなくなります。
ここで開放世界仮定の話が効いてきます。
書き出した関係に無いものを「関係が無い」と読むと、見落としになります。
「まだ書いていない」と「関係が無い」を区別しておくことが、運用上の要点です。
自社の用語のずれをどう洗い出すか、どの規程から関係を書き出すべきかの切り分けは、無料相談でも承っています。
シリーズ一覧
| 回 | 内容 |
|---|---|
| 第1回 | 概念。5つの構成要素、関係の型、RAGとの使い分け、参考情報と実行基盤の区別 |
| 第2回(本記事) | 標準。RDFのトリプル、OWL、推論、開放世界仮定、厳密さの止めどころ |
| 第3回 | 実装と実測。24回の測定、効いた問いと効かなかった問い、2つの失敗モード |
| 第4回 | 業務への適用。書き起こしの5つの手順 |
関連記事
参考文献
すべての出典は2026年8月2日時点のものです。
- W3C「OWL 2 Web Ontology Language Primer (Second Edition)」1 Introduction および 3 Modeling Knowledge、W3C勧告、2012年12月11日 — https://www.w3.org/TR/owl2-primer/
- 同上、含意(entailment)の定義 — https://www.w3.org/TR/owl2-primer/
- 同上、2 Ontologies(データベーススキーマとの比較) — https://www.w3.org/TR/owl2-primer/
- Gene Ontology 公式サイト — https://geneontology.org/
- SNOMED International 公式サイト — https://www.snomed.org/
- schema.org 公式サイト — https://schema.org/
- 「From Local to Global: A Graph RAG Approach to Query-Focused Summarization」arXiv:2404.16130 — https://arxiv.org/abs/2404.16130
注記:本記事のうち、Part 1からPart 5までは公開されている標準文書と各プロジェクトの公式サイトに基づく記述です。Part 6の厳密さの止めどころに関する判断と、Part 7の業務への接続は、かなうテック(屋号:Kanau Tech™)が実務で用いている整理であり、公式に定義された方法論ではありません。標準の内容は改訂されうるため、実装にあたっては原典をご確認ください。
