สัปดาห์ลดราคาสุดพิเศษClaude Skills — ลด 20%
Glossary

เข้าใจไฟล์ XML อย่างมืออาชีพ: โครงสร้าง, กรณีการใช้งาน และข้อดีหลัก

Powerdrill Bloom·
เข้าใจไฟล์ XML อย่างมืออาชีพ: โครงสร้าง, กรณีการใช้งาน และข้อดีหลัก

ไฟล์ XML จัดเก็บข้อมูลที่มีโครงสร้างในรูปแบบของแท็กที่ซ้อนกันและมนุษย์สามารถอ่านเข้าใจได้ง่าย แทนที่จะเป็นแถวและคอลัมน์ Microsoft อธิบายรูปแบบนี้ว่าเป็น "เทคโนโลยีที่ออกแบบมาเพื่อจัดการและแบ่งปันข้อมูลที่มีโครงสร้างในไฟล์ข้อความที่มนุษย์สามารถอ่านได้" คู่มือนี้จะครอบคลุมถึงวิธีการสร้างไฟล์เหล่านี้ แหล่งที่มา วิธีการที่สเปรดชีตจัดการกับไฟล์ประเภทนี้ และวิธีดึงคำตอบออกมาจากไฟล์ดังกล่าว

ไฟล์ XML คืออะไร

มันคือไฟล์ข้อความธรรมดา (plain text) ที่เก็บทั้งข้อมูลและชื่อของสิ่งที่ข้อมูลนั้นอธิบาย การส่งออกข้อมูลแบบคั่นด้วยจุลภาค (CSV) จะให้เพียงค่าต่างๆ และต้องพึ่งพาแถวส่วนหัวเพื่อทำความเข้าใจความหมาย แต่ไฟล์ที่มีแท็กจะเก็บความหมายไว้ในตัวเคียงข้างกับทุกๆ ค่าข้อมูล

การออกแบบดังกล่าวส่งผลลัพธ์ประการหนึ่งที่ควรทำความเข้าใจก่อนสิ่งอื่นใด รูปแบบนี้มีโครงสร้างเป็นลำดับชั้น (hierarchical) ดังนั้นระเบียนข้อมูลหนึ่งจึงสามารถมีระเบียนข้อมูลอื่นๆ ซ้อนอยู่ภายในได้ลึกหลายระดับ ในขณะที่สเปรดชีตมีโครงสร้างแบบแบนราบ (flat) และช่องว่างระหว่างโครงสร้างทั้งสองรูปแบบนี้เองที่เป็นจุดเริ่มต้นของความยุ่งยากส่วนใหญ่ในการใช้งานจริง

ภาพรวม ของ Microsoft ได้สรุปวัตถุประสงค์ไว้ในประโยคเดียวว่า รูปแบบนี้ "ช่วยลดความยุ่งยากในการกำหนด ส่งผ่าน ตรวจสอบความถูกต้อง และตีความข้อมูลระหว่างฐานข้อมูล แอปพลิเคชัน และองค์กรได้อย่างมาก"

โครงสร้างทำงานอย่างไร

องค์ประกอบและการซ้อนกัน

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

การซ้อนกันนี้คือหัวใจสำคัญ มันทำหน้าที่บันทึกความสัมพันธ์ที่ตารางแบบแบนราบสามารถแสดงได้ด้วยการทำซ้ำค่าต่างๆ ในแต่ละแถวเท่านั้น

แท็กที่กำหนดเอง

ชื่อแท็กไม่ได้ถูกกำหนดตายตัวโดยรูปแบบไฟล์ ดังที่ภาพรวมอย่างเป็นทางการระบุไว้ว่า "นักออกแบบแอปพลิเคชันสามารถสร้างแท็ก โครงสร้างข้อมูล และสกีมา (schema) ที่กำหนดเองได้"

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

สกีมาและการตรวจสอบความถูกต้อง

ไฟล์สกีมาที่แยกต่างหากจะเป็นตัวกำหนดกฎเกณฑ์ต่างๆ Microsoft ได้อธิบายการจับคู่นี้ไว้โดยตรงว่า ไฟล์ข้อมูล "จะประกอบด้วยแท็กที่กำหนดเองและข้อมูลที่มีโครงสร้าง" ส่วนไฟล์สกีมา "จะประกอบด้วยแท็กสกีมาที่บังคับใช้กฎเกณฑ์ต่างๆ เช่น ประเภทข้อมูลและการตรวจสอบความถูกต้อง"

สกีมาจะใช้นามสกุลไฟล์ .xsd นอกจากนี้ มาตรฐานดังกล่าวยังกำหนดไฟล์การแปลงข้อมูลที่มีนามสกุล .xslt ซึ่งอธิบายไว้ว่าเป็นไฟล์ที่ "ใช้เพื่อนำสไตล์ไปใช้และแปลงข้อมูล XML ให้อยู่ในรูปแบบการนำเสนอที่แตกต่างกัน"

