このノートでは、コンピュータでデータを扱うときの、 データの意味の記述方法を説明します。 書き方が一定の範囲に収まるように、RDB の基礎理論である 関係モデル (リレーショナル・モデル) とよばれるデータの組織化法に限定します。 データの意味は データ解釈 (data interpretation) とよばれ、 データの形式は データ構造 (data structure) とよばれます。 解剖学と生理学、あるいは、統語論と意味論のように、 データ構造とデータ解釈を対にして捉えるとわかりやすいでしょう。
データ解釈は、データ構造からは決められません。 というのは、データに限らず、なにかの意味は、 その解釈者をとおして見出されるもので、 構造そのものは意味を含まないからです。その代わり、 データ構造はデータを乗せるための器として機能し、 その個々のデータにデータ解釈を添えることで、データの意味を読みとれます。 さまざまなデータ解釈をできるだけゆがみなく表現するには、 器自身が没個性的である方がよく、関係モデルの器は、 小さな皿を集めただけのような単純なかたちをしています。
現在の人類の知識体系のなかで、意味を根本から記述する方法は知られていないため、
関係モデルのデータ解釈は、自然言語 (日本語) の文を利用します。
文のなかでも、正しいかどうかを判断可能な文に限定します。
たとえば、「今日の朝は、パンとヨーグルトを食べた」という文は、
自分自身に当てはめてみれば、正しいかどうかを判断できます。
パンとヨーグルトではないときや、
朝食を食べなかったときは、この文は間違っています。
この文をデータ解釈として使うことを明示するため、
<<<
と >>>
で囲むことにしましょう。
<<< 今日の朝は、パンとヨーグルトを食べた。 >>>
これをパンとヨーグルト以外にも使うには、
「今日の朝は ... を食べた」というように文の一部を空の皿に置き換え、
その小さな皿に /食事内容
のような名前をつけます。
<<< 今日の朝は、/食事内容 を食べた。 >>>
さらに、「今日の朝」を /日付
と /時間帯
に置き換えます。
<<< /日付 の /時間帯 に /食事内容 を食べた。 >>>
こうして 3 つの皿、つまり、3 つの項目をもつデータ解釈を記述できます。
項目の組を <<
と >>
で囲んで書くことにすると、
このデータ解釈をみたすデータは、つぎのように表現できます。
<< /日付 今日 /時間帯 朝 /食事内容 パンとヨーグルト >>
もう少しデータらしく、/日付
を西暦にして、
/食事内容
を分けて書くことにすると、つぎのふたつの組として書けます。
<< /日付 2014-10-01 /時間帯 朝 /食事内容 パン >>
<< /日付 2014-10-01 /時間帯 朝 /食事内容 ヨーグルト >>
ここまでの内容をまとめると、データ解釈は、
- 判断可能な文として表現する。
- 文の可変部分を項目名に置き換える。
- 項目名はスラッシュつきの名前
/xx
で書く。 - 項目名を含む文を
<<<
と>>>
で囲む。
となり、そのデータ解釈をみたす個々のデータは、
- 項目名
/xx
とその内容cc
をつづけて、ひとつの項目/xx cc
を記述する。 - 複数の項目を
<<
と>>
で囲み、項目の組をつくる。 - 項目の組
<< ... >>
にデータ解釈<<< ... >>>
を同伴させて意味を読みとる。
という点をみたすように記述します。
この書き方を採用することで、人間にとっても、 コンピュータにとっても読みやすくなり、 設計書やメモのなかにデータ解釈を書いて意思疎通性を向上させられるとともに、 機械可読なデータ解釈を使って、項目の検査などを支援できるようになります。