16
(Group 1) Selected Topics in Computer Engineering II XML eXtensible Markup Language

Introduction to XML

Embed Size (px)

Citation preview

(Group 1)

Selected Topics in Computer Engineering II

XML eXtensible 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