ไฟล์เหล่านี้ใช้ทำอะไร

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

  • การเงินและการธนาคาร รูปแบบของรายการเดินบัญชี (statement) และข้อความการชำระเงินมักจะใช้รูปแบบแท็กมากกว่าการใช้ตัวคั่น
  • การออกใบแจ้งหนี้อิเล็กทรอนิกส์ (E-invoicing) ข้อกำหนดด้านใบแจ้งหนี้อิเล็กทรอนิกส์ของหลายประเทศระบุให้ใช้เอกสารที่มีแท็กเป็นเอกสารที่มีผลทางกฎหมาย
  • การส่งออกข้อมูลจากระบบ ERP และ HR ระบบองค์กรที่ใช้งานมานานมักจะส่งออกข้อมูลในรูปแบบนี้เป็นค่าเริ่มต้น
  • ฟีดข้อมูลสินค้าและเนื้อหา ฟีดแคตตาล็อกสินค้าค้าปลีกและรูปแบบการเผยแพร่ข้อมูลมักจะใช้โครงสร้างแบบแท็ก
  • การกำหนดค่าและเอกสาร Office รูปแบบไฟล์ Office ยุคใหม่คือไฟล์บีบอัด (zip) ที่รวบรวมส่วนประกอบต่างๆ ที่มีแท็กเข้าไว้ด้วยกัน

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

เปรียบเทียบกับรูปแบบแบนราบ

ไฟล์ที่มีแท็ก (.xml) CSV Parquet
รูปทรงข้อมูล ซ้อนกัน หลายระดับ แถวและคอลัมน์แบบแบนราบ แบนราบ เน้นคอลัมน์
ชื่อฟิลด์ แนบไปพร้อมกับทุกๆ ค่าข้อมูล มีเฉพาะในแถวส่วนหัวเท่านั้น จัดเก็บไว้ในเมทาดาตาของไฟล์
การตรวจสอบความถูกต้อง สามารถใช้ไฟล์สกีมาเพื่อบังคับใช้ประเภทข้อมูลได้ ไม่มีในตัว ประเภทข้อมูลจะถูกกำหนดไว้ในสกีมา
สามารถอ่านได้ในโปรแกรมแก้ไขข้อความ ได้ แต่อาจจะดูเยิ่นเย้อ ได้ ไม่ได้
ขนาดไฟล์ทั่วไปสำหรับข้อมูลชุดเดียวกัน ใหญ่ที่สุด ปานกลาง เล็กที่สุด
แหล่งที่มาทั่วไป ระบบองค์กรและมาตรฐานการแลกเปลี่ยนข้อมูล การส่งออกข้อมูลและรายงาน แพลตฟอร์มข้อมูล

หากคุณต้องทำงานกับรูปแบบไฟล์เหล่านี้เป็นประจำ บทความอธิบายเพิ่มเติมของเราเกี่ยวกับ ไฟล์ TSV และ ไฟล์ Parquet จะครอบคลุมเนื้อหาในส่วนของรูปแบบแบนราบในตารางข้างต้น

วิธีที่ Excel จัดการกับรูปแบบไฟล์นี้

นี่คือจุดที่นักวิเคราะห์ส่วนใหญ่ได้พบเจอกับรูปแบบไฟล์นี้ และเอกสารประกอบอย่างเป็นทางการก็อธิบายถึงสิ่งที่เกิดขึ้นได้อย่างชัดเจนเป็นพิเศษ

เส้นทางการนำเข้าไม่ได้อยู่บนริบบอนหลัก คำแนะนำใน การนำเข้าข้อมูล ของ Microsoft คือ "คลิก Developer > Import" หน้านี้ยังแนะนำผู้อ่านเกี่ยวกับขั้นตอนในการแสดงแท็บดังกล่าว เนื่องจากแท็บนี้จะถูกซ่อนไว้เป็นค่าเริ่มต้น

เวิร์กโฟลว์พื้นฐานมี "ห้าขั้นตอน" ตามคำอธิบายของ Microsoft คุณจะต้องเพิ่มไฟล์สกีมาลงในเวิร์กบุ๊ก จากนั้นจับคู่ (map) องค์ประกอบต่างๆ เข้ากับเซลล์หรือตาราง แล้วจึงนำเข้าไฟล์ข้อมูลและผูกองค์ประกอบเหล่านั้นเข้ากับเซลล์ที่จับคู่ไว้ จากนั้นคุณก็สามารถทำงานใน Excel และส่งออกข้อมูลที่แก้ไขแล้วกลับออกไปได้

