Navigation






บทที่ 1 เริ่มต้นเรียนรู้เกี่ยวกับ HTML และ XML

 

        Extensible Markup Language หรือ XML ถูกกำหนดขึ้นโดยกลุ่มทำงาน XML ของสถาบัน World Wide Web Consortium (W3C) โดยกลุ่มนี้ได้นิยามของ XML ไว้ว่า Extensible Markup Language หรือ XML เป็นชดเชยของภาษา SQL โดยมีจุดมุ่งหมาย คือ สามารถใช้บริการรับข้อมูล และประมวลผลข้อมูลบนเครือข่ายอินเตอร์เน็ต ซึ่งในปัจจุบันทำได้โดยใช้ภาษา HTML เท่านั้น XML ถูกออกแบบออกมาให้ง่ายต่อการประมวลผลร่วมกันทั้ง SGML และ HTML

         จะเห็นได้ว่า XML คือ ภาษา Markup ที่ถูกออกแบบมาให้ใช้เฉพาะสำหรับการรับส่งข้อมูลข่าวสารบาเครือข่ายอินเตอร์เน็ต เช่นเดียวกับ HTML ซึ่งเป็นภาษาที่เป็นมาตรฐานที่ใช้ในการสร้างเว็บเพจ ซึ่งในเมื่อมีการใช้ HTML ในการสร้างเว็บเพจอยู่แล้ว ทำไมจึงต้องใช้ XML ในการสร้างเว็บเพจอีก XML มีอะไรพิเศษกว่า HTML ข้อสงสัยเหล่านี้คำตอบจะอยู่ใน บทที่ 1 นี้ทั้งหมด

 

ส่วนประกอบสำคัญของ XML

 

        Element ของ HTML ถูกใช้ในการสร้างเว็บเพจซึ่งเป็นส่วนประกอบหลักของเอกสารเว็บเพจทั่วไป ได้แก่ Heard <H>, Paragrahs<P>,Image<IMG>,Link <a href> ตัวอย่างของเว็บไซต์ส่วนตัวที่มี Element ดังกล่าว คือ


 

 

 

        เมื่อรันบน Internet Explorer 6.0 จะได้ผลลัพธ์ดังภาพแต่ละ Element จะประกอบด้วยแท็กเริ่มต้น (Start Tag) ซึ่งจะเริ่มต้นด้วยเครื่องหมาย < และตามด้วยเครื่องหมาย > ภายในคือ ชื่อของ Element และข้อมูลของเอกสารต่าง ๆ และ Element ส่วนใหญ่ต้องปิดด้วย แท็กปิดท้าย (End Tag) ที่จะเหมือนกับแท็กเริ่มต้น แต่จะต่างกันตรงที่มีสัญลักษณ์ แสลซ หรือ (Slash) “/” แล้วตามด้วยชื่อของ Element เนื้อหาที่บรรจุอยู่ภายใน Element คือ ข้อความระหว่างแท็กเริ่มต้นและแท็กปิดท้าย ตัวอย่างเช่น

 

 

ตัวอย่างเอกสาร HTML ข้างต้นจะประกอบด้วย Element ต่อไปนี้

 

ชื่อ Element             ความหมายของ Element

html                         ประกาศชนิดเอกสารเป็น HTML

head                        ข้อมูลในส่วนของหัวเรื่อง

title                          หัวเรื่องของเอกสารซึ่งปรากฏที่ Title Barของเบราเซอร์
body                        ส่วนเนื้อหาหลักของเอกสาร
h1                            กำหนดหัวเรื่องที่มีระดับความสำคัญสูงสุด
h2                           กำหนดหัวเรื่องที่มีระดับความสำคัญระดับที่  2
p (Paragraph)           กำหนดข้อความในลักษณะย่อหน้า
a                             การกำหนดจุดลิงค์ (Link) ไปที่ต่าง ๆ
img                         แสดงรูปภาพ
b                             การกำหนดให้ขึ้นบรรทัดใหม่

 

        โปรแกรมเบราเซอร์ที่ใช้แสดงผลเอกสาร HTML เหล่านี้ จะรู้จัก Element มาตรฐานของ HTML รวมทั้งรู้วิธีการจัดรูปแบบ และแสดงผลเอกสาร เช่น เบราเซอร์จะแสดงผล H1 โดยใช้ตัวอักษรขนาดใหญ่สุด และ a ถูกแปลงให้เป็นจุดลิงค์ที่มีการขีดเส้นใต้ที่เชื่อมโยง เป็นต้น

 

