バンチと圏論を使えばいいのに

IFLA LRM 2017https://www.ifla.org/wp-content/uploads/2019/05/assets/cataloguing/frbr-lrm/ifla-lrm-august-2017_rev201712.pdf) の Chapter 7 Glossary of Modeling Terminology を読んで思ったこと。

ダメなところ:

  1. 要素と集合の区別が付いてない、あるいは曖昧にしている。
  2. 射と対象の区別が付いてない、あるいは曖昧にしている。
  3. クラス/サブクラスが何を言いたいかわからない。
  4. カローラ/双カローラのようなストリング図的概念を使ってない(ので分かりにくい)。

以下、用語ごとに:

  • 実体〈Entity〉:集合とまったく同義。のはずだが、おそらく集合の要素の意味でも使う。「MIME実体」は集合じゃなくて要素だろう。
  • インスタンス〈Instance〉:集合の要素。「実体とインスタンス」を「集合と要素」の意味で使うなら、単なる別名。
  • オブジェクト〈Object〉 : おそらく、ありとあらゆるモノの意味であろう。RDFのリソースと似てるか、または同義。
  • 論域〈Universe of discourse〉:おそらく、すべてのオブジェクトの集合。集合論的宇宙に似ている。
  • 関連〈Pelationship〉: 関係の要素の意味。だが、おそらく関係と同義としても使いそう。
  • パス〈Path〉: 関連を繋いだもの。グラフの意味のパスになる。パスの両端はインスタンス。長さ1のパスが関連。
  • ショートカット〈Shortcut〉: パスを代替する辺〈関連〉。グラフのメンタルモデルでは分かりやすい。
  • ドメイン〈Domain〉: 関連(長さ1のパス)の始点のこと。だが、関係の域の意味でも使いそう。
  • レンジ〈Range〉:関連(長さ1のパス)の終点のこと。だが、関係の余域の意味でも使いそう。
  • 逆: 関連(長さ1のパス)の始点と終点を逆にした関連。しかし、関係の転置の意味でも使いそう。Inverse, Reverse, Reciprocal, Transposed の使い分けも問題。
  • 属性〈Attribute〉: 終点がスカラー値である辺(グラフの言葉で)。
  • 関連(再度): 終点が実体のインスタンスである辺(グラフの言葉で)。
  • プロパティ〈Property〉: 実体のインスタンスから出る辺で、属性または関連であるもの。

所感、多関係の多圏で考える:

  1. 「実体」と「関連」はやめて、集合、要素、関係〈二項関係〉にしたほうがよい。
  2. 二項関係の要素は関係ペア、三項関係の要素は関係トリプル=RDFトリプル
  3. ただし、三項関係の定式化は (A -(B)→ C), (A, B → C), (A×B, C), (→ A, B, C), (→ A×B×C), (A, B, C →) など色々。
  4. クラス/サブクラスを考えるにはスキーマが必要。スキーマは指標のこと。スキーマで検証されるデータ個体は、可ラベル双カローラ に値ノードを付けた閉じたストリング図。
  5. ワイヤーに型ラベルを付けたストリング図で考えるのが基本。
  6. 開いたストリング図はスキーマ=指標=クラスに対応する。
  7. 閉じたストリング図がインスタンスに対応する。
  8. ストリング図はスキーマもインスタンスも表すことができる。
  9. 多ホムセットまたはその部分集合を、集合の宇宙で考えて、再度多圏の基本対象と考えることができる。これがレイフィケーション
  10. 特に、ホムセット (→ A) のレイフィケーションはベキ集合。

バンチはコレクションデータ型の意味だが、複数のコレクションデータ型構成法を入れ子にして作ったツリーのこと。多ホムセットのプロフィルはシーケント形式で書けるが、シーケントを表すデータはバンチ。