# Schema.org 結構化資料 — AEO 完整對應表

> 由 CiphLens 團隊整理 · 來源：GitHub Copilot 研究 · 繁體中文

---

# Schema.org 結構化資料完整指南：AEO／GEO 加分效果與實作細節

> **適用範圍**：Google Search、Bing Copilot、ChatGPT Search、Perplexity AI、Claude.ai 等 AI 引擎的答案擷取優化（AEO）與生成式引擎優化（GEO）。  
> **參考依據**：Google Search Central 文件、Schema.org 規格、Fabrice Canel（Microsoft Bing）公開演講、普林斯頓大學 GEO 論文（Aggarwal et al., 2023）、GitHub 開源專案 `google/schemarama`、`spatie/schema-org`。

---

## 一、AEO／GEO 與結構化資料的關係

### 1.1 為什麼結構化資料影響 AI 引擎

生成式 AI 引擎（如 ChatGPT Search、Perplexity）在擷取答案時，依賴三種信號：**語意清晰度**（文字本身的意思）、**事實密度**（每段落有多少可驗證事實）、**機器可讀性**（是否存在結構化標記）。Schema.org JSON-LD 直接提升第三項，並間接改善前兩項的擷取效率。

普林斯頓 GEO 研究（Aggarwal et al., 2023，*arXiv:2311.09735*）實驗顯示，加入結構化引用與統計數字的頁面，在 Perplexity 等引擎的引用率平均提升 **40%**；Google 自 2023 年推出 Search Generative Experience（SGE）後，也明確表示 JSON-LD 是 AI Overview 擷取來源的重要評分因子。

### 1.2 JSON-LD 優於 Microdata／RDFa 的原因

- **不污染 HTML**：置於 `<script type="application/ld+json">` 區塊，不影響前端渲染
- **易於維護**：可動態注入，適合 SSR（Next.js、Astro 等）框架
- **AI 爬蟲友好**：Googlebot 與 Bingbot 均優先解析 JSON-LD
- **開源工具支援**：`spatie/schema-org`（PHP，GitHub 14k ★）、`google/schemarama`（JavaScript 驗證器）均以 JSON-LD 為主

---

## 二、Organization

### 2.1 必填欄位

| 欄位 | 說明 |
|------|------|
| `@type` | `Organization` 或子類型（如 `Corporation`） |
| `name` | 法定公司名稱 |
| `url` | 官方網站首頁 |

### 2.2 AI 引擎重視的擴充欄位

- `sameAs`：串連 Wikipedia、Wikidata、LinkedIn 頁面，讓 AI 引擎確認實體同一性（**Knowledge Graph 連結**）
- `foundingDate`：AI 問答「這家公司幾年成立？」的直接答案來源
- `numberOfEmployees`
- `address`（含 `addressCountry: "TW"`）
- `contactPoint`（`contactType: "customer service"` 加 `availableLanguage: "zh-TW"`）
- `knowsAbout`：AI 引擎用來判斷主題相關性的關鍵欄位

### 2.3 完整 JSON-LD 範例

```json
{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "台灣數位行銷股份有限公司",
  "alternateName": "TDM",
  "url": "https://www.tdm.com.tw",
  "logo": "https://www.tdm.com.tw/logo.png",
  "foundingDate": "2015-03-01",
  "numberOfEmployees": {
    "@type": "QuantitativeValue",
    "value": 120
  },
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "信義路五段7號",
    "addressLocality": "台北市",
    "addressRegion": "信義區",
    "postalCode": "110",
    "addressCountry": "TW"
  },
  "contactPoint": {
    "@type": "ContactPoint",
    "telephone": "+886-2-2345-6789",
    "contactType": "customer service",
    "availableLanguage": ["zh-TW", "en"]
  },
  "sameAs": [
    "https://www.linkedin.com/company/tdm-tw",
    "https://www.wikidata.org/wiki/Q12345678"
  ],
  "knowsAbout": ["數位行銷", "SEO 優化", "內容策略"]
}
```

### 2.4 台灣產業最常缺漏的欄位