ข้อด้อยของ HTML

 

        ถึงแม้ว่า Element ของ HTML จะมีการพัฒนากันมาอย่างยาวนานแต่ HTML ก็ยังไม่สามารถกำหนดรูปแบบของเอกสารที่มีรูปแบบอันหลากหลาย

ดังตัวอย่างต่อไปนี้ที่ไม่สามารถอธิบายด้วยภาษา HTML ได้


       -  เอกสารที่ใช้ Element มาตรฐานของ HTML ไม่ได้ ได้แก่ ตัวโน้ตของดนตรีหรือสมการทางคณิตศาสตร์

       -  ฐานข้อมูล เช่น บัญชีรายการ (Inventory) ของชื่อลูกค้า เช่น การที่สามารถใช้เอกสาร HTML ในการจัดเก็บและแสดงผลในฐานะข้อมูลแบบคงที่ เช่น รายการแสดงรายละเอียดของลูกค้าแต่ถ้าต้องการจัดเรียง กรอง ค้นหา และทำงานกับฐานข้อมูลด้วยวิธีการอื่น ๆ HTML จะไม่สามารถทำเช่นนั้นได้้

       -   เอกสารที่ต้องการให้เป็นระบบโครงสร้างลำดับชั้นเหมือนต้นไม้ เช่น ต้องการแยกข้อมูลลูกค้าออกเป็นหมวดหมู่ เช่น ลูกค้าขาประจำ กับ ลูกค้าขาจร โปรแกรมจะใช้โครงสร้างนี้เพื่อการจัดเก็บข้อมูลแบบสารบัญ และโครงสร้างโปรแกรมที่มีระดับของรายละเอียดหลายระดับ เพื่อแบ่งข้อมูลออกเป็นส่วนๆ
และทำงานร่วมกับวิธีการอื่น ๆ ได้ แต่เป็น HTML ไม่สามารถทำได้เลย ยกตัวอย่างเช่น head <H> สามารถกำหนดให้กับข้อความที่อยู่ใน Element เท่านั้น เช่น <H2>Hello World</H2>

 

         การไม่สามารถซ้อนข้อความและ Element ให้เป็นส่วนหนึ่งของเอกสารภายในส่วนหัวเรื่อง <H> ได้ เพราะฉะนั้น Element เหล่านี้ไม่สามารถใช้โครงสร้างที่เป็นลำดับชั้นของเอกสารได้อย่างชัดเจน วิธีการทำงานตามคำสั่งเหล่านี้ คือ XML

 

วิธีการทำงานของ XML


         XML คือ การลดทอนไวยากรณ์ให้น้อยลง เมื่อมีการสร้างเอกสาร XML แทนที่จะถูกจำกัดในการใช้ Element แต่ตรงกันข้าม การสร้างเอกสาร XML จะสามารถสร้าง Element ได้เอง และสามารถที่จะกำหนดชื่อของ Element เหล่านั้นได้ตามต้องการเพราะฉะนั้นจึงหมายถึง การขยายขอบเขตการใช้งานของ Markup (Extensible Markup Language) ในเมื่อเป็นเช่นนั้นจะสามารถบรรยายเอกสารได้ทุกรูปแบบอย่างแท้จริง ตั้งแต่โน้ตดนตรีถึงระบบฐานข้อมูลยกตัวอย่าง เช่น สามารถอธิบายรายละเอียดชื่อของลูกค้าด้วยเอกสาร XML ต่อไปนี้

 