มีพฤติกรรมการทำงานสองประการที่สำคัญกว่าส่วนอื่นๆ

Excel จะคาดเดาสกีมาให้หากคุณไม่ได้จัดเตรียมไว้ หากคุณนำเข้าข้อมูลโดยไม่ได้เพิ่มสกีมาก่อน "Excel จะพยายามอนุมานสกีมาให้คุณ" การคาดเดานั้นจะ "อ้างอิงตามแท็กที่กำหนดไว้ในไฟล์ข้อมูล XML"

จากนั้นผลลัพธ์การคาดเดาจะถูกจัดเก็บไว้ในเวิร์กบุ๊ก หน้านี้ยังระบุอีกว่า "คุณไม่สามารถส่งออกสกีมาที่ Excel อนุมานขึ้นมาเป็นไฟล์ข้อมูลสกีมา XML (.xsd) แยกต่างหากได้"

โครงสร้างที่ซ้อนกันจะถูกทำให้แบนราบเมื่อนำเข้าข้อมูล Microsoft อธิบายผลลัพธ์ของการเปิดไฟล์แบบอ่านอย่างเดียว (read-only) ว่า จะได้เป็น "ตารางสองมิติที่มีแถวและคอลัมน์ ซึ่งแสดงแท็ก XML เป็นหัวคอลัมน์" โดยองค์ประกอบราก (root element) จะ "ถูกใช้เป็นเหมือนชื่อเรื่อง"

การทำให้แบนราบนั้นคือสิ่งที่คุณต้องการสำหรับการวิเคราะห์ แต่ก็เป็นจุดที่ทำให้ความหมายสูญหายไปเช่นกัน โครงสร้างลำดับชั้นสามระดับจะกลายมาเป็นคอลัมน์ และความสัมพันธ์ระหว่างองค์ประกอบหลัก (parent) และองค์ประกอบย่อย (child) จะคงเหลืออยู่เพียงแค่ในวิธีการตั้งชื่อแท็กเท่านั้น

ข้อดีที่สำคัญ

ข้อมูลสามารถอธิบายตัวเองได้ ชื่อฟิลด์จะเดินทางไปพร้อมกับค่าข้อมูล ดังนั้นแม้ไฟล์จะถูกแยกออกจากเอกสารประกอบ ก็ยังคงสามารถตีความข้อมูลได้

การตรวจสอบความถูกต้องเป็นส่วนหนึ่งของระบบนิเวศนี้ สกีมาสามารถบังคับใช้ประเภทข้อมูลและฟิลด์ที่จำเป็นต้องมีก่อนที่ข้อมูลจะส่งถึงมือคุณ ซึ่งไม่มีการส่งออกข้อมูลแบบคั่นธรรมดาใดๆ ที่สามารถทำได้

มันสามารถข้ามขอบเขตระหว่างองค์กรได้ ดังที่ภาพรวมอย่างเป็นทางการระบุไว้ รูปแบบนี้ "เป็นไปตามแนวทางมาตรฐานอุตสาหกรรม และสามารถประมวลผลได้โดยฐานข้อมูลและแอปพลิเคชันที่หลากหลาย"

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

ข้อจำกัดที่ควรทราบ

ความเยิ่นเย้อของข้อมูล การทำซ้ำชื่อแท็กรอบๆ ทุกๆ ค่าข้อมูลทำให้ไฟล์มีขนาดใหญ่เมื่อเทียบกับข้อมูลชุดเดียวกันในรูปแบบแบนราบ

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

สเปรดชีตต้องการโครงสร้างที่แบนราบ ไม่ว่าจะเป็นตาราง Pivot, แผนภูมิ หรือสูตรคำนวณ ต่างก็ต้องการข้อมูลในรูปทรงสี่เหลี่ยมผืนผ้า ดังนั้นรูปทรงของข้อมูลจึงต้องเปลี่ยนไปก่อนที่จะเริ่มการวิเคราะห์

การนำเข้าอาจล้มเหลวในขั้นตอนการตรวจสอบความถูกต้อง Microsoft ระบุว่า "Excel จะแสดงกล่องโต้ตอบ XML Import Error เมื่อไม่สามารถตรวจสอบความถูกต้องของข้อมูลตาม XML Map ได้" ซึ่งจะทำให้คุณต้องกลับไปแก้ไขสกีมาก่อนจึงจะเริ่มใช้งานได้

การหาคำตอบโดยไม่ต้องวุ่นวายกับรูปทรงของข้อมูล

ในทางปฏิบัติ คำถามมักจะไม่ใช่ "ฉันจะเปิดไฟล์นี้อย่างไร" แต่เป็น "ฉันจะสร้างแผนภูมิจากไฟล์นี้ภายในบ่ายวันนี้ได้อย่างไร"

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