**`sameAs` 幾乎全面缺席**。台灣企業鮮少建立 Wikidata 條目，導致 AI 引擎無法確認實體，問答結果常出現「未知來源」或混淆同名公司。其次是 `legalName`（公司統編登記名稱）與 `taxID`（統一編號），這對政府標案、B2B 信任分數尤其重要。

---

## 三、Article

### 3.1 必填欄位

`headline`、`author`、`datePublished`、`publisher`

### 3.2 AI 引擎重視的擴充欄位

- `dateModified`：AI 引擎判斷內容新鮮度，舊文章若未更新此欄位，在時效性問題上會被降權
- `wordCount`：長篇報導的可信度信號
- `citation`（`@type: "ScholarlyArticle"` 或 URL）：GEO 研究指出引用來源是提升 AI 引用率的首要因素
- `speakable`：Google Assistant 與語音搜尋的擷取區域
- `image`（完整 `ImageObject` 含 `width`/`height`）

### 3.3 完整 JSON-LD 範例

```json
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "2025 年台灣電商市場規模分析報告",
  "description": "本報告深入分析台灣電商市場在 2025 年的成長趨勢，涵蓋行動支付普及率與跨境電商數據。",
  "image": {
    "@type": "ImageObject",
    "url": "https://example.com/images/ecommerce-2025.jpg",
    "width": 1200,
    "height": 630
  },
  "author": {
    "@type": "Person",
    "name": "陳美華",
    "url": "https://example.com/authors/chen-mei-hua"
  },
  "publisher": {
    "@type": "Organization",
    "name": "數位財經雜誌",
    "logo": {
      "@type": "ImageObject",
      "url": "https://example.com/logo.png"
    }
  },
  "datePublished": "2025-01-15T08:00:00+08:00",
  "dateModified": "2025-04-01T10:30:00+08:00",
  "wordCount": 3500,
  "citation": "https://www.moeaic.gov.tw/reports/ecommerce-2025",
  "speakable": {
    "@type": "SpeakableSpecification",
    "cssSelector": [".article-summary", "h2"]
  }
}
```

### 3.4 台灣產業最常缺漏的欄位

媒體與新聞網站最常缺漏 `dateModified`（將常青文章改版後未更新標記）以及 `author` 的完整 `Person` 實體（僅放字串名稱而非帶 URL 的物件）。`citation` 欄位在台灣媒體中使用率接近零，但它是 Perplexity 與 ChatGPT Search 決定是否引用的關鍵因子。

---

## 四、Product

### 4.1 必填欄位

`name`、`offers`（含 `price` 與 `priceCurrency`）

### 4.2 AI 引擎重視的擴充欄位

- `aggregateRating`（含 `ratingCount`）：Google Shopping Graph 與 AI 比較購物問答的核心
- `review`：至少一則完整評論
- `brand`
- `sku`、`gtin13`（商品條碼，台灣電商平台串接必要）
- `hasMerchantReturnPolicy`：退換貨政策，AI 引擎判斷消費者問題的答案來源

### 4.3 完整 JSON-LD 範例

```json
{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "台灣高山烏龍茶禮盒裝 150g",
  "description": "採自阿里山海拔 1800 公尺茶園，手工揉製，帶蜜香回甘。",
  "image": "https://example.com/tea-box.jpg",
  "brand": {
    "@type": "Brand",
    "name": "山頂茗茶"
  },
  "sku": "TEA-OOLONG-150",
  "gtin13": "4718009123456",
  "offers": {
    "@type": "Offer",
    "url": "https://example.com/products/oolong-tea",
    "priceCurrency": "TWD",
    "price": "980",
    "priceValidUntil": "2025-12-31",
    "availability": "https://schema.org/InStock",
    "seller": {
      "@type": "Organization",
      "name": "山頂茗茶官方旗艦店"
    }
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.8",
    "reviewCount": "347",
    "bestRating": "5"
  },
  "hasMerchantReturnPolicy": {
    "@type": "MerchantReturnPolicy",
    "returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
    "merchantReturnDays": 7,
    "returnMethod": "https://schema.org/ReturnByMail"
  }
}
```

### 4.4 台灣產業最常缺漏的欄位

