PlusMagi's Blog By Pitt Phunsanit Backend,Business,Database Perceivable (รับรู้ได้): Text Alternatives (คำบรรยายภาพ alt, Transcripts สำหรับวิดีโอและเสียง)

Perceivable (รับรู้ได้): Text Alternatives (คำบรรยายภาพ alt, Transcripts สำหรับวิดีโอและเสียง)

ในฐานะ Senior Architect ที่เชี่ยวชาญด้านระบบข้อมูล การออกแบบฐานข้อมูลที่คำนึงถึงหลักการเข้าถึง (Accessibility) ถือเป็นองค์ประกอบสำคัญที่ไม่อาจมองข้ามได้ ตามหลักเกณฑ์ WCAG (Web Content Accessibility Guidelines) หลักการ ‘Perceivable’ (รับรู้ได้) กำหนดให้เนื้อหาต้องสามารถรับรู้ได้โดยผู้ใช้ทุกกลุ่ม รวมถึงผู้พิการทางสายตา ซึ่งจำเป็นต้องมี Text Alternatives เช่น Alt Text สำหรับรูปภาพ และ Transcripts สำหรับวิดีโอหรือเสียง

สำหรับระบบที่ใช้ PostgreSQL การจัดเก็บข้อมูลเหล่านี้อย่างเป็นระบบและมีโครงสร้างที่ชัดเจนจึงเป็นหัวใจสำคัญ บทความนี้จะเจาะลึกถึงวิธีการใช้ PostgreSQL เพื่อจัดการและจัดเก็บ Metadata ที่จำเป็นต่อการทำให้เนื้อหามีความเข้าถึงสูงสุด

การออกแบบ Schema สำหรับ Text Alternatives (Alt Text)

Alt Text คือคำบรรยายข้อความสั้นๆ ที่อธิบายเนื้อหาของรูปภาพให้กับโปรแกรมอ่านหน้าจอ (Screen Reader) การจัดเก็บใน PostgreSQL ควรมีการแยกคอลัมน์ที่ชัดเจนเพื่อรองรับความสัมพันธ์ระหว่างเนื้อหา (Content) และคำบรรยาย (Alternative Text) เพื่อให้ง่ายต่อการเรียกใช้และตรวจสอบความถูกต้องของข้อมูล

SQL

-- สร้างตารางสำหรับเก็บข้อมูลสื่อและคำบรรยายภาพ (Alt Text) ที่เกี่ยวข้อง<br>CREATE TABLE media_assets ( <br>    asset_id SERIAL PRIMARY KEY, <br>    content_type VARCHAR(50) NOT NULL, <br>    file_path VARCHAR(255) UNIQUE NOT NULL, <br>    alt_text TEXT <br>);<br><br>-- ตัวอย่างการแทรกข้อมูล Alt Text<br>INSERT INTO media_assets (content_type, file_path, alt_text) VALUES ('image', '/img/product-a.jpg', 'ภาพผลิตภัณฑ์ A: รองเท้าหนังสีดำ');<br>INSERT INTO media_assets (content_type, file_path, alt_text) VALUES ('image', '/img/chart-b.png', 'กราฟยอดขายไตรมาส 1 แสดงการเติบโต 15%');

การจัดการ Transcripts สำหรับเนื้อหามัลติมีเดีย

สำหรับเนื้อหาวิดีโอหรือพอดแคสต์ การมี Transcript (ข้อความถอดเสียง) เป็นสิ่งจำเป็นอย่างยิ่งในการรองรับผู้ใช้ที่อาจไม่สามารถรับฟังเสียงได้ หรือผู้ที่ต้องการค้นหาข้อมูลเฉพาะส่วน การใช้ PostgreSQL ร่วมกับประเภทข้อมูล TEXT หรือ JSONB จะช่วยให้เราจัดเก็บข้อความถอดเสียงที่มีความยาวได้อย่างมีประสิทธิภาพ

SQL

-- ตัวอย่างการแทรกข้อมูล Transcript สำหรับวิดีโอ<br>INSERT INTO media_assets (content_type, file_path, alt_text) VALUES ('video', '/vid/intro.mp4', 'วิดีโอแนะนำการใช้งาน');<br><br>-- ในกรณีที่ต้องเก็บ Transcript ที่ยาวมาก อาจใช้ตารางแยก หรือใช้ JSONB สำหรับ Metadata<br>INSERT INTO video_transcripts (video_id, transcript_text) VALUES (101, 'การเริ่มต้นใช้งานระบบนี้ทำได้ง่ายๆ เพียง 1. เข้าสู่ระบบ 2. กรอกข้อมูล 3. กดบันทึก');

บทสรุป: PostgreSQL กับมาตรฐาน WCAG

การทำให้เนื้อหามีความเข้าถึง (Perceivable) ไม่ใช่เพียงแค่การเพิ่ม Alt Text หรือ Transcript เท่านั้น แต่คือการที่ระบบฐานข้อมูลอย่าง PostgreSQL ถูกออกแบบมาให้รองรับการจัดเก็บ Metadata เหล่านี้อย่างเป็นระเบียบและสามารถเรียกใช้ได้ง่าย การใช้โครงสร้างตารางที่เหมาะสมและการกำหนดประเภทข้อมูลที่ถูกต้อง (เช่น TEXT) จะช่วยให้มั่นใจได้ว่าข้อมูลที่ถูกจัดเก็บนั้นจะเป็นรากฐานที่แข็งแกร่งสำหรับการปฏิบัติตามมาตรฐาน WCAG และมอบประสบการณ์ที่ดีให้กับผู้ใช้ทุกคน