<?xml version = “10” ?>
<INVENTORY>
            <Customer>
                        <Name>Mr.Jaturoun</Name>
                        <Lastname>Tangkeaw</Lastname>
                        <Address> 16/15 Bangkok 10230 </Address>
                        <Telephone>098880445</Telephone>
            </Customer>
<Customer>
                        <Name>Miss.siriporn</Name>
                        <Lastname>Tome</Lastname>
                        <Address> 69/24 Bangkok 10230 </Address>
                        <Telephone>063147584</Telephone>
            </Customer>
<Customer>
                        <Name>Mr.Chiyo</Name>
                        <Lastname>Hohew</Lastname>
                        <Address> 15/68 Bangkok 10230 </Address>
                        <Telephone>023936984</Telephone>
            </Customer>
</INVENTORY>

 

         ในที่นี้จะเห็นได้ว่ามีการกำหนด Element ขึ้นมาเอง ได้แก่ INVENTORY, Customer, Name, Lastname, Address, Telephone ซึ่งไม่ได้เป็นส่วนหนึ่งของข้อกำหนดของ XML ทำให้สามารถเลือกชื่อเหมาะสมในการใช้งานได้ตามต้องการ
         จากตัวอย่างเอกสาร XML ที่ผ่านมา จะเป็นได้ว่า XML มีลักษณะโครงสร้างเป็นลำดับชั้นเหมือนกับต้นไม้ โดยมี Element ซ้อนกันอยู่อย่างสมบูรณ์ภายใน Element อื่น ๆ และ Element ที่อยู่ด้านบนสุดซึ่งในตัวอย่างนี้คือ INVENTORY จะถูกเรียกว่า Document Element หรือ Root Element ซึ่งจะเป็นตัวที่ใช้เก็บ Element อื่น ๆ ทั้งหมดไว้ สามารถเขียนโครงสร้างของเอกสาร XML ออกมาได้ ดังนี้ี้

 

 

เพราะฉะนั้นจะสามารถใช้เอกสาร XML ในการอธิบายโครงสร้างเอกสารแบบเป็น

ลำดับชั้นได้อย่างง่ายดาย เช่น แบ่งประเภทลุกค้าออกตามที่อยู่เป็นต้น

 

การเขียนเอกสาร XML


         เนื่องจากไม่สามารถจำกัดความ Element ของ XML ได้จึงดูเหมือนไม่มี
มาตรฐานที่แน่นอนในการเขียนเอกสาร XML แต่ที่จริงแล้ว XML ก็มีไวยากรณ์

ที่เคร่งครัดซึ่งสิ่งที่แตกต่างจาก HTML คือ ทุก Element จะต้องมีแท็กเริ่มต้น

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

 

การแสดงผลเอกสาร XML


         แอกสาร HTML จะมี Element ที่ตายตัว และเป็นมาตรฐานทำให้เบราเซอร์ แสดงผลของเอกสารได้อย่างถูกต้องเช่นเบราเซอร์สามารถบอกและแสดงผลได้ว่า H2 คือ ข้อความที่มีระดับความสำคัญระดับ 2 ที่เป็นเช่นนี้ก็เพราะว่า H2 เป็นมาตรฐานหนึ่งของ HTML เพราะฉะนั้นจะทำอย่างไรให้โปรแกรมเบราเซอร์
หรือโปรแกรมอื่น ๆ สามารถควบคุมการแสดงผล Element ในเอกสาร XML ที่ออกแบบและสร้างขึ้นมาเองได้บ้าง เช่น INVENTORY หรือ Customer ที่สร้างขึ้นในตัวอย่างที่ผ่านมาแล้ว
         ซึ่งมีวิธีพื้นฐานอยู่ 3 วิธีที่บอกให้โปรแกรมเบราเซอร์ สามารถควบคุม