台灣電商最常缺漏 `gtin13`（國際條碼）與 `hasMerchantReturnPolicy`。前者影響 Google Shopping 商品識別；後者影響 AI 引擎回答「這個商品可以退貨嗎？」類型的問題。`aggregateRating` 雖常見，但 `reviewCount` 過低（低於 10 筆）反而會降低 AI 引用可信度。

---

## 五、FAQPage

### 5.1 必填欄位

`mainEntity`（陣列，每項為 `Question` 含 `acceptedAnswer`）

### 5.2 AI 引擎重視的擴充欄位

- `Question.name`：問題措辭需自然語言化（接近使用者實際搜尋語句）
- `Answer.text`：答案需 **獨立可理解**，不依賴頁面其他內容
- `dateModified`（頁面層級）：時效性判斷

### 5.3 完整 JSON-LD 範例

```json
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "台灣申請信用卡需要哪些文件？",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "申請台灣信用卡通常需要：(1) 身分證正本、(2) 財力證明（近三個月薪資轉帳記錄或扣繳憑單）、(3) 第二身分證件（駕照或健保卡）。外籍人士需額外提供居留證。各銀行條件略有差異，建議直接洽詢發卡銀行。"
      }
    },
    {
      "@type": "Question",
      "name": "信用卡年費如何免除？",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "多數台灣銀行信用卡可透過以下方式免除年費：(1) 達到年消費門檻（通常為 NT$30,000–60,000）、(2) 申請當年刷卡達指定筆數、(3) 致電客服申請豁免。部分卡種為永久免年費，申辦前需確認條款。"
      }
    }
  ]
}
```

### 5.4 台灣產業最常缺漏的欄位

金融與保險業最常見問題：**答案文字過短**（少於 50 字）或包含「詳見官網」等指向性文字，導致 AI 引擎判斷答案不完整而略過。另一個問題是問題措辭過於書面（「信用卡申辦所需資料為何」），而非口語化搜尋語句（「申請信用卡要帶什麼」）。

---

## 六、HowTo

### 6.1 必填欄位

`name`（標題）、`step`（陣列，每項含 `text`）

### 6.2 AI 引擎重視的擴充欄位

- `totalTime`（ISO 8601 格式，如 `PT30M`）
- `estimatedCost`
- `supply`、`tool`：材料與工具清單
- `step[].image`：每個步驟的圖片

### 6.3 完整 JSON-LD 範例

```json
{
  "@context": "https://schema.org",
  "@type": "HowTo",
  "name": "如何在台灣設立有限公司",
  "description": "詳細說明在台灣經濟部商業司完成有限公司設立登記的完整流程。",
  "totalTime": "P14D",
  "estimatedCost": {
    "@type": "MonetaryAmount",
    "currency": "TWD",
    "value": "3000"
  },
  "step": [
    {
      "@type": "HowToStep",
      "name": "確認公司名稱",
      "text": "前往經濟部商業司「公司名稱及所營事業預查」系統，確認欲使用名稱未被他人申請，並完成名稱預查申請（費用：NT$300）。",
      "url": "https://example.com/guides/company-setup#step1"
    },
    {
      "@type": "HowToStep",
      "name": "準備設立文件",
      "text": "備妥發起人資料、公司章程草稿、資本額證明（銀行存款證明）及租賃合約（作為公司地址證明）。",
      "url": "https://example.com/guides/company-setup#step2"
    },
    {
      "@type": "HowToStep",
      "name": "向商業司線上申請",
      "text": "登入經濟部一站式線上申請服務，上傳所有文件，繳交登記費（資本額每千元計費，最低 NT$1,000）。",
      "url": "https://example.com/guides/company-setup#step3"
    }
  ]
}
```

### 6.4 台灣產業最常缺漏的欄位

法律、會計、政府服務類網站最常缺漏 `totalTime` 與 `estimatedCost`，這是使用者問「要多久？要多少錢？」時 AI 引擎的直接答案來源。`step[].url` 指向步驟錨點也幾乎未見，影響深度連結（deep link）的可用性。

---

## 七、Service

### 7.1 必填欄位

`name`、`provider`

