ข้ามไปยังเนื้อหา

RFC 0001: การค้นพบแบบประกาศ ตัวระบุแบบมีโครงสร้าง และราคาอ้างอิงสำหรับ SKU.md

บันทึกข้อกำหนด

ร่างข้อเสนอที่ให้ร้านบนแพลตฟอร์มแบบโฮสต์ประกาศแคตตาล็อกนอก /sku.md ได้ ให้ GTIN, MPN, แบรนด์ และ SKU มีรูปแบบที่แยกวิเคราะห์ได้ และเพิ่มราคาอ้างอิงที่มีวันที่ซึ่งไม่ใช่ข้อเสนอขาย

SKU.md 1.0.0-beta ถูกออกแบบให้เล็กโดยตั้งใจ มีแคตตาล็อกรากที่ /sku.md เอกสารความรู้สินค้าที่เป็นตัวเลือก และลิงก์ Source บนข้อเท็จจริงทุกข้อ ขนาดที่เล็กทำให้ตรวจสอบง่าย แต่ก็เหลือช่องว่างสามข้อที่สำคัญต่อร้านค้าอิสระในการช้อปปิ้งผ่านบทสนทนากับ AI RFC 0001 คือร่างข้อเสนอเพื่ออุดช่องว่างเหล่านั้น

RFC นี้ไม่ได้เป็นส่วนหนึ่งของข้อกำหนดปัจจุบัน ยังไม่มีเครื่องมือตรวจสอบ เครื่องมือสร้าง CLI เครื่องมือ MCP หรือ Agent Skill ใดนำไปใช้ และแม้จะได้รับการยอมรับ เอกสาร 1.0.0-beta ทุกฉบับก็ยังใช้ได้ ฉบับเต็มอยู่ที่ RFC 0001

ข้อเสนอสามข้อแตกออกจากรูปแบบ SKU.md ปัจจุบัน ได้แก่ การค้นพบแบบประกาศ ตัวระบุแบบมีโครงสร้าง และราคาอ้างอิงที่มีวันที่
ข้อเสนอทั้งสามเป็นการเพิ่มเติมเท่านั้น แคตตาล็อกและเอกสารสินค้าในปัจจุบันยังใช้ได้ภายใต้ทุกข้อเสนอ

ช่องว่างที่หนึ่ง: ร้านบนแพลตฟอร์มแบบโฮสต์ใช้พาธรากไม่ได้

ข้อกำหนดกำหนดให้พาธของแคตตาล็อกเป็น /sku.md อย่างตรงตัว คู่มือ Shopify ของโครงการบันทึกไว้ว่าแพลตฟอร์มนี้จัดการรากของร้านเองและจำกัดคำนำหน้าของ App Proxy การโฮสต์ผ่านคลังไฟล์บนแพลตฟอร์มอื่นมักอาศัยการเปลี่ยนเส้นทางที่ทำให้พาธสุดท้ายเปลี่ยนไป ผู้ขายเหล่านี้มักให้บริการ Markdown เดียวกันจากพาธอื่นภายใต้ origin เดียวกันได้ แต่ในตอนนี้ยังไม่สอดคล้องกับข้อกำหนด

RFC ยังคงให้ /sku.md เป็นที่แรกที่ผู้อ่านตรวจ หากไม่มีไฟล์ที่นั่น ร้านสามารถประกาศ URL แคตตาล็อกอื่นภายใต้ origin เดียวกันผ่านคำใบ้หนึ่งในห้าแบบ ซึ่งผู้อ่านตรวจตามลำดับที่กำหนด

  1. พาธสงวน /.well-known/sku.md ซึ่งต้องลงทะเบียนกับ IANA ก่อน
  2. HTTP header Link ในการตอบสนองของหน้าแรก ที่มี rel="alternate", type="text/markdown" และ title="SKU.md"
  3. องค์ประกอบ HTML link บนหน้าแรกที่แสดงความสัมพันธ์เดียวกัน
  4. ลิงก์ที่มีข้อความ SKU.md catalog ในส่วน Product knowledge ของ llms.txt
  5. บรรทัดใน agents.md ที่ขึ้นต้นด้วย SKU.md catalog:

สองแบบสุดท้ายคือตัวชี้เดียวกับที่ คู่มือตัวชี้สำหรับการค้นพบ แนะนำอยู่ในตอนนี้ ร้านที่ใส่ไว้ตั้งแต่วันนี้จึงมีการประกาศพร้อมไว้แล้ว

คำใบ้ทุกแบบต้องอยู่ภายใต้ origin เดียวกัน และไฟล์ที่ถูกประกาศจะถูกตรวจสอบเหมือนแคตตาล็อกรากทุกประการ คำใบ้สองแบบที่ขัดกันจะถูกรายงานเป็นความขัดแย้ง RFC ยังขอให้ผู้อ่านให้ความสำคัญกับคำใบ้ที่ต้องควบคุมหน้าแรกได้ มากกว่าคำใบ้ในไฟล์ที่แพลตฟอร์มอาจสร้างใหม่ เพราะกฎพาธที่หลวมขึ้นทำให้เสี่ยงที่จะประกาศเนื้อหาที่ผู้ขายไม่ได้ควบคุมเป็นแคตตาล็อก

ช่องว่างที่สอง: ตัวระบุเป็นข้อความอิสระ

ระบบช้อปปิ้งใช้ GTIN, MPN, แบรนด์ และ SKU ของผู้ขาย ในการตัดสินว่าการกล่าวถึงสองครั้งหมายถึงสินค้าชิ้นเดียวกันหรือไม่ ใน 1.0.0-beta ข้อมูลเหล่านี้เขียนในส่วน Identifiers ได้ แต่เป็นข้อความอิสระเท่านั้น RFC เพิ่มรูปแบบที่มีโครงสร้างซึ่งตัวแยกวิเคราะห์อ่านได้โดยไม่ต้องเดา