และแสดงผล Element แต่ละตัวที่สร้างขึ้นมาได้แก่

         - การลิงค์ (Link) ด้วย Style Sheet  สไตล์ชีท (Style Sheet) คือ ไฟล์ที่แยกออกมา ซึ่งจะจัดเก็บคำสั่งเพื่อจัดรูปแบบของ Element แต่ละส่วน โดยที่สามารถใช้ Cascading Style Sheet (CSS) ซึ่งมีการใช้งานร่วมกับ HTML หรือ Extensible Style Sheet (XSL) ซึ่งมีประสิทธิภาพสูงกว่า CSS เพราะว่าออกแบบมาเพื่อใช้กับ XML โดยเฉพาะ

         - การเชื่อมโยงด้วยข้อมูล (Data Binding) วิธีการนี้จะสามารถ สร้างเอกสาร HTML ขึ้นมาแล้วทำการเชื่อมโยงเอกสาร XML เข้าด้วยกัน และเชื่อม HTML Element มาตรฐานในเพจดังกล่าว เช่นเชื่อม TABLE ไปยัง XML Element ซึ่งเอกสาร HTML จะแสดงผลข้อมูล โดยอัตโนมัติจาก XML Element ที่เชื่อมต่อไว้

         - การใช้สคริปต์ (Script) วิธีการนี้จะคล้ายกับวิธีการเชื่อมโยงด้วยข้อมูล (Data Binding) คือ สร้างเอกสาร HTML เชื่อมกับเอกสาร XML เพื่อการเข้าถึงและแสดงผล XML Element แต่จะต่างกันตรงที่จะใช้การเขียนโค้ดของสคริปต์ ได้แก่ Javascript หรือ VBScript โปรแกรมเบราเซอร์จะแสดงผลเอกสาร XML ในรูปแบบเอกสารเชิงวัตถุ (Document Object Model) หรือ DOM ซึ่งได้จัดเตรียมชุดของ Object, Properties และ Method ไว้มากมายเพื่อให้โค้ดของสคริปต์สามารถใช้ในการเข้าถึง, จัดการ และแสดงผล XML Element ได้

 

มาตรฐานของโปรแกรมประยุกต์ XML


         
การใช้ภาษา XML นั้น ไม่สามารถใช้ได้โดยลำพังแต่จะต้องมีหลายภาษา หรือหลายโปรแกรมเข้ามาเกี่ยวข้อง เพื่อให้สามารถกำหนด Element พร้อมทั้งโครงสร้างของเอกสาร XML ได้โดย Element ต่าง ๆ และโครงสร้างของเอกสารรวมกัน เรียกว่า โปรแกรมประยุกต์ XML หรือ Vocabulary ของ XML
         โปรแกรมประยุกต์ XML คือ คำจำกัดความทั่วไปของเอกสาร Document Type Declaration (DTD) ซึ่งจะเป็นส่วนประกอบหนึ่งของเอกสาร HTML โดย DTD จะเป็นเสมือนกับฐานข้อมูลนั่นคือ มันจะทำหน้าที่เก็บคำจำกัดความและกำหนดชื่อของ Element ต่าง ๆ ที่ใช้ในเอกสาร XML, เป็นที่แสดงคำสั่งของ Element, เป็นที่กำหนด Attribute ของ Element และลักษณะเฉพาะอื่นๆ ของเอกสาร ในโปรแกรมประยุกต์ XML จะต้องมี DTD ในเอกสาร เพื่อใช้ควบคุม Element และโครงสร้างเพื่อบังคับให้ตรงตามมาตรฐาน
         ประโยชน์ของการใช้มาตรฐานของโปรแกรมประยุกต์ XML ในการพัฒนาเอกสาร XML คือ สามารถแบ่งเอกสารออกเป็นส่วน ๆ ให้กับผู้ใช้โปรแกรมประยุกต์ทั้งหมด สามารถประมวลผลพร้อมทั้งแสดงผล โดยการใช้โปรแกรมที่ถูกพัฒนาบนพื้นฐานของโปรแกรมประยุกต์ XML

 