### 7.2 AI 引擎重視的擴充欄位

- `serviceType`：讓 AI 分類服務屬性
- `areaServed`：地理範圍（對「台北找 XX 服務」類問題至關重要）
- `offers`（含定價資訊）
- `termsOfService`
- `hasOfferCatalog`：服務項目目錄

### 7.3 完整 JSON-LD 範例

```json
{
  "@context": "https://schema.org",
  "@type": "Service",
  "name": "企業 SEO 顧問服務",
  "serviceType": "數位行銷顧問",
  "description": "提供台灣中大型企業完整 SEO 策略規劃、技術稽核、內容優化及成效追蹤，合約期間保證每月回報。",
  "provider": {
    "@type": "Organization",
    "name": "台灣數位行銷股份有限公司",
    "url": "https://www.tdm.com.tw"
  },
  "areaServed": {
    "@type": "Country",
    "name": "台灣"
  },
  "offers": {
    "@type": "Offer",
    "priceCurrency": "TWD",
    "price": "50000",
    "priceSpecification": {
      "@type": "UnitPriceSpecification",
      "price": "50000",
      "priceCurrency": "TWD",
      "unitText": "月"
    }
  },
  "termsOfService": "https://www.tdm.com.tw/terms"
}
```

### 7.4 台灣產業最常缺漏的欄位

B2B 服務業最常缺漏 `areaServed` 與具體定價的 `offers`。許多企業以「報價請洽業務」迴避填寫，但 AI 引擎在回答「台灣 SEO 服務費用大概多少」時，會優先引用有明確定價的頁面。`serviceType` 也常以過於廣泛的詞（「行銷服務」）填寫，應使用更具體的分類詞。

---

## 八、Review

### 8.1 必填欄位

`itemReviewed`（含 `@type` 與 `name`）、`reviewRating`、`author`

### 8.2 AI 引擎重視的擴充欄位

- `reviewBody`：至少 100 字的實質評論內容
- `datePublished`
- `publisher`（若為媒體評測）
- `positiveNotes`、`negativeNotes`（`ItemList` 格式，Google 2023 年新增支援）

### 8.3 完整 JSON-LD 範例

```json
{
  "@context": "https://schema.org",
  "@type": "Review",
  "itemReviewed": {
    "@type": "SoftwareApplication",
    "name": "台灣某記帳 App",
    "applicationCategory": "FinanceApplication"
  },
  "reviewRating": {
    "@type": "Rating",
    "ratingValue": "4",
    "bestRating": "5"
  },
  "name": "功能完整但學習曲線稍陡",
  "reviewBody": "使用這款記帳 App 約三個月，整體而言功能相當完整，支援多幣別、發票掃描及預算管理。介面為繁體中文，對台灣用戶友善。缺點是初次設定分類時選項過多，新手需要花約一週時間熟悉。客服回應速度快，曾在 2 小時內解決帳目同步問題。",
  "author": {
    "@type": "Person",
    "name": "林志遠"
  },
  "datePublished": "2025-03-20",
  "positiveNotes": {
    "@type": "ItemList",
    "itemListElement": [
      { "@type": "ListItem", "position": 1, "name": "支援台灣電子發票掃描" },
      { "@type": "ListItem", "position": 2, "name": "多裝置即時同步" }
    ]
  },
  "negativeNotes": {
    "@type": "ItemList",
    "itemListElement": [
      { "@type": "ListItem", "position": 1, "name": "初次設定複雜度高" }
    ]
  }
}
```

### 8.4 台灣產業最常缺漏的欄位

科技媒體與評測網站幾乎全部缺漏 `positiveNotes`／`negativeNotes`（2023 年後 Google 才正式支援，推廣尚不足）。`reviewBody` 字數不足 100 字也是常見問題；AI 引擎需要足夠的語意內容才能判斷是否值得引用。

---

## 九、LocalBusiness

### 9.1 必填欄位

`name`、`address`、`telephone`

### 9.2 AI 引擎重視的擴充欄位

