このプロジェクトは、えびぷと国法律のウェブサイトを構築するためのフロントエンドプロジェクトです。
法律の内容は外部JSONファイルに定義され、HTML、CSS、JavaScriptで動的にページが生成されます。
多くの人がJSONファイルの編集に参加できるよう、以下にJSONファイルの構造と編集方法について詳細に説明します。
project/
├─ index.html # ページの基本レイアウト
├─ css/
│ └─ style.css # 全体のスタイルシート(レイアウト、カラー、レスポンシブ対応等)
├─ js/
│ └─ script.js # JSON読み込み、目次生成、検索機能、各種UI動作のJavaScript
└─ data/
└─ ebypt_law.json # 法律の内容を記述したJSONファイル
JSONファイル (data/ebypt_law.json
) は、法律の内容を以下の階層構造で管理しています。
編集者は各セクションの意味と構造を理解した上で、必要に応じて内容を追加・修正してください。
-
title
: 法律全体のタイトル。例:"えびぷと国法律"
-
chapters
: 章の配列。各要素は1つの章を表します。
{
"chapterNumber": 1,
"chapterTitle": "第一章 総則",
"articles": [ ... ]
}
chapterNumber
: 章番号(整数)。例:1
chapterTitle
: 章のタイトル。例:"第一章 総則"
articles
: その章に含まれる条文(記事)の配列。
{
"articleNumber": 2,
"articleTitle": "国の理念・国名",
"paragraphs": [ ... ]
}
articleNumber
: 条文番号(整数)。例:2
articleTitle
: 条文のタイトル。例:"国の理念・国名"
paragraphs
: その条文に含まれる段落の配列。
{
"text": "段落1の本文。ここに法律の詳細な内容が記載されます。",
"evidence": "#XX (2025/XX/XX)",
"kingComment": "王のコメントの例。"
}
text
: 段落の本文。法律の内容や説明文を記述します。evidence
: 根拠となる情報(例: 放送回番号や日付)。例:"#XX (2025/XX/XX)"
kingComment
: 王によるコメント。例:"王のコメントの例。"
注意
- 各段落は必ずオブジェクト形式で記述してください。
- 空の段落や空のプロパティも許容されますが、必要な情報がない場合は空文字列 (
""
) を指定してください。- 新しい章、条文、または段落を追加する場合は、既存の構造に従って番号やタイトルを一貫して記述してください。
-
章・条文の順番
JSON内のchapters
配列の順番がそのままウェブサイト上の表示順になります。番号を振り直すときは、各chapterNumber
、articleNumber
も適切に更新してください。 -
段落の内容
各段落はオブジェクト形式になっているため、本文、根拠、王のコメントをそれぞれ編集できます。
例:{ "text": "ここに段落の本文を記述します。", "evidence": "#01 (2025/01/01)", "kingComment": "ここに王のコメントを記述します。" }
-
編集者同士の調整
多人数で編集する場合、番号や内容に重複がないか、または整合性が保たれているか確認してください。
可能であれば、GitHubなどのバージョン管理システムを活用し、プルリクエストを通じてレビューを行ってください。