การพัฒนาเอกสารด้วยโปรแกรมประยุกต์ XML


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

         - Extensible Style Sheet Language (XSL) ทำให้สร้างเอกสาร Style Sheet ที่มีสมรรถภาพสูงได้โดยการใช้ไวยากรณ์

         - XML Schema ทำให้สามารถเขียนรายละเอียดแบบแผนสำหรับเอกสาร โดยใช้ไวยากรณ์ของ XML ซึ่งได้มีการจัดเตรียมแนวทางการเขียน DTD อย่างมีประสิทธิภาพ

         - XML Pointer Language (XPointer) สามารถกำหนดเป้าหมายในการลิงค์ที่มีความยืดหยุ่นและยังสามารถใช้ XPointer ร่วมกับ XLink เพื่อลิงค์ไปยังที่หมายต่าง ๆ ของเอกสารได้อีกด้วย

         - XML Linking Language (XLink) ทำให้สามารถลิงค์เอกสารไปยังเป้าหมายได้หลายที่และมีลักษณะเฉพาะอื่น ๆ อีก ซึ่งทำให้มีประสิทธิภาพสูงกว่าการลิงค์ด้วย HTML

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

 

รูปแบบการใช้งานจริงของ XML


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

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

         - สามารถใช้จัดเก็บกราฟฟิกที่มีลักษณะเป็นเวกเตอร์ (VML หรือ Vector Markup Language)

         - การจัดเก็บข้อมูลแบบฐานข้อมูล ซึ่งสิ่งที่เหมือนกับโปรแกรมจัดการฐานข้อมูลคือ XML สามารถมีป้าย (Label) บอกข้อมูลของแต่ละฟิลด์ได้ เช่น XML จะสามารถแสดงป้ายชื่อของ Name Lastname Address Phone Number ภายในเรคคอร์ดของรายการข้อมูล Customer ได้ และยังสามารถค้นหา, จัดเรียง, กรองข้อมูล, และประมวลผลได้หลายวิธีอีกด้วย

         - Defining Channels Channel คือเอกสารเว็บที่ถูกผลักดัน (ส่งโดยอัตโนมัติ) ไปยังผู้ที่บอกรับเป็นสมาชิก (CDF หรือ Channel Definition Format)

         - สามารถใช้ในการนำเสนอมัลติมีเดียต่าง ๆ (SMIL หรือ Synchronized Multimedia Integration Language และ HTML+TIME หรือ HTML Timed Interactive Multimedia Extensions)

         - สามารถกำหนดแพ็กเกจของซอฟต์แวร์และสิ่งต่าง ๆที่เกี่ยวข้อง คือ การที่โปรแกรมสามารถบรรยายและอัพเดตข้อมูลบนเครือข่ายได้ (OSD หรือ Open Software Description)

         - การส่งอี-การ์ด (E-Card) หรือ การ์ดอิเล็กทรอนิกส์ผ่านทางอีเมล์

         - สามารถกำหนดให้แลกเปลี่ยนข่าวสารทางการเงินได้ สามารถกำหนดได้แลกเปลี่ยนข้อมูลในรูปแบบที่อ่านเข้าใจง่ายในระหว่างโปรแกรมด้านเงินด้วยกัน เช่นโปรแกรมด้านการเงินด้วยกัน เช่นโปรแกรม Microsoft Money หรือ Quicken และสถาบันทางการเงินต่าง ๆ เช่น ธนาคารและกองทุนต่าง ๆ (OFX หรือ Open Financial Exchange)

         - การสื่อสารระหว่างโปรแกรมต่าง ๆ บนเว็บในรูปแบบที่เป็นอิสระและยืดหยุ่นโดยการใช้การส่งข้อความด้วย XML โดยทำให้เอกสารที่ประกอบด้วยลายเซ็นอิเล็กทรอนิกส์ เพื่อให้ถูกต้องตามกฎหมาย (XFDL หรือ Extensible Forms Description Language)

Back