Building Data Validator
概要
BuildingData を 厳格な V01 スキーマルールに照らして検証 するコンポーネントです。Comp_S01 BuildModel などの下流処理に渡す前の事前チェックとして使用。MCP サーバーの軽量 validate ツールと異なり、Grasshopper 側で完全なルールセット を走らせます。
- グループ: 4. Structural Modeling (Validation 系)
- ニックネーム:
Validate - v5.5.0 で v5.5.0 schema ルール追加
機能
- v5.0.1 スキーマの全 V01 ルールを評価 (~20+ ルール)
- v5.5.0 追加ルール: Justification_Valid / DesignPhase_Valid / SlabOnBeam_Consistency
- Validation Viewer Form でグラフィカル表示 (Open=True 時)
- ThrowOnError=True にすると Error 発生で即 Exception (パイプライン停止)
- Error / Warning の件数を別出力
入力パラメータ
| パラメータ名 | 型 | 説明 |
|---|---|---|
| Data | Generic | 検証対象 BuildingData |
| Open | Boolean | true で Validation Viewer を開く |
| ThrowOnError | Boolean | true で Error 発生時に Exception を投げる |
出力パラメータ
| パラメータ名 | 型 | 説明 |
|---|---|---|
| ValidatedData | Generic | 検証済みデータ (Error 無しなら入力と同じ) |
| Report | String | 検証レポート (テキスト) |
| ErrorCount | Integer | Error 件数 |
| WarningCount | Integer | Warning 件数 |
| IsValid | Boolean | Error 件数 == 0 |
V01 ルール一覧 (主要)
| ID | ルール | 重要度 |
|---|---|---|
| R1 | Instance_ID 一意性 | Error |
| R2 | Floor が Levels に存在 | Error |
| R3 | Type_ID が対応 Catalog に存在 | Error |
| R4 | Mark 空欄 | Warning |
| R5 | Justification 値が Top/Center/Bottom (v5.5.0) | Error |
| R6 | Design_Phase が 4 enum 内 (v5.5.0) | Warning |
| R7 | Slab_On_Beam=true なら Slab_Type_ID 必須 (v5.5.0) | Warning |
| R8+ | TertiaryBeam の parent 解決可能性、MainBeam single-span 制約、開口の親部材重複等 | Error |
完全なルール一覧は同梱の docs/Reference_v5_5_0_Schema_Updates.md を参照。
MCP validate ツールとの違い
| 観点 | Comp_V01 (本コンポーネント) | MCP validate ツール |
|---|---|---|
| ルール網羅 | 全 V01 ルール | 軽量サブセット (R1-R7) |
| 実行環境 | Grasshopper (C# 直接実行) | MCP server (JSON-RPC over stdio) |
| 用途 | 下流処理前の事前チェック | AI / Claude からの軽量プレフライト |
| 性能 | 高速 (in-process) | 中速 (file I/O 経由) |
関連
Comp_I09_DiffApproval— AI 編集後の承認関門Comp_S01_BuildModel— 検証済みデータの 3D 描画- MCP API 仕様 — validate ツール
- JSON Schema v5.5.0