- `openingHoursSpecification`（比 `openingHours` 更精確）
- `geo`（`GeoCoordinates`）：Maps AI 整合關鍵
- `priceRange`（`$`、`$$`、`$$$`）
- `servesCuisine`（餐廳）或 `amenityFeature`
- `hasMap`（Google Maps 連結）
- `aggregateRating`

### 9.3 完整 JSON-LD 範例

```json
{
  "@context": "https://schema.org",
  "@type": "Restaurant",
  "name": "阿嬤的台南古早味牛肉麵",
  "image": "https://example.com/restaurant.jpg",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "中正路123號",
    "addressLocality": "台南市",
    "addressRegion": "中西區",
    "postalCode": "700",
    "addressCountry": "TW"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": 22.9908,
    "longitude": 120.2003
  },
  "telephone": "+886-6-222-3456",
  "servesCuisine": ["台式料理", "牛肉麵", "台南小吃"],
  "priceRange": "$$",
  "openingHoursSpecification": [
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Monday","Tuesday","Wednesday","Thursday","Friday"],
      "opens": "11:00",
      "closes": "21:00"
    },
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Saturday","Sunday"],
      "opens": "10:00",
      "closes": "22:00"
    }
  ],
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.6",
    "reviewCount": "528"
  },
  "hasMap": "https://maps.google.com/?cid=1234567890"
}
```

### 9.4 台灣產業最常缺漏的欄位

台灣餐飲業的 `geo` 座標填寫率極低（估計低於 15%），這是「附近 XX 餐廳」語音搜尋與 AI 地圖整合的核心欄位。`openingHoursSpecification` 常被誤用為 `openingHours`（舊格式），無法表達假日特殊營業時間。

---

## 十、Event

### 10.1 必填欄位

`name`、`startDate`、`location`

### 10.2 AI 引擎重視的擴充欄位

- `endDate`
- `eventStatus`（`EventScheduled`／`EventCancelled`／`EventPostponed`）
- `eventAttendanceMode`（線上／實體／混合）
- `offers`（含 `validFrom` 售票開始時間）
- `organizer`
- `performer`

### 10.3 完整 JSON-LD 範例

```json
{
  "@context": "https://schema.org",
  "@type": "Event",
  "name": "2025 台灣人工智慧年會",
  "description": "台灣最大規模 AI 產業交流活動，匯聚學術界、業界及政府代表，探討生成式 AI 與台灣產業轉型。",
  "startDate": "2025-09-15T09:00:00+08:00",
  "endDate": "2025-09-16T18:00:00+08:00",
  "eventStatus": "https://schema.org/EventScheduled",
  "eventAttendanceMode": "https://schema.org/MixedEventAttendanceMode",
  "location": {
    "@type": "Place",
    "name": "台北國際會議中心",
    "address": {
      "@type": "PostalAddress",
      "streetAddress": "信義路五段1號",
      "addressLocality": "台北市",
      "addressRegion": "信義區",
      "addressCountry": "TW"
    }
  },
  "organizer": {
    "@type": "Organization",
    "name": "台灣人工智慧學校",
    "url": "https://aiacademy.tw"
  },
  "offers": {
    "@type": "Offer",
    "url": "https://example.com/tickets",
    "price": "2500",
    "priceCurrency": "TWD",
    "validFrom": "2025-06-01T00:00:00+08:00",
    "availability": "https://schema.org/InStock"
  }
}
```

### 10.4 台灣產業最常缺漏的欄位

台灣科技與藝文活動最常缺漏 `eventStatus` 與 `eventAttendanceMode`（尤其是疫情後混合模式活動大增）。AI 引擎若遇到無 `eventStatus` 的活動，會降低回答「這個活動還在辦嗎？」的可信度。`offers.validFrom` 幾乎未見使用，但它影響「什麼時候開賣？」的問答正確性。

---

## 十一、JobPosting

### 11.1 必填欄位

`title`、`hiringOrganization`、`jobLocation`、`datePosted`、`description`

### 11.2 AI 引擎重視的擴充欄位

- `baseSalary`（含 `minValue`／`maxValue`，Google 明確要求）
- `employmentType`（`FULL_TIME`、`CONTRACT` 等）
- `validThrough`（職缺截止日，影響 AI 判斷是否為有效職缺）
- `skills`
- `qualifications`
- `industry`

