{
  "$schema": "https://pingfanfan.github.io/OpenWebsite/schema/knowledge-page.schema.json",
  "format": "knowledge-page",
  "id": "information-architecture",
  "url": "https://pingfanfan.github.io/OpenWebsite/docs/information-architecture/",
  "rawUrl": "https://pingfanfan.github.io/OpenWebsite/raw/information-architecture.md",
  "apiUrl": "https://pingfanfan.github.io/OpenWebsite/api/pages/information-architecture.json",
  "schemaUrl": "https://pingfanfan.github.io/OpenWebsite/schema/knowledge-page.schema.json",
  "title": "信息架构",
  "summary": "定义站点层级、目录布局、页面职责和内容粒度。",
  "lastUpdated": "2026-03-12",
  "version": "v1.0.0",
  "audience": ["ai-agent", "crawler", "developer", "human"],
  "sourceOfTruth": "站点目录结构与主题边界",
  "tags": ["architecture", "directory-model", "content-granularity"],
  "sections": [
    {
      "id": "goals",
      "title": "设计目标",
      "summary": "信息架构需要优先保证知识单元稳定，而不是导航视觉效果。",
      "content": [
        "每个页面聚焦一个核心问题，避免多主题混装。",
        "每个 section 应能被单独引用，而不失去上下文。",
        "抓取系统应能通过有限入口发现全部页面。"
      ]
    },
    {
      "id": "directory-model",
      "title": "目录模型",
      "summary": "目录按格式角色分层，而不是按视觉组件分层。",
      "content": [
        "docs 目录提供 HTML 文档入口，raw 目录提供 Markdown 原文。",
        "api/pages 目录提供结构化 JSON，schema 目录提供校验合同。",
        "llms.txt 和 sitemap.xml 负责全站发现。"
      ]
    },
    {
      "id": "page-types",
      "title": "页面类型",
      "summary": "区分目录页、主题页、schema 页和索引文件可以降低结构漂移。",
      "content": [
        "Hub 页面负责发现和路由，不堆积大量事实。",
        "Document 页面负责一个稳定知识问题，并包含元数据与 sections。",
        "Index 文件负责枚举入口，例如 llms.txt 和 sitemap.xml。"
      ]
    },
    {
      "id": "content-granularity",
      "title": "内容粒度",
      "summary": "页面内部需要人为设计 chunk 边界，不能完全交给后端索引系统。",
      "content": [
        "标题层级尽量不超过三级，以降低切块歧义。",
        "每个 section 先给摘要，再给正文和例子。",
        "表格和代码块应有前导说明，避免脱离上下文后失真。"
      ]
    },
    {
      "id": "change-policy",
      "title": "变更策略",
      "summary": "结构设计需要考虑链接和索引的长期稳定性。",
      "content": [
        "页面主题不变时保持原 URL，不轻易改 slug。",
        "仅当知识边界断裂时才引入新页面或新版本路径。",
        "内容调整优先通过 lastUpdated 和 version 反映。"
      ]
    }
  ],
  "relatedPages": [
    {
      "id": "url-conventions",
      "title": "URL 规范",
      "url": "https://pingfanfan.github.io/OpenWebsite/docs/url-conventions/"
    },
    {
      "id": "page-template",
      "title": "页面模板",
      "url": "https://pingfanfan.github.io/OpenWebsite/docs/page-template/"
    },
    {
      "id": "retrieval-contract",
      "title": "检索与抓取契约",
      "url": "https://pingfanfan.github.io/OpenWebsite/docs/retrieval-contract/"
    }
  ]
}
