0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

BFO 入門 ― 36 クラスで製造現場を切り分ける(製造業ナレッジグラフを IOF で作る #1)

0
Last updated at Posted at 2026-10-31

Gemini_Generated_Image_mkd7d3mkd7d3mkd7.jpg

目次

はじめに

製造業のナレッジグラフを、国際標準の上位オントロジー BFO と、その上に乗る製造業の業界標準 IOF(Industrial Ontology Foundry) で作ってみました。題材は、架空のダイカスト工場(10 台・合成データ)の設備状態を判定するデモアプリです。動いている様子は次の動画(https://youtu.be/p0MVkcYiYTg )で紹介しています。判定の仕組みは連載の最終回(#5 前後編)で詳しく扱います。

※Quality:720p以上で再生してください。

※動画の画面に出る「碧海軽合金株式会社 衣浦工場」は、デモのために作った架空の会社・工場です。実在の企業・工場とは関係ありません。

dcm.png

図: 題材にした架空のダイカストマシン(コールドチャンバー 500 t)。左が金型を締める型締装置、右が溶湯を押し込む射出装置。同じ型の 10 台が並ぶ工場を想定しています。

製造現場の知識は、設備台帳、QC工程表、作業標準書、異常処置基準書、是正処置報告書と、ばらばらの文書や表に分かれています。同じ「対策」という言葉が、ある表では「推奨される処置」、別の表では「実施した作業」を指していることもよくあります。BFO・IOF は、こうした知識を 1 つの共通の言葉でつなぐための土台です。この連載では、毎回「製造現場で何に効くのか」を、実際に効いた例で示します。

この連載は「やってみた」ではなく、ハマりどころ集として書きます。BFO・IOF の日本語の解説はほとんど無く、予備知識があっても引っかかる所がたくさんありました。

# 内容
1(本記事) BFO 入門 ― 36 クラスで製造現場を切り分ける
2 IOF を手元で動かすまでの落とし穴(近日公開)
3 製造業ナレッジグラフを IOF で設計する(近日公開)
4 前編 OWL で書けないもの【前編】単調論理と一意名仮定(近日公開)
4 後編 OWL で書けないもの【後編】開世界と「今の値」(近日公開)
5 前編 ナレッジグラフ × 判定特化モデル【前編】判定の設計と一致率(近日公開)
5 後編 ナレッジグラフ × 判定特化モデル【後編】不良を事前に当てられるか、結果で測る(近日公開)

対象読者: RDB のテーブル設計は分かるが、オントロジーは初めての方。

この記事の学習目標

読み終えたとき、次の 3 つができることを目指します。

  1. BFO が何をしてくれて、何をしてくれないかを、RDB に例えて説明できる
  2. 製造現場の「もの」を、3 つの問い(全体があるか・コピーできるか・取り除いたら物が変わるか)で切り分けられる
  3. 推論器がどこまで守ってくれて、どこからは自分で決めるしかないかを説明できる
  4. BFO の区分が、製造現場のどんな困りごとに効くかを、例を挙げて説明できる

読み方

各章に 🏭 製造現場では の囲みを置き、その区分が現場で何に効くかを書きました。各章の最後には ✅ 確認問題 を置きました。答えは折りたたんであるので、考えてから開いてください。間違えた問題の章だけ読み直せば十分です。

用語の早見表(読みながら戻ってきてください)

用語 ひとことで 例
オントロジー 「何が存在し、どう分類され、どう関係するか」を機械が読める形で書いたもの —
上位オントロジー どの分野にも共通する、いちばん抽象的な区分だけを決めたもの BFO
クラス ものの種類 「ダイカストマシン」
個体 1 つ 1 つの具体的なもの 「2 号機(DCM-02)」
関係(プロパティ) 個体と個体のつながり 「2 号機は真空装置を部品として持つ」
推論器 書かれたきまりから、矛盾を探したり新しい事実を導いたりするプログラム HermiT

1. BFO とは ― 36 クラスしかない「分類の枠組み」

BFO(Basic Formal Ontology)は、ISO/IEC 21838-2 として規格化された上位オントロジーです。上位オントロジーと聞くと巨大な分類体系を想像しますが、実物(bfo-core.ttl)を数えると拍子抜けするほど小さいです。

種別 件数
名前付きクラス 36
オブジェクトプロパティ(関係) 40
個体(具体的なもの) 0
互いに排他と宣言されたクラスの組 26(7 章)

さらに、製造業の言葉は 1 語も出てきません。

for w in equipment manufactur machine maintenance organization; do
  echo "$w: $(grep -ic "$w" bfo-2020/21838-2/owl/bfo-core.ttl)"
done
# equipment: 0 / manufactur: 0 / machine: 0 / maintenance: 0 / organization: 0

BFO が持っているのは、object(物)、process(過程)、quality(性質)、disposition(傾向)、role(役割)といった**「存在の区分」だけ**です。「設備」「工程」「材料」を表すのは、上に乗るオントロジーの仕事です。

BFO は器ではなく、器の分類体系です。 RDB に例えると、テーブルそのものではなく「正規化の理論」に近い、スキーマのスキーマです。

Gemini_Generated_Image_re1qltre1qltre1q.jpg

このプロジェクトでは、次の 5 層で作りました。

層 中身 RDB での対応
BFO(36 クラス) 存在の区分 正規化の理論・設計の作法
IOF Core 製造業共通の語彙(設備、組織、情報 …) 業界標準のテーブル定義
IOF ドメイン(保全など) 領域別の語彙(保全の状態、故障モード …) 同上
自作(tmk:) 自分の現場の語彙(確認項目、因果の主張 …) 自社拡張のテーブル
データ(A-Box) DCM-02(2 号機)、CAR-2026-019(是正処置報告)… 行(レコード)

🏭 製造現場では: IOF には、BFO の上に保全・生産計画・サプライチェーン・製品サービス・バイオ医薬のモジュールがあります。工場ごと・システムごとにばらばらだった「設備」「工程」「故障モード」といった言葉を、業界で共有できる定義に寄せられます。BFO はその定義どうしが矛盾しないための土台です。

2. 最初の分岐 ― 続くもの(continuant)と起きるもの(occurrent)

BFO はすべてのものを、最初に 2 つに分けます。

継続体(continuant) 生起体(occurrent)
BFO の説明 時間を通じて、同一性を保ったまま存在し続ける 時間の中で展開する(またはその始まり・終わり)
例 金型、ダイカストマシン、作業標準書 鋳造、段取り替え、ショット

Gemini_Generated_Image_gabs08gabs08gabs.jpg

ハマりどころ: 日常語の「対策」は 2 つに割れる

よくある RDB 設計では、「対策」を 1 つのテーブルにまとめます。BFO では、これが 2 つに割れます。

推奨される対策 実施された対策
例 「真空バルブは 30,000 ショットで交換すること」(設備台帳に書いてある) 2 号機の真空バルブを実際に交換した作業
区分 情報(継続体) 過程(生起体)

この 2 つは、BFO では同じクラスにできません(continuant と occurrent は排他です)。IOF では、推奨の情報が実施の過程を定める(iof:prescribes)関係でつなぎます。

日本語の「〜している」「〜していく」にも引きずられないでください。「金型が摩耗している」は金型の状態(継続体の側)、「金型が摩耗していく」は過程(生起体の側)です。何を言いたいかで分かれます。

なぜ分けると嬉しいのか

「対策」を 1 つにまとめたままだと、「推奨されているのに、まだ実施されていない対策はどれか」という問いに答えにくくなります。2 つに分けておけば、推奨と実施を別々に問い合わせ(SPARQL)で取り出して突き合わせられます。区分を分けるのは哲学のためではなく、問いに答えられるようにするためです。

🏭 製造現場では: このプロジェクトでは、ガス巣(鋳造品の内部の空洞)という不良について「推奨される対策」(異常処置基準書・設備台帳)と「実際に実施された対策」(是正処置報告書)を分けて問い合わせられるようにしました。実際に問い合わせると、推奨されるのは「一次処置(真空度の確認など)」(異常処置基準書)と「真空バルブ交換」(設備台帳の交換基準)でした。一方、実施された対策には、**どちらにも載っていない「真空配管フィルタの清掃」**がありました(原因がフィルタの詰まりだった過去の事例)。基準書に無いのに効いた対策が一覧で見つかるので、基準書を改訂する候補を拾えます。

✅ 確認問題(2 章)

Q1. 次のうち、生起体(occurrent)はどれでしょう。
(a) ダイカストマシン (b) 段取り替え (c) 作業標準書 (d) ロット 1 本分の鋳造

答え

(b) と (d)。 どちらも始まりと終わりがあり、ある瞬間には途中までしかありません。(a) は物、(c) は情報で、どちらも継続体です。

Q2. 「設備台帳に書かれた『真空バルブは 30,000 ショットで交換する』」と「2 号機で実際に行った真空バルブ交換作業」を同じクラスにできないのはなぜでしょう。

答え

前者は情報(継続体)、後者は過程(生起体)だからです。BFO は継続体と生起体を排他と宣言しているので、同じクラスにすると推論器が矛盾として止めます。

3. 依存するか、コピーできるか

継続体は、さらに「何かに依存するか」で 3 つに分かれます。

区分 依存のしかた 例
独立継続体(independent continuant) 何にも依存しない 金型、マシン、キャビティ(金型の中の空間)
特定依存継続体(specifically dependent continuant) ただ 1 つの担い手に張り付く。担い手が無くなれば消える 金型の温度、真空バルブの摩耗しやすさ
総称依存継続体(generically dependent continuant) 担い手は要るが、どの担い手でもよい(コピーできる) 作業標準書の内容、設計図、レシピ

**決め手は「コピーできるか」**です。

  • 作業標準書の内容は、別の紙にもファイルにも写せます → 総称依存(情報)
  • その紙についた汚れは、その紙にしかありません → 特定依存(性質)

このプロジェクトでは、紙の原本と現場に掲示した写し(物が 2 つ)が、同じ「QC工程表の内容」(情報が 1 つ)を担う、というデータを推論器に通しました。矛盾は出ません。逆に「紙が組織を担う」と書き間違えると、推論器が矛盾として止めます。「担う」の相手は総称依存継続体(情報)でなければならず、組織は独立継続体で、BFO はこの 2 つを排他と宣言しているからです。

Gemini_Generated_Image_tqlsg1tqlsg1tqls.jpg

🏭 製造現場では: 文書管理でよくある「最新版の原本はどれか」「現場の掲示は古い版のままではないか」という問題は、内容(情報)と紙(物)を分けて初めて書けます。このプロジェクトでは文書の内容を個体にし、「この設備の判断基準と、それを定める文書は何か」を問い合わせで答えられるようにしました。その結果、消耗部品の交換周期を設備台帳と作業標準書の 2 つの文書が定めていた(二重管理)ことが分かりました。文字列の出典のままでは見えなかったことです。

✅ 確認問題(3 章)

Q3. 次のものは、独立・特定依存・総称依存のどれでしょう。
(a) 鋳造条件のレシピ(Rev.06) (b) 金型の今の温度 (c) 金型の中の空間(キャビティ)

答え
  • (a) 総称依存: 別の装置にもファイルにも写せる情報です
  • (b) 特定依存: その金型にしか無く、金型が無くなれば消えます
  • (c) 独立: 空間は何にも依存しません。ただし物質ではないので「物」ではなく「場所(site)」です

Q4. 「コピーできるか」で分けると、何が嬉しいのでしょう。

答え

「同じ内容の写しが現場に 2 枚ある」「原本を捨てても内容は残る」が正しく書けます。紙と内容を 1 つのものにしてしまうと、写しが増えるたびに「内容」も増えてしまいます。

4. 傾向(disposition)と役割(role)― 取り除いたら物が変わるか

特定依存継続体のうち、何かの過程の中で初めて現れるものを、実現可能体(realizable entity)と呼びます。代表が傾向(disposition)と役割(role)です。

BFO の定義には、**別名(altLabel)**が付いています。この 2 行を並べると本質が見えます。

disposition : internally-grounded realizable entity   (根拠が物の内側にある)
role        : externally-grounded  realizable entity   (根拠が物の外側にある)

**決め手は「取り除いたとき、物が変わるか」**です。

問い 傾向(disposition) 役割(role)
例 真空バルブのシールの摩耗しやすさ 作業者が担う段取り作業者の役割
取り除くには? 物を作り変える(バルブを交換する) 辞令や担当を変えるだけ
取り除いた後、物は? 変わっている 同じまま(その人の体は変わらない)
根拠 材質・構造(内側) 職務分掌の規程(外側)

摩耗しやすさは、鋳造という過程の中で初めて「摩耗」として実現します。棚に置いたバルブは摩耗しません。役割も、段取り替えという過程の中で実現します。

Gemini_Generated_Image_5yx2ri5yx2ri5yx2.jpg

🏭 製造現場では: 傾向と役割を分けると、保全の計画(部品の摩耗 → 交換)と人の配置(担当 → 辞令)を混ぜずに扱えます。また「権限は人ではなく役割に与える」という職務分掌の考え方が、そのまま書けます。人が異動しても、役割と、その役割が担う工程のつながり(このプロジェクトでは「段取り作業者 → 工程 51 段取り替え」など)は残るので、属人化を避けるのに役立ちます。

✅ 確認問題(4 章)

Q5. 次は傾向(disposition)と役割(role)のどちらでしょう。
(a) プランジャチップの「すり減りやすさ」 (b) ある課が担う「相談先」という立場 (c) 金型の「熱がこもりやすい」性質

答え
  • (a) 傾向: 取り除くにはチップを交換するしかありません
  • (b) 役割: 規程を変えれば別の課に移り、課の中身は変わりません
  • (c) 傾向: 金型の形や冷却の構造が根拠です(内側)。直すには金型を作り変える必要があります

5. 判定フロー

ここまでの決め手を、迷ったときに順にたどれる形にまとめます。

Q1. 時間の中で展開するものか?(始まりと終わりがあり、時間的な部分を持つ)
      YES → 生起体(occurrent)……… 過程(process)など
      NO  → 継続体(continuant)……… Q2 へ

Q2. 何かに依存せず、単独で存在できるか?
      YES → 独立継続体 ……… Q3 へ
      NO  → 依存する ………… Q4 へ

Q3. 物質でできているか?
      YES → 物質的なもの(material entity)。物(object)・物の集まり(object aggregate)など
      NO  → 物質でないもの。場所なら site

Q4. 複製(コピー)がありうるか?
      YES → 総称依存継続体 = 情報・内容
      NO  → 特定依存継続体 ……… Q5 へ

Q5. それが現れるのに、別の過程が要るか?
      NO  → 性質(quality)
      YES → 実現可能体 ……… Q6 へ

Q6. それを取り除いたとき、担い手は物理的に変わるか?
      YES → 傾向(disposition)
      NO  → 役割(role)

解いてみよう: 「是正処置報告書に書かれた『原因: シール摩耗』」をたどる

問い 考え方 答え
Q1 時間の中で展開するか? 報告書の記述は、ある瞬間に全体がそこにある いいえ → 継続体
Q2 単独で存在できるか? 記述は、紙かファイルが無いと存在できない いいえ → 依存する
Q4 コピーできるか? 別の紙にも写せる はい → 総称依存(情報)

ここで止まります。「シール摩耗」そのもの(バルブに内在する傾向)と、「原因はシール摩耗だ」という主張(情報)は、別のものだと分かります。この区別が、6 章の「因果の主張」につながります。

6. 製造現場を切ってみた ― 6 つの実例

このプロジェクトで実際に判断した例です。却下した候補が判断の中身です。

もの 採用した親 決め手 却下した候補
キャビティ(金型の中の、溶湯が満たす空間) site(場所) 物質ではなく空間。境界が金型の面と一致する 物の一部(fiat object part): キャビティは金属でできた部分ではない
管理項目(鋳造圧力、型内真空度) IOF の process characteristic(過程の属性) 75 MPa は機械の性質ではなく、鋳造という過程の属性 性質(quality): 性質は物に内在する。「測れるもの=性質」ではない
五感の手がかり(「型開きの音がいつもと違う」) 情報 音は鳴り終われば消えるが、「違う音がした」という記録は残る(担い手の消滅テスト) 性質: 音の高さそのものを扱いたいなら正しいが、扱いたいのは報告
因果の主張(「シール摩耗 → ガス巣」) 情報(記述的な情報) 因果を関係ではなく 1 個の主張にすると、仮説か確定か・出典・覆されたことを述べられる 関係で書く: 仮説から確定への昇格が書けない(連載 #4 前編で詳しく)
素因(真空バルブのシール摩耗) 傾向(disposition) 取り除くにはバルブを交換するしかない。担い手に内在する 役割: 担当を変えても摩耗は消えない
文書(QC工程表) 情報(内容)。紙は物で、内容を担う 内容はコピーできる。紙を捨てても内容は残る 紙と内容を 1 つにする: 「同じ内容の写しが 2 枚」が書けない

7. 機械が守ってくれる所、守ってくれない所

BFO には、「これらを同時に満たすものは無い」という排他の宣言が、2 つの書き方で入っています。

書き方 件数 中身 判定フローでは
owl:disjointWith(2 つずつ) 5 組 継続体 ⊥ 生起体 Q1
物質的なもの ⊥ 物質でないもの Q3
実現可能体 ⊥ 性質 Q5
傾向 ⊥ 役割 Q6
1 次元の時間領域 ⊥ 0 次元の時間領域 (時間の扱い)
owl:AllDisjointClasses(まとめて) 5 グループ 独立継続体・特定依存継続体・総称依存継続体 Q2・Q4
空間領域・場所(site)・継続体の境界 (空間の扱い)
過程・過程の境界・時間領域・時空間領域 (生起体の中)
0〜3 次元の空間領域 (空間の扱い)
点・線・面の境界 (空間の扱い)

グループの中は互いに排他なので、組に直すと 5 グループで 21 組、合わせて 26 組です。判定フローの Q1〜Q6 の分岐は、どれも排他の宣言で守られています。

⚠️ ハマりどころ: grep -c 'owl:disjointWith' bfo-core.ttl で数えると 5 と出ます。筆者も最初はこれで「排他は 5 組だけ」と思い込みました。owl:AllDisjointClasses で書かれた 5 グループを見落としていたのです。公理を grep で数えるのは危険で、書き方が複数ある前提で調べる必要があります。

この宣言は読み物ではなく、推論器が機械的に検査するきまりです。たとえば、ある概念を傾向と役割の両方の子にしてみます。

ex:MoldWearTendency rdfs:subClassOf obo:BFO_0000016 ,   # disposition(傾向)
                                    obo:BFO_0000023 .   # role(役割)

推論器(HermiT)にかけると、こう止まります。

ERROR There are 1 unsatisfiable classes in the ontology.
ERROR     unsatisfiable: https://example.org/demo/MoldWearTendency

「このクラスに当てはまるものは、1 つも存在できない」という判定です。目で見るレビューでは見落とす誤りを、機械が見つけてくれます。独立継続体と総称依存継続体(3 章の紙と内容)を両方親にしても、同じように止まります。

Gemini_Generated_Image_4pi2x64pi2x64pi2.jpg

🏭 製造現場では: 設備マスタや部品マスタに、うっかり矛盾する分類が紛れ込むことがあります。排他のきまりがある所は、登録した時点で機械が止めてくれるので、マスタの品質管理に使えます。

裏返すと、守ってくれない所が 2 つあります。

  1. 宣言の無い組: たとえば物(object)と物の集まり(object aggregate)は排他と宣言されていないので、両方を親にしても矛盾になりません。「設備 1 台」と「設備の集まり(ライン)」の取り違えは、機械的には見つかりません。
  2. 間違った方を 1 つだけ選んだとき: 排他が検出するのは「両方に入れた」ことだけです。鋳造圧力を(過程の属性ではなく)性質(quality)の子にだけしても、矛盾は起きません。どの分岐を選ぶかは、自分で正しく決めるしかないのです。

8. 製造業で何に効くのか ― このプロジェクトで実際に効いたこと

ここまでの区分が、製造現場のどんな困りごとに効いたかをまとめます。いずれも、このプロジェクトで問い合わせ(SPARQL)を書いて、実際に答えが返ることを確かめたものです。

現場の困りごと 効いた区分 できるようになった問い
推奨された対策が実施されたのか分からない 継続体(情報)と生起体(過程)を分ける 「この不良に推奨される対策と、実際に実施された対策は何か」
判断基準の出どころが分からない・文書が二重管理になっている 情報(内容)を個体にする 「この設備の判断基準と、それを定める文書は何か。定める文書の無い基準はどれか」
部品の交換と担当者の変更が同じ表で管理されている 傾向と役割を分ける 「この部品の摩耗が引き起こしうる不良は何か」と「この役割が担う工程はどれか」を別々に問える
設備・工程・組織のつながりが部署ごとに別の表 IOF の共通の語彙 「この設備が属する工程と、それを所管する組織は何か」
マスタに矛盾する分類が紛れ込む 排他のきまり(26 組) 排他の 2 つに同時に入れると、登録した時点で推論器が矛盾を検出する

⚠️ ただし、BFO・IOF を入れただけでこれらが解決するわけではありません。区分に沿ってデータを整える手間(このプロジェクトでは 14 種類の文書・表から、自作の語彙とあわせて約 1 万の事実(トリプル)を作りました)が要ります。その手間に見合うのは、「部署をまたいで同じ問いを繰り返し立てる」ような使い方のときです。

9. ハマりどころ集

① BFO のクラスに直接データを入れない

「上位オントロジーを導入する」と聞いて、DCM-01 を BFO の「物(object)」として直接書きたくなります。これは最初の典型的な誤りです。

IOF Core の実物を数えると、BFO を親にした所(rdfs:subClassOf)は 32 か所、BFO のクラスに直接データを書いた所(rdf:type)は 0 か所です。データは、BFO の子孫にあたる IOF や自作のクラスの個体として書きます。

② 「測れる=性質」ではない

鋳造圧力は数値で測れますが、BFO の性質(quality)ではありません。性質は物に内在するもので、鋳造圧力は鋳造という過程の属性です(6 章の管理項目)。

③ 日本語の解説書は「BFO の日本語版」ではない

日本語でオントロジー工学を学ぼうとすると、溝口理一郎氏の著作(YAMATO、Hozo)に行き着きます。ただしこれは BFO とは別系統で、役割の扱いなど具体的な判断が異なります。「同じものの日本語解説」として読むと混乱します。同じ問題に別の答えを出した例として読むと、BFO の選択がかえって際立ちます。

④ 紹介されがちなリンクが切れている

学習リソースとして紹介される industryportal.enit.fr/ontologies/IOF-CORE は、2026 年 10 月時点で 404 でした(ポータル自体は生きています)。また、IOF の用語の名前は https://spec.industrialontologies.org/ontology/construct/<名前> です。.../ontology/core/Core/ はオントロジー自体の名前で、用語の名前空間ではありません。ここを間違えると、読み込んでも何も解決しません(次回詳しく扱います)。

⑤ 推論器が黙っていても、正しいとは限らない

7 章のとおり、推論器が検査できるのは、宣言されたきまりの範囲だけです。きまりが無ければ何も言いません。 推論器が通ることは、設計が正しいことの必要条件であって、十分条件ではありません。

まとめ

  • BFO は **36 クラスの「分類の枠組み」**です。製造業の語彙は持たず、上に IOF や自作の語彙を乗せて使います
  • 切り分けの決め手は 3 つです
    • ある瞬間に全体があるか → 継続体か生起体か
    • コピーできるか → 情報(総称依存)か、担い手に張り付くもの(特定依存)か
    • 取り除いたら物が変わるか → 傾向か役割か
  • 機械(推論器)が守ってくれるのは、排他と宣言された 26 組に同時に入れたときだけです。どの分岐を選ぶかは自分で決め、却下した候補と理由を記録するのが大事です
  • 製造現場では、推奨と実施の区別、文書の内容と紙の区別、部品の傾向と人の役割の区別が、部署をまたいだ問いに答える土台になります

✅ 理解度チェック(最後に)

学習目標に戻って、声に出して説明できるか確かめてください。

  1. 「BFO は器ではなく、器の分類体系」とはどういう意味か。RDB に例えると何に当たるか
  2. 「真空度」(過程の属性)、「真空度が 8.3 kPa だったという記録」(情報)、「真空バルブの摩耗しやすさ」(傾向)を、3 つの問いで切り分けられるか
  3. 傾向と役割の両方を親にしたクラスを推論器にかけると、何が起きるか。物と物の集まりの両方を親にした場合はどうか。鋳造圧力を性質の子にだけした場合はどうか
  4. 自分の職場で「同じ言葉が別のものを指している」例を 1 つ挙げ、BFO のどの区分で分けられるか説明できるか
3 の答え

傾向と役割は排他と宣言されているので、推論器は「当てはまるものが存在できないクラス(unsatisfiable)」として止めます。物と物の集まりは排他と宣言されていないので、何も言いません。鋳造圧力を性質の子にだけした場合も、排他の 2 つに同時に入れたわけではないので何も言いません。どちらも、誤りに自分で気づくしかありません。

手を動かして確かめる課題

読むだけより、実物を開くと定着します。所要時間は 15 分ほどです。

  1. BFO 2020 のリポジトリ(参考のリンク)から 21838-2/owl/bfo-core.ttl を取得する
  2. 1 章のコマンドで、製造業の言葉が 0 件であることを確かめる
  3. ファイルの中で disposition と role を探し、skos:altLabel(別名)を読み比べる。「internally-grounded」と「externally-grounded」の違いが、4 章の決め手と同じことを言っているか確かめる
  4. owl:disjointWith と owl:AllDisjointClasses の両方を検索し、7 章の 5 組と 5 グループがそろっているか数える。grep -c 'owl:disjointWith' だけだと 5 と出て、グループを見落とすことも確かめる

次回は 「IOF を手元で動かすまでの落とし穴」(近日公開)です。名前空間の取り違え、ネットにつながずに読み込む設定(catalog)、BFO の版の衝突を扱います。工場のネットワークから切り離した環境でも動かせるようにする方法でもあります。

参考

本記事の題材(工場・設備・文書・データ、動画に出る会社名「碧海軽合金株式会社」・工場名「衣浦工場」)はすべて架空のもので、実在の企業・工場とは関係ありません。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?