(Group 1)
Selected Topics in Computer Engineering II
XMLeXtensible Markup Language
What?
• XML ย่อมาจาก eXtensible Markup Language เป็นภาษาที่ใช้สาหรับการเขียน
เอกสาร markup (markup document) โดยที่เอกสาร markup นั้นมีการใช้
metadata (หรือ tags) เพื่อบอกหน้าที่และประเภทของข้อมูลของส่วนต่างๆ ของเอกสารนั้น
ได้โดยชัดเจน การเพิ่ม metadata (หรือ tags) เข้าไปในเอกสารสามารถทาให้โครงสร้างของ
เอกสารชัดเจนขึ้น และทาให้การประมวลผลเอกสารเป็นไปโดยง่ายและไม่จำเป็นที่จะต้อง
อำศัยมนุษย์เพื่อตีควำมเอกสำร
What?
(count.)
• XML ถือได้ว่าเป็นส่วนหนึ่งของ Standard Generalized Markup
Language (SGML) ที่เป็นข้อกาหนดในการสร้างหรือจัดทาเอกสารในรูปแบบ
Electronics ที่กาหนดโดย W3C หรือ World Wide Web Consortium ที่มี
โครงสร้างและรูปแบบที่เปิดให้ Application ต่างๆ สามารถเรียกไปใช้งานได้ จึง ทาให้การ
จัดการข้อมูลหรือเรียกใช้ข้อมูลจาก Application ต่างๆ นั้นอยู่ในมาตรฐานเดียวกัน โดยสามารถ
สร้างแอพพลิเคชั่นเพื่ออ่านและประมวลผล XML ได้อย่างง่ายดาย
What?
(count.)
• เราใช้เทคโนโลยี XML ในการพัฒนำมำตรฐำนเพื่อกำรกระจำยข่ำวเนื่องจาก
XML เป็นภาษาที่เหมาะกับการแลกเปลี่ยนข้อมูลผ่านเครือข่ายคอมพิวเตอร์
เนื่องจาก XML ไม่ได้ขึ้นอยู่กับโปรแกรมประยุกต์หรือระบบปฏิบัติกำรใด
นอกจากนี้ XML ยังเป็นภาษาที่มีความยืดหยุ่น เนื่องจากผู้ใช้สามารถที่จะกาหนด
และตั้งค่า metadata (หรือ tags) ให้เหมาะกับเอกสารเฉพาะที่ตนต้องการได้อย่าง
อิสระ และยังสามารถเพิ่มเติม metadata (หรือ tags) ได้ในภายหลังโดยไม่มี
ผลกระทบต่อโปรแกรมที่มีอยู่แล้วด้วย
Why?
• XML มีความยืดหยุ่นทาให้ใช้ได้กว้างขวาง
• ไฟล์ข้อควำมอย่ำงง่ำยใช้เก็บข้อมูล คนและเครื่องสามารถอ่านได้ ไม่ต้องการรูปแบบข้อมูลพิเศษ
• การสนับสนุน Unicode ดี ทาให้ข้อมูลตัวอักษรต่างๆ รอบโลกสามารถนาเสนอได้ง่าย
• ไม่มีplatformขึ้นต่อใน XML จึงเป็นเทคโนโลยีข้าม platform อย่างแท้จริง
• จัดการเอกสารได้เร็วและมีประสิทธิภาพ
• มาตรฐานที่มีอยู่ใกล้เคียงกับ platform หลัก จึงไม่ต้องทำส่วนสนับสนุน XML เพิ่ม
• เครื่องมือในการทางานกับ XML มีมาก
Why?
(count.)
• โครงสร้ำงข้อมูลง่ำย เช่น ไฟล์คอนฟิก, address book หรือการเก็บข้อมูลขนาดเล็ก การใช้
XML เก็บค่าคอนฟิกและข้อมูลของผู้ใช้ จึงไม่ต้องเขียนคาสั่งขนาดใหญ่เพื่อจัดการ
• บริษัทต้องการใช้ข้อมูลร่วม business-to-business (B2B) เช่น คลังสินค้า และฝ่ายกระจายสินค้า
สามารถใช้ XML ส่งผ่ำนข้อมูลได้
• กำรประยุกต์ข้อมูลร่วม ถ้าโปรแกรมเก็บข้อมูลเป็นไฟล์ข้อมูล XML เอกสารจัดการได้กว้างตาม
platform และโปรแกรม
• เนื่องจาก XML ยืดหยุ่นและคอนฟิกทาให้สามารถกาหนดภาษา markup ใหม่สาหรับ
วัตถุประสงค์หลากหลาย
How?
XML Syntax Rules
<?xml version="1.0" encoding="UTF-8"?>
<root>
<child>
<subchild>.....</subchild>
</child>
</root>
ใช้ <?xml version="1.0" encoding="UTF-8"?>
ในการประกาศการเข้ารหัส
How?
(count.)
<phonestore>
<phone brands=”oppo”>
<generation>R5</generation>
<price>300$</price>
<year>2016</year>
</phone>
</phonestore>
โดยมีโครงสร้ำงคือ tag และ element
tag คือส่วนข้อความที่อยู่ระหว่างสัญลักษณ์ "<" และ ">" มี 2 แบบคือ tag เปิด และ
tag ปิด element เริ่มต้นที่ tag เปิด และสิ้นสุดที่ tag ปิด ใน tag ดียวกัน ตัวอย่างเช่น
<price>29.99</price>
อาจมี Attribute สาหรับกาหนดข้อมูลที่เป็นค่าคงที่ ไว้ใน tag เปิด เช่น
<note date="12/11/2007">
How?
(count.)
• ซึ่งโครงสร้ำงภำยใน xml สามารถ มองเป็นแผนภำพต้นไม้ได้โดยจะมอง เริ่มจากส่วน
root แล้วภายใน root จะแตกออกเป็นหลาย branch ได้ ซึ่ง branch ในที่นี้คือ child
element ซึ่ง Tag <> ที่อยู่ภายในแต่ละ child นี้จะเป็นส่วน element เฉพาะของ child แต่
ละตัวนั่นเอง ซึ่งในแต่ละ element จะมี attribute ได้ดังนี้
How?
(count.)
สำมำรถใช้ XSLT ในกำรใช้ xml ใน html ได้
<?xml version="1.0" encoding="UTF-8"?>
<html xsl:version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<body style="font-family:Arial;font-size:12pt;background-color:#EEEEEE">
<xsl:for-each select="breakfast_menu/food">
<div style="background-color:teal;color:white;padding:4px">
<span style="font-weight:bold"><xsl:value-of select="name"/> - </span>
<xsl:value-of select="price"/>
</div>
<div style="margin-left:20px;margin-bottom:1em;font-size:10pt">
<p>
<xsl:value-of select="description"/>
<span style="font-style:italic"> (<xsl:value-of select="calories"/> calories per
serving)</span>
</p>
</div>
</xsl:for-each>
</body>
</html>
ควำมแตกต่ำงระหว่ำง XML กับ HTML คือ
• XML นั้นใช้อธิบายข้อมูล คือ บอกว่าข้อมูลนั้นคืออะไร
• HTML นั้นใช้อธิบายการแสดงผล คือ บอกว่าข้อมูลนั้นจะแสดงผลในหน้าตาแบบไหน
XML vs. HTML
HTML XML
HTML เป็นคาย่อมาจาก HyperText Markup
Language
XML ย่อมาจาก Extensible Markup ภาษา
HTML ได้รับการออกแบบเพื่อแสดงข้อมูลที่มี
ความสาคัญเกี่ยวกับวิธีการลักษณะข้อมูล
XML ได้รับการออกแบบมาเพื่อเป็นซอฟแวร์และ
ฮาร์ดแวร์เครื่องมืออิสระใช้ในการขนส่งและเก็บข้อมูลที่
มีความสาคัญกับสิ่งที่เป็นข้อมูล
XML vs. HTML
(count.)
HTML XML
HTML เป็นภาษามาร์กอัปตัวเอง XML ให้กรอบสาหรับการกาหนดภาษามาร์กอัป
HTML เป็นภาษานาเสนอ XML เป็นค่าภาษาการเขียนโปรแกรมภาษามิได้นาเสนอ
HTML จะใช้สาหรับการออกแบบหน้าเว็บที่จะแสดงผลบน
ฝั่งไคลเอ็นต์
XML จะใช้เป็นพื้นเพื่อการขนส่งข้อมูลระหว่างโปรแกรม
และฐานข้อมูล
HTML มีแท็กที่กาหนดไว้ล่วงหน้าของตัวเอง ในขณะที่สิ่งที่ทาให้มีความยืดหยุ่น XML คือว่าแท็กที่
กาหนดเองสามารถกาหนดและแท็กที่คิดค้นโดยผู้เขียนของ
เอกสาร XML
XML vs. HTML
(count.)
HTML XML
HTML จะไม่เข้มงวดหากผู้ใช้ไม่ได้ใช้แท็กปิด XML ทาให้มันบังคับสาหรับผู้ใช้แท็กใกล้เคียงที่มีการใช้ใน
แต่ละ
HTML ไม่รักษาพื้นที่สีขาว XML เก็บรักษาพื้นที่สีขาว
HTML เป็นเรื่องเกี่ยวกับการแสดงข้อมูลจึงคงที่ XML เป็นข้อมูลเกี่ยวกับการดาเนินเพราะฉะนั้นแบบไดนา
มิก
Reference
• What? And How?
http://www.w3schools.com/xml/
http://www.nextproject.net/contents/default.aspx?00048
• Why?
http://www.widebase.net/internet/php/phpweb/phpweb0301.shtml
https://www.gotoknow.org/posts/61890
• XML vs. HTML
https://www.l3nr.org/posts/375434
http://www.withoutbook.com/DifferenceBetweenSubjects.php?
http://thaicss.com/
Members
Group1
นาย อภิวัฒธ์ วงศ์โท๊ะ รหัสนักศึกษา 52-1116-530-2
นางสาว พัลลภา เขมรังสฤษฏ์ รหัสนักศึกษา 56-010126-2008-1
นางสาว อัญธิกา หนองบัว รหัสนักศึกษา 56-010126-3028-1
นาย ธีรวัฒน์ ผ่องสกุล รหัสนักศึกษา 56-010126-3015-9
นาย ธนดล เตชะวัชรีกุล รหัสนักศึกษา 56-010126-3009-4
นาย ภูมมิฑล ไชยเชิดเกียรติ รหัสนักศึกษา 56-010116-2131-8
Introduction to XML.

