更新履歴
- 2025-12-26: 初版発行
- 2025-12-29: Layer 2 Encryption (L2E) による回答データの機密性保護について追記
- 2025-12-30: 返信メタデータと返信ポリシー、Folio保存形式を追記
1. はじめに:SaaSモデルの限界と「隙間」の業務
業務のクラウド化が進み、固定メンバーが日々利用する基幹業務やコミュニケーションツールにおいて、SaaS(Software as a Service)は最適解となりました。 しかし、その一方で「SaaSモデルがなじまない業務」も明確になりつつあります。 特に、不特定多数の組織に対する調査や、頻度の低い申請業務において、IDベースの課金モデルやアカウント管理の手間が、デジタルの恩恵を阻害しています。
具体的な課題:だれにIDを渡せばよいのか?
例えば、自治体が管轄内の数千の事業所に対して「実態調査」を行うケースを考えます。 システム化のためにクラウド・フォームを採用しようとすると、以下の壁に直面します。
- 担当者の特定困難: 照会の発出元は、相手組織の「誰」が回答担当者かを知りません。人事異動で担当者は毎年のように変わる場合もあります。そのたびに「ID発行依頼」を受け付け、管理するのは現実的ではありません。
- 組織内コラボレーションの壁: 1つの調査票に回答するために、経理担当、現場責任者、法務担当など、組織内の複数人が関与する場合があります。1つのIDを使い回すのはセキュリティリスクがあり、かといって全員分のIDを発行するのはコストも手間もかかります。
- コスト対効果の不均衡: 「年に1回」しか提出しない書類のために、年間を通じたサブスクリプション費用を支払うことは、財政的に正当化しにくいものです。
Web/A Form は、こうした**「SaaSの隙間(エアポケット)」**にある業務を、最もシンプルで汎用的な技術——HTMLファイル——で解決する提案です。
2. Web/A Form とは何か?
Web/A Form は、単一の HTML ファイルとして動作する、サーバーレスなフォームアプリケーションです。 専用のランタイムや閲覧ソフトは不要。ブラウザさえあれば、PCでもタブレットでも動作します。
2.1. 仕組み:ファイルだから、自由になれる
- 配布 (Distribute): 管理者は「フォーム定義(Markdown)」から HTML ファイルを生成します。これをメール添付やWeb公開で配布します。「誰が担当か」を知る必要はなく、組織の代表窓口にファイルを投げるだけで済みます。
- 回覧・入力 (Circulate & Input): 受け取った組織内では、ファイルをメールやチャットで自由に回覧できます。「経理部分はAさん、現場部分はBさん」といった連携も、ファイルをリレーするだけで完結します。アカウント設定は一切不要です。
- 保存 (Freeze & Bake): 入力が完了したら「保存」ボタンを押します。アプリケーションは現在の入力値を HTML 属性として焼き付け(Bake)、スクリプトを無効化した**「静的な Web/A 文書」**として再出力します。
- 提出 (Submit): 保存されたファイルを、指定された方法(メール返信やアップロードフォーム)で提出します。
2.2. Web/A Maker: 誰でも作れるフォーム
Markdown ベースの定義ファイルにより、高度なバリデーションや計算式を含むフォームを容易に作成できます。 行政の複雑な申請書から長期計画策定まで、あらゆる帳票をデジタル化可能です。
2.3. 既存資産からの高速移行:AIによる変換
組織内には「紙Excel」と呼ばれる大量の帳票資産が眠っています。これらの移行コストを最小化するために、LLM (大規模言語モデル) の活用を推奨します。
- テキスト化: Microsoft
markitdown等のツールで、Excelファイルを汎用的なMarkdownに変換します。 - Web/A化: LLMに対し「このMarkdownをWeb/A記法に変換せよ」と指示します。
- ロジック実装: LLMは表の構造から意図を読み取り、
[calc:sum]のような計算式や、必須入力チェックを自動的に提案・実装します。
このプロセスにより、手作業での再設計を行うことなく、既存の業務フローを維持したまま、媒体を「Excel」から「Web/A」へスムーズに移行できます。
3. Web/A Form が提供する3つの価値
3.1. Zero Admin (管理コストの極小化)
Web/A Form は、利用にあたってユーザー登録やログインを必要としません。 「ファイルを送る」こと自体が、アプリケーションへのアクセス権の付与と同義になります。 これにより、発出元は膨大なID管理業務から解放され、回答側も「パスワードを忘れた」「担当者が変わってログインできない」といったトラブルから解放されます。
3.2. Machine Readable First (データ入力の民主化)
Excelファイルでの調査票回収で起きがちな「セル結合によるデータ崩れ」や「勝手な行追加による集計不能」は起きません。 Web/A Form は、見た目は人間が見慣れた帳票ですが、裏側には厳格な構造化データ (JSON-LD) が埋め込まれています。 回収したファイルからスクリプトで一括してデータを抽出でき、RPAや基幹システムへの連携もスムーズです。
3.3. Logic Embedded (Excelの利便性をWeb標準で)
現場がExcelを好む理由は、その場で見栄えを整えられ、計算もできる機能性にあるからです。 Web/A Form は、Web標準技術(HTML/CSS/JS)でこれを再現・強化します。
- 自動計算: 合計や消費税計算などをリアルタイムに実行。入力ミスを未然に防ぎます。
- 動的テーブル: 行の追加・削除が自由自在です。
- マスター参照: 外部データを埋め込み、数千の選択肢からサジェスト入力が可能です。
3.4. オプション暗号化(L2 Encryption)
Web/A Form は、任意オプションとして L2(回答データ)を暗号化できます。これにより、フォームの提出ファイルが第三者に渡っても、受領者の鍵がない限り中身は読めません。
暗号化はオン/オフを選べる設計であり、既存の運用を壊さずに機密性が必要なフォームだけを保護できます。
実現できること:
- 回答データの秘匿(受領者のみが復号可能)
- テンプレートとの強い紐付け(回答の差し替え攻撃を抑止)
- PQC(ML-KEM)への段階的移行に備えた設計
3.5. 返信メタデータと返信ポリシー
Web/A Form の提出は「片方向」に閉じることが多いため、返信が必要なケース では、返信先メタデータと返信ポリシーを明示的に定義します。
3.5.1. 返信先メタデータ
送信メッセージに reply_to メタデータを含め、少なくとも以下を定義します。
did: 返信先の DID(送信者識別)endpoint: 返信先エンドポイント(HTTPS / DIDComm / ファイル投函先など)broker_id: ブローカー経由の場合の識別子(任意)
{
"message_id": "msg_01H...",
"thread_id": "thr_01H...",
"reply_to": {
"did": "did:web:example.org",
"endpoint": "https://example.org/weba/reply",
"broker_id": "broker:weba-primary"
}
}
3.5.2. 返信先が不明なケース
返信先が提供されていない場合、以下のいずれかを明示します。
- ブローカー経由返信:
broker_idのみを指定し、ブローカーが宛先を解決 - 返信不可(片方向): 返信不能であることを UI に明記
3.5.3. 返信時の認証方式
返信の真正性と機密性を担保するため、次の構成を標準とします。
- 送信者 DID 署名: 元の提出者が返信主体であることを証明
- 受信者署名(応答署名): 返信側が受領・応答した事実を証明
- L2E 再暗号化: 返信本文を返信先の公開鍵で再暗号化
3.5.4. 返信経路のスコープ
返信は「どこまで許可するか」をスコープとして明示します。
- チャネル制約: 同一チャネルのみ返信可能(メール返信のみ等)
- 期限付き返信:
expires_atを設定し、期限超過は拒否 - 代理返信: 代理応答を許可する場合は
delegation: allowedを付与
3.5.5. Folio 側の保存形式
Folio では message_id と thread_id を軸に履歴を関連付けます。
message_id: 個別メッセージの識別子(重複不可)thread_id: 一連のやり取りを束ねる識別子reply_status:pending/sent/failedの状態
メタデータの一例:
{
"message_id": "msg_01H...",
"thread_id": "thr_01H...",
"reply_status": "pending",
"reply_to": {
"did": "did:web:example.org",
"endpoint": "https://example.org/weba/reply"
}
}
3.5.6. 返信不能時の UX
返信不能時は「なぜ返信できないか」を明確に伝えます。
- 通知: 返信先不明/期限切れ/認証失敗を明示
- 次善策: ブローカー経由や別チャネルへの誘導を提示
- ログ: Folio の履歴に失敗理由を保存
4. 比較:業務特性に応じた使い分け
| 特徴 | Web/A Form | 固定業務向けSaaS | 一般的なアンケートフォーム |
|---|---|---|---|
| 最適な対象 | 不特定多数の組織、低頻度業務 | 特定の従業員、日常業務 | コンシューマー向け簡易調査 |
| ID管理 | 不要 (ファイル依存) | 必須 (厳格な管理) | 不要 (ただし途中保存困難) |
| 作業分担 | 容易 (ファイル回覧) | ID単位での権限設定が必要 | 原則1人での回答 |
| コスト構造 | 作成費のみ (ランニング0) | ユーザー数 × 月額 | 回答数従量 or 定額 |
| データ構造 | JSON-LD (標準化) | サービス固有DB | CSV (フラットデータ) |
5. データの回収と集計戦略
ファイルとして分散したデータを、いかに効率的に統合するか。Web/A Form はそのための「インターフェース」を内包しています。
5.1. ローカル・バッチ処理(小規模・個人向け)
数百件程度のファイルであれば、特定のフォルダに集約し、単純なスクリプト(PythonやNode.js)を実行するだけで十分です。 Web/A ファイルは標準的な JSON-LD を含んでいるため、複雑なスクレイピングは不要です。ごく短いコードで、すべてのファイルを読み込み、1つの CSV や Excel ファイルに変換できます。
5.2. ドロップ・ゾーン(中規模・組織向け)
メール収集が繁忙な場合、シンプルな「アップロード専用サイト(ドロップ・ゾーン)」を用意します。 ユーザーは作成した HTML ファイルをドラッグ&ドロップするだけで提出が完了します。 サーバー側では、受け取った HTML から即座に JSONデータを抽出し、データベースに格納します。Web/A はバリデーション済みデータしか出力しないため、サーバー側のチェック処理も大幅に簡素化できます。
5.3. AI エージェントによる自律集計(大規模・先進的)
将来的には、人間がメールを開封する必要すらないかもしれません。 Gemini や Claude といった AI エージェントが、受信トレイの Web/A 添付ファイルを自動的に検知・読み取りし、基幹システムへの登録や集計レポートの作成を自律的に行います。 「人間が見るための帳票(HTML)」と「AIが読むためのデータ(JSON)」が同居する Web/A は、AI エージェントにとって最も扱いやすい入力フォーマットとなります。
6. 導入上の留意点と制約
Web/A Form は万能ではありません。ファイルベースゆえの制約を理解した上で適用する必要があります。
6.1. 作業途中データの扱い(端末依存性)
SaaS と異なり、入力中のデータはクラウドではなく「ユーザーのブラウザ(ローカルストレージ)」に自動保存されます。
- 制約: 自動保存された「書きかけの状態」は、その作業を行っている端末(ブラウザ)の中にしか存在しません。配布された元の HTML ファイルをメールで転送しても、入力中のデータは引き継がれません。
- 対策: 作業場所を変える場合や、他者に作業を引き継ぐ場合は、「作業保存(Save Draft)」ボタンを使用します。これにより、現在の入力状態を保持した新しい HTML ファイルが生成・ダウンロードされます。この「下書きファイル」を共有することで、別の端末でも作業を継続できます。
6.2. ファイルサイズの肥大化
すべてのリソース(画像、スクリプト、フォント)を1ファイルに埋め込むため、高解像度の写真を大量に添付するとファイルサイズが数MB〜数十MBになる可能性があります。
7. 結論:適材適所のデジタル化
DX(デジタルトランスフォーメーション)は、すべての業務を一律に同じツールでカバーすることではありません。 固定メンバーによる高頻度な業務には SaaS が最適であり、流動的なメンバーによる低頻度・多組織間の業務にはファイルベースのアプローチが適しています。
Web/A Form は、ファイルの手軽さとWebの堅牢性を融合させることで、これまで SaaS ではカバーしきれなかった「業務の隙間」を埋め、全体最適を実現するための現実的かつ効果的なソリューションです。