## Identifiers
- GTIN: 00012345678905 [Source](https://www.example-outdoor.com/products/tent)
- MPN: UL2P-24 [Source](https://www.example-outdoor.com/products/tent)
- Brand: Example Outdoor Gear [Source](https://www.example-outdoor.com/pages/about)
- SKU: TENT-UL2P-GRN [Source](https://www.example-outdoor.com/products/tent)

GTIN, MPN, Brand, SKU และ ISBN เป็นป้ายกำกับสงวน GTIN ต้องผ่านการตรวจเลขตรวจสอบของ GS1 และรายการที่ขึ้นต้นด้วยป้ายกำกับสงวนแต่ไม่ผ่านกฎจะถือว่าไม่ถูกต้อง แทนที่จะถูกนับเป็นข้อความธรรมดาอย่างเงียบ ๆ หากตัวระบุต่างกันตามตัวเลือกสินค้า สามารถเติม for และชื่อตัวเลือกหลังค่าได้ เมื่อ GTIN แบบมีโครงสร้างขัดกับ Product JSON-LD หรือฟีด ผู้อ่านควรรายงานความขัดแย้งและพาผู้ซื้อไปยังหน้าเรียลไทม์ แทนที่จะเลือกค่าใดค่าหนึ่งเอง

ช่องว่างที่สาม: ไม่มีที่สำหรับราคาเลย

ในการช้อปปิ้งผ่านบทสนทนา ราคามักเป็นตัวกรองแรก 1.0.0-beta ไม่ให้ใส่ราคาเรียลไทม์ในไฟล์คงที่ และ RFC ยังคงกฎนี้ไว้ สิ่งที่เพิ่มคือส่วน Reference price ที่เป็นตัวเลือก พร้อมวันที่และแหล่งที่มา

## Reference price
- USD 349.00 as of 2026-08-11 [Source](https://www.example-outdoor.com/products/tent)
- USD 299.00 to 349.00 as of 2026-08-11 for all variants [Source](https://www.example-outdoor.com/products/tent)

สกุลเงินใช้รหัส ISO 4217 จำนวนเงินใช้จุดทศนิยมและไม่มีตัวคั่นหลักพัน และวันที่ as of ต้องไม่ช้ากว่าวันที่ Updated ของเอกสาร ส่วนนี้ห้ามใส่ราคาลด คูปอง ราคาสมาชิก ค่าจัดส่ง ภาษี หรือสต็อก ผู้อ่านที่ใช้ค่านี้ต้องแสดงเป็นราคาอ้างอิงพร้อมวันที่ ห้ามนำไปใช้กับตะกร้าหรือการชำระเงิน และควรถือว่าวันที่ที่เก่ากว่า 90 วันล้าสมัยแล้ว

นี่คือส่วนที่ถกเถียงได้มากที่สุดในร่าง เหตุผลคือผู้ช่วยที่กรองตามงบประมาณจะข้ามสินค้าที่ไม่มีข้อมูลราคาเลย ขณะที่ราคาอ้างอิงที่ระบุวันที่และแหล่งที่มาชัดเจนจะส่งผู้ซื้อไปยืนยันที่หน้าเรียลไทม์

สิ่งที่ RFC ยังไม่ครอบคลุม

แนวคิดบางข้อจากการทบทวนครั้งเดียวกันถูกเลื่อนไปยังข้อเสนอถัดไป ได้แก่ ส่วน Markets ในแคตตาล็อกรากสำหรับภูมิภาคที่ขาย ภาษา และสกุลเงิน ส่วน Brand และ Categories ที่เป็นตัวเลือกในแคตตาล็อกราก การแยกขีดจำกัดกราฟ 31 เอกสารออกจากข้อกำหนด โปรไฟล์การแยกวิเคราะห์แบบผ่อนปรนสำหรับผู้อ่าน และแนวทางว่าทรัพยากร Markdown สัมพันธ์กับ Sitemap และหน้าหลักอย่างไร RFC ระบุรายการเหล่านี้ไว้เพื่อให้การอภิปรายร่างนี้ไม่กระจัดกระจาย

คำถามที่ยังเปิดอยู่และวิธีแสดงความเห็น

ร่างตั้งคำถามไว้สี่ข้อ ควรยื่นลงทะเบียน well-known ตอนนี้ หรือรอให้มีการนำไปใช้แบบอิสระรายที่สองก่อน ควรคงคำใบ้ใน llms.txt และ agents.md ไว้หรือไม่ เมื่อแพลตฟอร์มอาจเขียนทับไฟล์เหล่านั้น เกณฑ์ 90 วันเหมาะกับหมวดสินค้าที่ราคาเปลี่ยนเร็วหรือไม่ และควรอนุญาต Brand ในแคตตาล็อกรากด้วยหรือไม่

แสดงความเห็นได้ที่ รีโพซิทอรีของโครงการ แผนการเปิดใช้กำหนดว่าก่อนรุ่นใดจะรับข้อเสนอนี้ ต้องมีแฟล็กพรีวิวในเครื่องมือตรวจสอบ ชุดทดสอบความสอดคล้องสำหรับรหัสปัญหาใหม่แต่ละรหัส ผู้ขายบนแพลตฟอร์มแบบโฮสต์อย่างน้อยหนึ่งรายที่เผยแพร่ผ่าน URL ที่ประกาศ และผู้อ่านอิสระอย่างน้อยหนึ่งรายที่อ่านมัน ระหว่างนี้ให้ดำเนินการตาม ข้อกำหนดปัจจุบัน