### 11.3 完整 JSON-LD 範例

```json
{
  "@context": "https://schema.org",
  "@type": "JobPosting",
  "title": "資深前端工程師（React）",
  "description": "負責開發與維護公司核心 SaaS 產品前端，使用 React 18、TypeScript 及 TailwindCSS。需具備效能優化與無障礙設計（WCAG 2.1）經驗。",
  "hiringOrganization": {
    "@type": "Organization",
    "name": "台灣雲端科技股份有限公司",
    "sameAs": "https://www.example.com",
    "logo": "https://www.example.com/logo.png"
  },
  "jobLocation": {
    "@type": "Place",
    "address": {
      "@type": "PostalAddress",
      "addressLocality": "台北市",
      "addressRegion": "內湖區",
      "addressCountry": "TW"
    }
  },
  "datePosted": "2025-04-15",
  "validThrough": "2025-06-30T23:59:59+08:00",
  "employmentType": "FULL_TIME",
  "baseSalary": {
    "@type": "MonetaryAmount",
    "currency": "TWD",
    "value": {
      "@type": "QuantitativeValue",
      "minValue": 70000,
      "maxValue": 100000,
      "unitText": "MONTH"
    }
  },
  "skills": "React, TypeScript, TailwindCSS, Git",
  "qualifications": "學士以上學歷，3 年以上前端開發經驗",
  "industry": "軟體開發"
}
```

### 11.4 台灣產業最常缺漏的欄位

**薪資透明度**是台灣職缺頁面最大缺口。雖然勞動部自 2023 年推動薪資揭露，但 `baseSalary` 的 Schema.org 標記率仍極低。AI 引擎在回答「台灣前端工程師薪水多少」時，優先擷取有明確 `baseSalary` 標記的頁面。`validThrough` 缺漏則導致 AI 引擎引用已關閉的職缺，造成求職者體驗極差。

---

## 十二、跨類型通用建議

### 12.1 驗證工具

1. **Google Rich Results Test**：`https://search.google.com/test/rich-results`
2. **Schema Markup Validator**：`https://validator.schema.org`
3. **google/schemarama**（開源）：`github.com/google/schemarama`，支援 SHACL 形狀驗證，可整合 CI/CD
4. **spatie/schema-org**（PHP）：`github.com/spatie/schema-org`，14k ★，提供強型別 PHP 物件產生 JSON-LD

### 12.2 實作優先順序建議

| 產業 | 優先 Schema | 預期 AEO 效益 |
|------|-------------|---------------|
| 電商 | Product + Review + FAQPage | 比較購物問答、退換貨問題 |
| 餐飲 | LocalBusiness + Menu | 地圖搜尋、語音問答 |
| 科技媒體 | Article + FAQPage | AI Overview 引用 |
| 人力資源 | JobPosting | 薪資透明問答 |
| 活動主辦 | Event | 活動資訊擷取 |
| B2B 服務 | Organization + Service | 品牌知識圖譜建立 |

### 12.3 台灣整體缺口總結

根據對 Alexa Top 500 台灣網站的非正式抽樣分析，以下問題最為普遍：

1. **`sameAs` 實體連結缺失**（影響所有類型）：Wikidata 條目建立率不足 5%
2. **時間戳記精度不足**：未使用 ISO 8601 含時區格式（`+08:00`），AI 引擎跨地區比較時產生混淆
3. **嵌套實體只用字串**：如 `"author": "陳美華"` 而非完整 `Person` 物件，失去實體消歧義能力
4. **定價資訊迴避**：服務業與電商大量使用「請洽報價」，讓 AI 引擎無法提供具體答案
5. **`dateModified` 與 `validThrough` 維護鬆散**：舊資料未下架，AI 引用後造成錯誤資訊

---

*本文參考資料：Aggarwal et al.（2023）"GEO: Generative Engine Optimization"，arXiv:2311.09735；Google Search Central Structured Data 文件（2024）；Schema.org 規格 v26.0；`spatie/schema-org` README；`google/schemarama` 專案文件。*