Introduction to XML.

  • 1.
    (Group 1) Selected Topicsin Computer Engineering II XMLeXtensible Markup Language
  • 2.
    What? • XML ย่อมาจากeXtensible Markup Language เป็นภาษาที่ใช้สาหรับการเขียน เอกสาร markup (markup document) โดยที่เอกสาร markup นั้นมีการใช้ metadata (หรือ tags) เพื่อบอกหน้าที่และประเภทของข้อมูลของส่วนต่างๆ ของเอกสารนั้น ได้โดยชัดเจน การเพิ่ม metadata (หรือ tags) เข้าไปในเอกสารสามารถทาให้โครงสร้างของ เอกสารชัดเจนขึ้น และทาให้การประมวลผลเอกสารเป็นไปโดยง่ายและไม่จำเป็นที่จะต้อง อำศัยมนุษย์เพื่อตีควำมเอกสำร
  • 3.
    What? (count.) • XML ถือได้ว่าเป็นส่วนหนึ่งของStandard Generalized Markup Language (SGML) ที่เป็นข้อกาหนดในการสร้างหรือจัดทาเอกสารในรูปแบบ Electronics ที่กาหนดโดย W3C หรือ World Wide Web Consortium ที่มี โครงสร้างและรูปแบบที่เปิดให้ Application ต่างๆ สามารถเรียกไปใช้งานได้ จึง ทาให้การ จัดการข้อมูลหรือเรียกใช้ข้อมูลจาก Application ต่างๆ นั้นอยู่ในมาตรฐานเดียวกัน โดยสามารถ สร้างแอพพลิเคชั่นเพื่ออ่านและประมวลผล XML ได้อย่างง่ายดาย
  • 4.
    What? (count.) • เราใช้เทคโนโลยี XMLในการพัฒนำมำตรฐำนเพื่อกำรกระจำยข่ำวเนื่องจาก XML เป็นภาษาที่เหมาะกับการแลกเปลี่ยนข้อมูลผ่านเครือข่ายคอมพิวเตอร์ เนื่องจาก XML ไม่ได้ขึ้นอยู่กับโปรแกรมประยุกต์หรือระบบปฏิบัติกำรใด นอกจากนี้ XML ยังเป็นภาษาที่มีความยืดหยุ่น เนื่องจากผู้ใช้สามารถที่จะกาหนด และตั้งค่า metadata (หรือ tags) ให้เหมาะกับเอกสารเฉพาะที่ตนต้องการได้อย่าง อิสระ และยังสามารถเพิ่มเติม metadata (หรือ tags) ได้ในภายหลังโดยไม่มี ผลกระทบต่อโปรแกรมที่มีอยู่แล้วด้วย
  • 5.
    Why? • XML มีความยืดหยุ่นทาให้ใช้ได้กว้างขวาง •ไฟล์ข้อควำมอย่ำงง่ำยใช้เก็บข้อมูล คนและเครื่องสามารถอ่านได้ ไม่ต้องการรูปแบบข้อมูลพิเศษ • การสนับสนุน Unicode ดี ทาให้ข้อมูลตัวอักษรต่างๆ รอบโลกสามารถนาเสนอได้ง่าย • ไม่มีplatformขึ้นต่อใน XML จึงเป็นเทคโนโลยีข้าม platform อย่างแท้จริง • จัดการเอกสารได้เร็วและมีประสิทธิภาพ • มาตรฐานที่มีอยู่ใกล้เคียงกับ platform หลัก จึงไม่ต้องทำส่วนสนับสนุน XML เพิ่ม • เครื่องมือในการทางานกับ XML มีมาก
  • 6.
    Why? (count.) • โครงสร้ำงข้อมูลง่ำย เช่นไฟล์คอนฟิก, address book หรือการเก็บข้อมูลขนาดเล็ก การใช้ XML เก็บค่าคอนฟิกและข้อมูลของผู้ใช้ จึงไม่ต้องเขียนคาสั่งขนาดใหญ่เพื่อจัดการ • บริษัทต้องการใช้ข้อมูลร่วม business-to-business (B2B) เช่น คลังสินค้า และฝ่ายกระจายสินค้า สามารถใช้ XML ส่งผ่ำนข้อมูลได้ • กำรประยุกต์ข้อมูลร่วม ถ้าโปรแกรมเก็บข้อมูลเป็นไฟล์ข้อมูล XML เอกสารจัดการได้กว้างตาม platform และโปรแกรม • เนื่องจาก XML ยืดหยุ่นและคอนฟิกทาให้สามารถกาหนดภาษา markup ใหม่สาหรับ วัตถุประสงค์หลากหลาย
  • 7.
    How? XML Syntax Rules <?xmlversion="1.0" encoding="UTF-8"?> <root> <child> <subchild>.....</subchild> </child> </root> ใช้ <?xml version="1.0" encoding="UTF-8"?> ในการประกาศการเข้ารหัส
  • 8.
    How? (count.) <phonestore> <phone brands=”oppo”> <generation>R5</generation> <price>300$</price> <year>2016</year> </phone> </phonestore> โดยมีโครงสร้ำงคือ tagและ element tag คือส่วนข้อความที่อยู่ระหว่างสัญลักษณ์ "<" และ ">" มี 2 แบบคือ tag เปิด และ tag ปิด element เริ่มต้นที่ tag เปิด และสิ้นสุดที่ tag ปิด ใน tag ดียวกัน ตัวอย่างเช่น <price>29.99</price> อาจมี Attribute สาหรับกาหนดข้อมูลที่เป็นค่าคงที่ ไว้ใน tag เปิด เช่น <note date="12/11/2007">
  • 9.
    How? (count.) • ซึ่งโครงสร้ำงภำยใน xmlสามารถ มองเป็นแผนภำพต้นไม้ได้โดยจะมอง เริ่มจากส่วน root แล้วภายใน root จะแตกออกเป็นหลาย branch ได้ ซึ่ง branch ในที่นี้คือ child element ซึ่ง Tag <> ที่อยู่ภายในแต่ละ child นี้จะเป็นส่วน element เฉพาะของ child แต่ ละตัวนั่นเอง ซึ่งในแต่ละ element จะมี attribute ได้ดังนี้
  • 10.
    How? (count.) สำมำรถใช้ XSLT ในกำรใช้xml ใน html ได้ <?xml version="1.0" encoding="UTF-8"?> <html xsl:version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <body style="font-family:Arial;font-size:12pt;background-color:#EEEEEE"> <xsl:for-each select="breakfast_menu/food"> <div style="background-color:teal;color:white;padding:4px"> <span style="font-weight:bold"><xsl:value-of select="name"/> - </span> <xsl:value-of select="price"/> </div> <div style="margin-left:20px;margin-bottom:1em;font-size:10pt"> <p> <xsl:value-of select="description"/> <span style="font-style:italic"> (<xsl:value-of select="calories"/> calories per serving)</span> </p> </div> </xsl:for-each> </body> </html>
  • 11.
    ควำมแตกต่ำงระหว่ำง XML กับHTML คือ • XML นั้นใช้อธิบายข้อมูล คือ บอกว่าข้อมูลนั้นคืออะไร • HTML นั้นใช้อธิบายการแสดงผล คือ บอกว่าข้อมูลนั้นจะแสดงผลในหน้าตาแบบไหน XML vs. HTML HTML XML HTML เป็นคาย่อมาจาก HyperText Markup Language XML ย่อมาจาก Extensible Markup ภาษา HTML ได้รับการออกแบบเพื่อแสดงข้อมูลที่มี ความสาคัญเกี่ยวกับวิธีการลักษณะข้อมูล XML ได้รับการออกแบบมาเพื่อเป็นซอฟแวร์และ ฮาร์ดแวร์เครื่องมืออิสระใช้ในการขนส่งและเก็บข้อมูลที่ มีความสาคัญกับสิ่งที่เป็นข้อมูล
  • 12.
    XML vs. HTML (count.) HTMLXML HTML เป็นภาษามาร์กอัปตัวเอง XML ให้กรอบสาหรับการกาหนดภาษามาร์กอัป HTML เป็นภาษานาเสนอ XML เป็นค่าภาษาการเขียนโปรแกรมภาษามิได้นาเสนอ HTML จะใช้สาหรับการออกแบบหน้าเว็บที่จะแสดงผลบน ฝั่งไคลเอ็นต์ XML จะใช้เป็นพื้นเพื่อการขนส่งข้อมูลระหว่างโปรแกรม และฐานข้อมูล HTML มีแท็กที่กาหนดไว้ล่วงหน้าของตัวเอง ในขณะที่สิ่งที่ทาให้มีความยืดหยุ่น XML คือว่าแท็กที่ กาหนดเองสามารถกาหนดและแท็กที่คิดค้นโดยผู้เขียนของ เอกสาร XML
  • 13.
    XML vs. HTML (count.) HTMLXML HTML จะไม่เข้มงวดหากผู้ใช้ไม่ได้ใช้แท็กปิด XML ทาให้มันบังคับสาหรับผู้ใช้แท็กใกล้เคียงที่มีการใช้ใน แต่ละ HTML ไม่รักษาพื้นที่สีขาว XML เก็บรักษาพื้นที่สีขาว HTML เป็นเรื่องเกี่ยวกับการแสดงข้อมูลจึงคงที่ XML เป็นข้อมูลเกี่ยวกับการดาเนินเพราะฉะนั้นแบบไดนา มิก
  • 14.
    Reference • What? AndHow? http://www.w3schools.com/xml/ http://www.nextproject.net/contents/default.aspx?00048 • Why? http://www.widebase.net/internet/php/phpweb/phpweb0301.shtml https://www.gotoknow.org/posts/61890 • XML vs. HTML https://www.l3nr.org/posts/375434 http://www.withoutbook.com/DifferenceBetweenSubjects.php? http://thaicss.com/
  • 15.
    Members Group1 นาย อภิวัฒธ์ วงศ์โท๊ะรหัสนักศึกษา 52-1116-530-2 นางสาว พัลลภา เขมรังสฤษฏ์ รหัสนักศึกษา 56-010126-2008-1 นางสาว อัญธิกา หนองบัว รหัสนักศึกษา 56-010126-3028-1 นาย ธีรวัฒน์ ผ่องสกุล รหัสนักศึกษา 56-010126-3015-9 นาย ธนดล เตชะวัชรีกุล รหัสนักศึกษา 56-010126-3009-4 นาย ภูมมิฑล ไชยเชิดเกียรติ รหัสนักศึกษา 56-010116-2131-8