XML เป็น Haskell
วางเอกสาร XML เพื่อสร้างชนิดข้อมูล Haskell ที่ตรงกับโครงสร้าง
วิธีใช้ XML เป็น Haskell
- วางตัวอย่าง XML ที่สะท้อนข้อมูลจริง โดยควรกรอกฟิลด์ที่ไม่บังคับให้ครบด้วย
- ตั้งชื่อชนิดข้อมูลหลัก แล้วเลือกว่าจะให้สร้างโค้ดช่วยด้วยหรือสร้างเฉพาะชนิดข้อมูล
- คัดลอกโค้ด Haskell ที่สร้างไปยังโปรเจกต์ของคุณ
เกี่ยวกับ XML เป็น Haskell
การเขียนคลาสโมเดลสำหรับข้อมูล XML จำนวนมากด้วยตนเองเป็นงานน่าเบื่อ และพิมพ์ผิดได้ง่าย วางตัวอย่างที่นี่ แล้วเครื่องมือจะวิเคราะห์โครงสร้างว่ามีฟิลด์ใดบ้าง ฟิลด์ใดเป็นออบเจ็กต์หรืออาร์เรย์ และแต่ละค่ามีชนิดข้อมูลอะไร ผลลัพธ์เป็นชนิดข้อมูลระเบียนที่มีอินสแตนซ์ ToJSON และ FromJSON จาก Aeson
XML จะถูกแปลงเป็น JSON อย่างเดียวกับในเครื่องมือ XML เป็น JSON ของเรา @_ การตั้งตัวอักษร และเนื้อหาข้อความข้างหน้าคุณสมบัติ #text. ชนิดข้อมูล Haskell จะถูกสร้างจากผลลัพธ์นั้น ชื่อฟิลด์ในระเบียนจะมีคำนำหน้าจากชื่อชนิดข้อมูล เพราะ Haskell ไม่อนุญาตให้ระเบียนสองตัวในโมดูลเดียวกันใช้ชื่อฟิลด์ซ้ำกัน
การใช้โค้ดที่สร้างขึ้น
ใช้งาน decode จาก Data.Aeson เช่น decode text :: Maybe Root.
ฟิลด์ที่ไม่บังคับใช้ชนิดข้อมูล Maybe
คำถามที่พบบ่อย
โค้ด Haskell ที่สร้างต้องใช้ไลบรารีหรือส่วนประกอบใด?
ผลลัพธ์เป็นชนิดข้อมูลระเบียนที่มีอินสแตนซ์ ToJSON และ FromJSON จาก Aeson
ผมพิจารณา XML กับผลอย่างไร?
เปลี่ยน XML เป็น JSON ก่อน (เครื่องมือของเรา XML เป็น JSON ทําแบบนี้เหมือนกัน) แล้วใช้ decode จาก Data.Aeson เช่น decode text :: Maybe Root.
จัดการฟิลด์ที่ไม่บังคับและฟิลด์ที่ไม่มีอย่างไร?
ฟิลด์ที่ไม่บังคับใช้ชนิดข้อมูล Maybe
เครื่องมือดูมากกว่าหนึ่งระเบียนหรือไม่?
เครื่องมือรู้จักเฉพาะข้อมูลที่อยู่ในตัวอย่างของคุณเท่านั้น ฟิลด์ที่ไม่มีในตัวอย่างจะไม่ปรากฏในชนิดข้อมูลที่สร้างขึ้น และถ้าค่าในตัวอย่างเป็น null เครื่องมือจะระบุชนิดข้อมูลของค่านั้นไม่ได้ วางตัวอย่างที่กรอกข้อมูลให้ครบมากที่สุด หรือวางอาร์เรย์ที่มีหลายระเบียนแตกต่างกัน
ข้อมูล XML ของฉันถูกส่งไปยังเซิร์ฟเวอร์หรือไม่?
ไม่ เมื่อใช้ครั้งแรก เครื่องมือขนาดประมาณ 1 MB จะถูกดาวน์โหลดเข้าเบราว์เซอร์ จากนั้นทุกอย่างจะทำงานในเครื่องของคุณ