Powerdrill Bloom รองรับการอัปโหลดไฟล์ Excel, CSV, PDF และเอกสารต่างๆ ดังนั้นไฟล์ต้นทางที่มีแท็กควรได้รับการแปลงเป็น CSV หรือเวิร์กบุ๊กก่อน การเปิดไฟล์แบบอ่านอย่างเดียวของ Excel จะสร้างรูปทรงสี่เหลี่ยมผืนผ้าดังกล่าวขึ้นมาให้ทันที และขั้นตอนการแปลงข้อมูลในเครื่องมือจัดการข้อมูลของคุณก็ให้ผลลัพธ์แบบเดียวกัน

เมื่อข้อมูลแบนราบแล้ว การวิเคราะห์ก็จะเป็นเรื่องธรรมดาทั่วไป หน้า CSV AI assistant ได้อธิบายถึงแนวทางดังกล่าวไว้ หน้าข้อมูลราคาได้สรุปผลลัพธ์ไว้ว่า: ถามคำถามเกี่ยวกับข้อมูลของคุณและ "รับคำตอบที่อ้างอิงจากข้อมูลจริงพร้อมแผนภูมิ ตาราง และการส่งออกข้อมูล" หากคุณต้องการแผนภูมิโดยเฉพาะ คู่มือแนะนำของเราเกี่ยวกับ การเปลี่ยนไฟล์ CSV ให้เป็นแผนภูมิ จะครอบคลุมเนื้อหานี้ตั้งแต่ต้นจนจบ

มีการตัดสินใจหนึ่งประการที่ต้องพิจารณาอย่างรอบคอบก่อนที่คุณจะแปลงข้อมูล นั่นคือการเลือกความละเอียดของแถว (row grain) อย่างตั้งใจ การกำหนดให้หนึ่งแถวต่อหนึ่งรายการสินค้า กับหนึ่งแถวต่อหนึ่งใบแจ้งหนี้ จะตอบคำถามที่แตกต่างกัน

บทสรุป

รูปแบบไฟล์นี้มีความเยิ่นเย้อ สามารถอธิบายตัวเองได้ และมีโครงสร้างเป็นลำดับชั้น ซึ่งคุณสมบัติทั้งสามประการนี้สามารถอธิบายทุกสิ่งเกี่ยวกับการทำงานกับมันได้เป็นอย่างดี มันยอดเยี่ยมมากสำหรับการย้ายข้อมูลระหว่างองค์กร แต่ค่อนข้างใช้งานยากสำหรับการวิเคราะห์ข้อมูลภายในองค์กรเดียวกัน

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

มีไฟล์ประเภทนี้อยู่ในโฟลเดอร์ของคุณตอนนี้ใช่ไหม? ลองใช้ Powerdrill Bloom กับข้อมูลส่งออกที่ทำให้แบนราบแล้ว และดูแผนภูมิที่ได้ก่อนที่คุณจะลงทุนสร้างไปป์ไลน์ข้อมูล

คำถามที่พบบ่อย

ไฟล์ XML ใช้ทำอะไร?

มันถูกใช้เพื่อเคลื่อนย้ายข้อมูลที่มีโครงสร้างระหว่างระบบและองค์กร แหล่งที่มาทั่วไป ได้แก่ ข้อความของระบบธนาคาร, ใบแจ้งหนี้อิเล็กทรอนิกส์, การส่งออกข้อมูลจากระบบ ERP และ HR, ฟีดข้อมูลสินค้าค้าปลีก และส่วนประกอบภายในของเอกสาร Office

XML กับ CSV แตกต่างกันอย่างไร?

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

ฉันจะเปิดไฟล์ XML ใน Excel ได้อย่างไร?

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

ฉันจำเป็นต้องมีไฟล์สกีมาเพื่อใช้งานข้อมูลหรือไม่?

ไม่จำเป็น เอกสารประกอบของ Microsoft ระบุว่า Excel จะพยายามอนุมานสกีมาขึ้นมาจากแท็กเมื่อไม่มีการจัดเตรียมไว้ให้ สกีมาที่อนุมานขึ้นมานี้จะถูกเก็บไว้พร้อมกับเวิร์กบุ๊กและไม่สามารถส่งออกเป็นไฟล์ .xsd แยกต่างหากได้

XSLT คืออะไร?

Microsoft อธิบายว่ามันคือมาตรฐานการแปลงข้อมูลที่ถูกกำหนดขึ้นมาควบคู่กับรูปแบบข้อมูล โดยจะใช้ไฟล์ .xslt เพื่อ "นำสไตล์ไปใช้และแปลงข้อมูล XML ให้อยู่ในรูปแบบการนำเสนอที่แตกต่างกัน"