ontology-engineer について
OWL/RDFオントロジー、SKOS分類体系、SPARQLクエリ、ナレッジグラフを扱うエージェントスキルです。データやドメインの意味モデリングから、グラフ構築、検証、推論までの手順を支援します。
主な機能
- 01OWL/RDFオントロジー設計
- 02SKOS分類体系の作成
- 03SPARQLクエリ作成
- 04ナレッジグラフ構築
- 05意味推論と検証
- 06リンクトデータのモデリング
活用シーン
- 01能力質問に基づくドメイン設計
- 02ナレッジグラフの構築と検証
- 03SPARQLによるRDFデータ検索
- 04ソースデータのオントロジーへの対応付け
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ rade-nugroho/ agentic-enteprises-skill --skill ontology-engineerインストール後、Claude Code で/ontology-engineerを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/knowledge_graphs.mdontology_design.mdsemantic_web.mdtools_frameworks.md詳細
オントロジーエンジニア
概要
オントロジーを設計し、ナレッジグラフを構築します。このスキルでは、OWL/RDF オントロジー、SKOS タクソノミー、SPARQL クエリ、ナレッジグラフの構築、セマンティック推論、リンクトデータのパターンを扱います。
機能
- OWL/RDF オントロジー設計:クラス、プロパティ、制約、公理
- SKOS タクソノミーの作成:概念、階層、ラベル、マッピング
- SPARQL クエリ:SELECT、CONSTRUCT、ASK、DESCRIBE パターン
- ナレッジグラフの構築:データ抽出、エンティティ解決、グラフへの読み込み
- セマンティック推論:ルールベース推論、OWL 推論、一貫性チェック
- リンクトデータのパターン:URI、デリファレンス、RDF シリアライズ、データ公開
使用方法
- ユーザーが必要としているオントロジーの用途(設計、タクソノミー、クエリ、ナレッジグラフ)を特定します
- 以下の該当するワークフローに従います
- 構造化された成果物(OWL ファイル、SKOS タクソノミー、SPARQL クエリ、ナレッジグラフのスキーマ)を作成します
例
-
ユーザー:「製品のオントロジーを設計してください」 エージェント:オントロジー設計ワークフローを実行し、クラス(Product、Category、Feature)とプロパティ(hasCategory、hasFeature)を定義して、OWL ファイルを作成します
-
ユーザー:「SPARQL クエリを書いてください」 エージェント:クエリワークフローを実行し、グラフパターン、フィルター、集約を含む SELECT クエリを構築します
-
ユーザー:「ナレッジグラフを構築してください」 エージェント:ナレッジグラフ構築ワークフローを実行し、エンティティを抽出して重複を解決し、トリプルストアに読み込みます
使用する場面
- コンピテンシー質問でドメインの範囲を定め、OWL/RDF オントロジーを設計する場合
- ナレッジグラフ、エンティティ解決、リンクトデータ統合を構築する場合
- SPARQL、Cypher、またはグラフ検証や推論のワークフローを作成する場合
- セマンティックウェブやプロパティグラフのツールを選定し、公開オントロジーを再利用する場合
使用しない場面
- リレーショナルデータウェアハウスのスター スキーマやバッチ ETL →
data-warehouse-engineerを使用 - エンタープライズデータプラットフォームのベンダー選定やデータメッシュの運用モデル →
data-architectを使用 - LLM のシステムプロンプト、エージェント、RAG オーケストレーション →
prompt-engineerを使用 - セマンティックモデリングを伴わないビジネス要件ワークショップ →
business-analystを使用
中核となるワークフロー
1. オントロジー設計ワークフロー
フェーズのチェックリスト:
-
範囲とコンピテンシー質問
- ドメインの境界を定義します
- オントロジーで答える必要があるコンピテンシー質問を5~10個作成します
- 例:「ある遺伝子によってコードされるタンパク質と相互作用する薬物はどれですか?」
-
再利用の評価
- 既存のオントロジーを検索します(BioPortal、LOV、OntoBee)
- 関連する上位オントロジー(DOLCE、BFO、schema.org)をインポートして整合させます
- 再利用の判断とマッピングを記録します
-
概念モデリング
- エンティティ(クラス)、関係(プロパティ)、インスタンスを特定します
- クラス階層(is-a 関係)を作成します
- オブジェクトプロパティ(クラス間の関係)とデータプロパティ(属性)を定義します
-
OWL/RDF での形式化
- 推論のニーズに応じて OWL 2(DL、RL、QL プロファイル)で表現します
- 制約(カーディナリティ、値の制約)を追加します
- 逆、推移的、対称のプロパティを定義します
-
検証と推論
- 推論器(HermiT、Pellet、FaCT++)で一貫性を確認します
- SPARQL でコンピテンシー質問への回答を検証します
- ドメインの専門家とレビューします
2. ナレッジグラフの構築
構築パイプライン:
-
ソースの特定
- 構造化データ:リレーショナルデータベース、API、CSV
- 半構造化データ:JSON、XML、ログ
- 非構造化データ:テキスト、文書、画像
-
スキーマ/オントロジーの整合
- ソースのスキーマをオントロジーにマッピングします
- プロパティのマッピング、単位変換、URI 生成を処理します
-
エンティティの抽出と解決
- 非構造化ソースからエンティティを抽出します(NER、RE)
- 重複を解決します:「IBM」=「International Business Machines」=「IBM Corp.」
- 外部識別子(Wikidata、DBpedia、ORCID)にリンクします
-
グラフへのデータ投入
- RDF トリプルまたはプロパティグラフ形式に変換します
- トリプルストアまたはグラフデータベースに読み込みます
- グラフの完全性と品質を検証します
3. クエリと検索
ストアの種類に応じてクエリ言語を選択します:
| ストアの種類 | クエリ言語 | 用途 |
|---|---|---|
| RDF トリプルストア | SPARQL | セマンティックウェブ、OWL 推論、リンクトデータ |
| ラベル付きプロパティグラフ | Cypher | Neo4j、パターンマッチング、パスクエリ |
| GraphQL | GraphQL+ | API レイヤーのグラフクエリ |
| Gremlin | Gremlin | トラバーサル中心のマルチモデルグラフ |
4. 検証と推論
推論タスク:
- 整合性チェック:矛盾するクラスのアサーションがないこと
- 分類:サブクラス階層を推論します
- プロパティの含意:推移的、逆向き、対称的な関係を推論します
- インスタンスチェック:型アサーションを検証します
検証チェックリスト:
- オントロジーに整合性がある(充足不能なクラスがない)
- すべてのコンピテンシークエスチョンにクエリで回答できる
- 孤立したクラスやプロパティがない
- URI を参照解除または解決できる
- 必要に応じて、ラベルと説明が複数の言語で用意されている