SlideShare une entreprise Scribd logo
1  sur  23
Өгөгдлийн бүтэц
Лекц №1
XML
1
XML
• eXtensible Markup Language
• Бүтэцлэгдсэн мэдээллийг тодорхойлоход
зориулагдсан markup language
• Standard Generalized Markup Language
(SGML)-д суурилсан
• Хувилбар 1.0-ийг анх 1998 онд WWW
консорциумаас танилцуулсан.
• Програм/Вэбд өгөгдөл дамжуулах гүүр
2
XML
• person.xml
3
2. What is XML?
XML is primarily for descriptive markup.
presentational Mobile phones:
Nokia 8890
Ericsson A3618
procedural <document>
<newPage style="box"/>
<bold>Mobile phones:</bold>
<list>
<newItem/><italic>Nokia 8890</italic>
<newItem/><italic>Ericsson A3618</italic>
</list>
</document>
descriptive (the previous example)
Classes of text markup
4
XML бүтэц
• XML нь тааг болон текстүүдээс бүрдэнэ.
<title> The Big Sleep </title>
<year> 1935 </ year>
• Нээх, хаах таагууд хамт ашиглагдана.
<date> ...</date>
• Таагуудын нээж, хаасан дараалал зөв
байх ёстой.
<date> <day> ... </day> ... </date> --- Зөв
<date> <day> ... </date>... </day> --- Буруу
5
XML документын бүтэц
<person type=“Friend”>
<name>Ortal Derech</name>
<tel>04-8732122</tel>
<tel>054-646888</tel>
<email>oderech@tx.technion.ac.il</email>
</person>
элемент
элемент, дэд элемент
атрибут
текст
6
• Өргөтгөж болохуйц
таагууд
• Агуулгад чиглэсэн
• Стандарт өгөгдлийн дэд
бүтэц
• Олон гаралтын
хэлбэрийг зөвшөөрдөг
• Тогтсон таагуудтай
• Мэдээллийг дүрсэлж,
харуулахад
зориулагдсан
• Өгөгдлийг шалгах
боломжгүй
• Нэг төрлийн харагдах
байдал
XML HTML
XML, HTML-ийн ялгаа
7
XML
– Өгөгдлийг хадгалах, дамжуулахад зориулагдсан
Иймээс XML өгөгдөлтэй ажиллахдаа түүнийг илгээх, унших, дүрсэлж
харуулах програмын хэсгийг бичих шаардлагатай болно.
– Энгийн текст файл
• data.xml
– Ямар ч software, hardware, application хооронд ашиглагдах боломжтой.
– HTML-тэй төстэй тааг ашигладаг
+ HTML таагууд нь дэлгэцэнд мэдээлэл дүрслэдэг
<b>BOLD TEXT</b> - BOLD TEXT
- XML таагууд нь мэдээлэл хадгалах, дамжуулах, бүтэцлэхэд зориулагдсан
- <book>Java Programming Handbook </book>
+ НTML таагууд нь урьдчилан тодорхойлогдсон байдаг.
<a>, <img>, <table>
- XML таагуудыг өөрсдийн хүссэн нэрээр нэрлэж ашиглах боломжтой.
<custom>, <…>
8
XML syntax
• Tааг(<name>) хэлбэрээр бичигдэнэ.
• <!– Тайлбар бичих -->
• Ямар ч xml document нь well formed xml байх ёстой.
• Well formed xml файл нь:
– Үндэс/root/ элементтэй байх ёстой.
– Бүх нээгдсэн тааг хаагдсан байх ёстой.
– Case sensitive / <Book>, <book> ялгаатай/
– Таагууд нээгдсэн дарааллаараа хаагдсан байх ёстой.
– Таагийн атрибутуудын утгыг хашилтанд /” ”/ хийнэ.
9
XML structure
• Тааг дотор тааг бичиж олон бүтцийг
илэрхийлж болдог.
<person>
<name>Dave Elliman</name>
<tel> 0115776223 </tel>
<email> dge@cs.nott.ac.uk </email>
</person>
10
XML structure (cont.)
Нэг таагийг олон дахин давтан бичиж
болно.
<addresses>
<person> ... </person>
<person> ... </person>
<person> ... </person>
...
</addresses>
11
XML
• XML-г зурж, дүрсэлбэл мод өгөгдлийн
бүтэцтэй төстэй.
person
name emailtel tel
Malcolm Atchison
(215) 898 4321
(215) 898 4321
mp@dcs.gla.ac.sc
12
XML
• bookstore –
Үндэс элемент
• <bookstore
category=“cooking”> -
category ?
bookstore элементийн
атрибут
• bookstore –т хэдэн хүү
зангилаа байна вэ?
• book-т хэдэн хүү
зангилаа байна вэ?
• <title
lang=“eng”>Everyday
Italian</title>
Everyday Italian?
13
1. Why XML evolved
1986 SGML (Standard Generalized Markup Language) for
defining and representing structured documents
1960-1980 Infrastructure for the Internet
1991 WWW and HTML introduced for the Internet
1991 Business adopts the WWW technology; huge
expansion in the use of the Internet
Urgent need for a new, common data format for the
Internet
1995 New kinds of businesses evolve, based on the
connectivity of people all over the world and connectivity
of applications built by various software providers
14
XML яагаад үүссэн бэ?
• Хэрэгцээ:
– Ойлгоход хялбар энгийн дүрэмтэй байх
– Интернет нөөц, тэдгээрийн харилцааг
дүрслэх чадвартай байх
– Өөр өөр төрлийн бизнесийн салбаруудын
мэдээллийг бүтэцлэх боломжтой байх
– Компьютерт зориулагдсан, формаль
бүтэцтэй, хүнд зориулагдсан тодорхой,
ойлгоход хялбар бүтэцтэй байх
15
XML яагаад чухал вэ?
• Олон хүмүүс XML-ийг хэрэглэдэг.
• Энгийн текст файл – Файлыг та өөрөө үүсгэж, засах боломжтой.
• Өгөгдлийн тодорхойлолт – XML нь танд ямар төрлийн мэдээлэл
байгааг хэлж өгнө. Хэрхэн харагдуулахыг биш.
• Харагдах байдлаас кодыг салгасан байдал
• Шаталсан бүтэцтэй, хялбархан боловсруулагдах боломжтой.
16
Нэмж судлах сэдвүүд
XPath
• XML Path Language. XML файлаас өгөгдөл
өгөгдөл хайхад хэрэглэгддэг хэл.
<?xml version="1.0" encoding="ISO-
8859-1"?>
<bookstore>
<book>
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>
Path Expression Result
bookstore Selects all the child nodes of the bookstore
element
/bookstore Selects the root element bookstoreNote: If
the path starts with a slash ( / ) it always
represents an absolute path to an element!
bookstore/book Selects all book elements that are children of
bookstore
//book Selects all book elements no matter where
they are in the document
bookstore//book Selects all book elements that are
descendant of the bookstore element, no
matter where they are under the bookstore
element
17
Нэмж судлах сэдвүүд
• XQuery – XML-д зориулагдсан query language
18
Java XML Parsers
• DOM
– Sun JAXP
– IBM XML4J
– Apache Xerces
– Resin (Caucho)
– DXP (DataChannel)
• SAX
– Sun JAXP
– SAXON
• JDOM
...
19
Java SAX parser
• Event based XML parser
• SAXParser классын обьектыг үүсгэж, parse()
функцыг ашиглана.
• parse(String uri, DefaultHandler handler)
– uri – XML файлын хаяг
– handler – XML-н элементүүдийг parse хийх үед барьж
авах обьект
• startElement, endElement, character гэсэн функцуудээс
хэрэгтэй функцээ дахин тодорхойлох хэрэгтэй.
20
DefaultHandler классын функцууд
• /*
* Ямар нэг элементээр parse хийж эхлэхэд дуудагдана.
*
*/
public void startElement(String uri, String localName, String qName, Attributes attributes) throws
SAXException
{
......
}
/*
* Тухайн уншигдаж байгаа элементийн хаах таагт хүрэхэд дуудагдах функц.
*/
public void endElement(String uri, String localName, String qName) throws SAXException
{
......
}
/*
* Элементийн нээх хаах таагийн хоорондох утгатай ажиллах функц
*/
public void characters(char ch[], int start, int length) throws SAXException
{
......
}
21
Гүйцэтгэх даалгавар
• person.xml файлыг уншиж дараах байдлаар
хэвлэдэг болгох
------------------------------------------
Person info
Total count: 3
Names:
Person 1: Lars
Person 2: Lars
Person 3: Landerman
Lars count: 2
--------------------------------------------
Хэвлэж харуулахад ашиглагдах статик текстүүдийг ногооноор тэмдэглэлээ.
22
Даалгавар
• Ажилтны мэдээлэл бүртгэх form хийж
xml-д хадгал.
23

Contenu connexe

En vedette (20)

Lab 1
Lab 1Lab 1
Lab 1
 
Lab 12
Lab 12Lab 12
Lab 12
 
Lab 13
Lab 13Lab 13
Lab 13
 
Lec4 хereglegchiinpunkts
Lec4 хereglegchiinpunktsLec4 хereglegchiinpunkts
Lec4 хereglegchiinpunkts
 
Lab 8
Lab 8Lab 8
Lab 8
 
Lab 16
Lab 16Lab 16
Lab 16
 
Lab 14
Lab 14Lab 14
Lab 14
 
програм хангамж
програм хангамжпрограм хангамж
програм хангамж
 
U.IT101 Lab 10,11
U.IT101 Lab 10,11U.IT101 Lab 10,11
U.IT101 Lab 10,11
 
it101 lecture-9
it101 lecture-9it101 lecture-9
it101 lecture-9
 
U.IT101 Lab 5
U.IT101 Lab 5U.IT101 Lab 5
U.IT101 Lab 5
 
INNOMED-2015_Binderiya_Shutis
INNOMED-2015_Binderiya_ShutisINNOMED-2015_Binderiya_Shutis
INNOMED-2015_Binderiya_Shutis
 
Lab 2
Lab 2Lab 2
Lab 2
 
Lab 7
Lab 7Lab 7
Lab 7
 
Процессорын архитектур
Процессорын архитектурПроцессорын архитектур
Процессорын архитектур
 
U.IT101 Lab 9
U.IT101 Lab 9U.IT101 Lab 9
U.IT101 Lab 9
 
Lab 4
Lab 4Lab 4
Lab 4
 
Lecture 5
Lecture 5Lecture 5
Lecture 5
 
U.it101 bie daalt1
U.it101 bie daalt1U.it101 bie daalt1
U.it101 bie daalt1
 
User account policy
User account policyUser account policy
User account policy
 

Xml өгөгдлийн бүтэц

  • 2. XML • eXtensible Markup Language • Бүтэцлэгдсэн мэдээллийг тодорхойлоход зориулагдсан markup language • Standard Generalized Markup Language (SGML)-д суурилсан • Хувилбар 1.0-ийг анх 1998 онд WWW консорциумаас танилцуулсан. • Програм/Вэбд өгөгдөл дамжуулах гүүр 2
  • 4. 2. What is XML? XML is primarily for descriptive markup. presentational Mobile phones: Nokia 8890 Ericsson A3618 procedural <document> <newPage style="box"/> <bold>Mobile phones:</bold> <list> <newItem/><italic>Nokia 8890</italic> <newItem/><italic>Ericsson A3618</italic> </list> </document> descriptive (the previous example) Classes of text markup 4
  • 5. XML бүтэц • XML нь тааг болон текстүүдээс бүрдэнэ. <title> The Big Sleep </title> <year> 1935 </ year> • Нээх, хаах таагууд хамт ашиглагдана. <date> ...</date> • Таагуудын нээж, хаасан дараалал зөв байх ёстой. <date> <day> ... </day> ... </date> --- Зөв <date> <day> ... </date>... </day> --- Буруу 5
  • 6. XML документын бүтэц <person type=“Friend”> <name>Ortal Derech</name> <tel>04-8732122</tel> <tel>054-646888</tel> <email>oderech@tx.technion.ac.il</email> </person> элемент элемент, дэд элемент атрибут текст 6
  • 7. • Өргөтгөж болохуйц таагууд • Агуулгад чиглэсэн • Стандарт өгөгдлийн дэд бүтэц • Олон гаралтын хэлбэрийг зөвшөөрдөг • Тогтсон таагуудтай • Мэдээллийг дүрсэлж, харуулахад зориулагдсан • Өгөгдлийг шалгах боломжгүй • Нэг төрлийн харагдах байдал XML HTML XML, HTML-ийн ялгаа 7
  • 8. XML – Өгөгдлийг хадгалах, дамжуулахад зориулагдсан Иймээс XML өгөгдөлтэй ажиллахдаа түүнийг илгээх, унших, дүрсэлж харуулах програмын хэсгийг бичих шаардлагатай болно. – Энгийн текст файл • data.xml – Ямар ч software, hardware, application хооронд ашиглагдах боломжтой. – HTML-тэй төстэй тааг ашигладаг + HTML таагууд нь дэлгэцэнд мэдээлэл дүрслэдэг <b>BOLD TEXT</b> - BOLD TEXT - XML таагууд нь мэдээлэл хадгалах, дамжуулах, бүтэцлэхэд зориулагдсан - <book>Java Programming Handbook </book> + НTML таагууд нь урьдчилан тодорхойлогдсон байдаг. <a>, <img>, <table> - XML таагуудыг өөрсдийн хүссэн нэрээр нэрлэж ашиглах боломжтой. <custom>, <…> 8
  • 9. XML syntax • Tааг(<name>) хэлбэрээр бичигдэнэ. • <!– Тайлбар бичих --> • Ямар ч xml document нь well formed xml байх ёстой. • Well formed xml файл нь: – Үндэс/root/ элементтэй байх ёстой. – Бүх нээгдсэн тааг хаагдсан байх ёстой. – Case sensitive / <Book>, <book> ялгаатай/ – Таагууд нээгдсэн дарааллаараа хаагдсан байх ёстой. – Таагийн атрибутуудын утгыг хашилтанд /” ”/ хийнэ. 9
  • 10. XML structure • Тааг дотор тааг бичиж олон бүтцийг илэрхийлж болдог. <person> <name>Dave Elliman</name> <tel> 0115776223 </tel> <email> dge@cs.nott.ac.uk </email> </person> 10
  • 11. XML structure (cont.) Нэг таагийг олон дахин давтан бичиж болно. <addresses> <person> ... </person> <person> ... </person> <person> ... </person> ... </addresses> 11
  • 12. XML • XML-г зурж, дүрсэлбэл мод өгөгдлийн бүтэцтэй төстэй. person name emailtel tel Malcolm Atchison (215) 898 4321 (215) 898 4321 mp@dcs.gla.ac.sc 12
  • 13. XML • bookstore – Үндэс элемент • <bookstore category=“cooking”> - category ? bookstore элементийн атрибут • bookstore –т хэдэн хүү зангилаа байна вэ? • book-т хэдэн хүү зангилаа байна вэ? • <title lang=“eng”>Everyday Italian</title> Everyday Italian? 13
  • 14. 1. Why XML evolved 1986 SGML (Standard Generalized Markup Language) for defining and representing structured documents 1960-1980 Infrastructure for the Internet 1991 WWW and HTML introduced for the Internet 1991 Business adopts the WWW technology; huge expansion in the use of the Internet Urgent need for a new, common data format for the Internet 1995 New kinds of businesses evolve, based on the connectivity of people all over the world and connectivity of applications built by various software providers 14
  • 15. XML яагаад үүссэн бэ? • Хэрэгцээ: – Ойлгоход хялбар энгийн дүрэмтэй байх – Интернет нөөц, тэдгээрийн харилцааг дүрслэх чадвартай байх – Өөр өөр төрлийн бизнесийн салбаруудын мэдээллийг бүтэцлэх боломжтой байх – Компьютерт зориулагдсан, формаль бүтэцтэй, хүнд зориулагдсан тодорхой, ойлгоход хялбар бүтэцтэй байх 15
  • 16. XML яагаад чухал вэ? • Олон хүмүүс XML-ийг хэрэглэдэг. • Энгийн текст файл – Файлыг та өөрөө үүсгэж, засах боломжтой. • Өгөгдлийн тодорхойлолт – XML нь танд ямар төрлийн мэдээлэл байгааг хэлж өгнө. Хэрхэн харагдуулахыг биш. • Харагдах байдлаас кодыг салгасан байдал • Шаталсан бүтэцтэй, хялбархан боловсруулагдах боломжтой. 16
  • 17. Нэмж судлах сэдвүүд XPath • XML Path Language. XML файлаас өгөгдөл өгөгдөл хайхад хэрэглэгддэг хэл. <?xml version="1.0" encoding="ISO- 8859-1"?> <bookstore> <book> <title lang="en">Harry Potter</title> <author>J K. Rowling</author> <year>2005</year> <price>29.99</price> </book> </bookstore> Path Expression Result bookstore Selects all the child nodes of the bookstore element /bookstore Selects the root element bookstoreNote: If the path starts with a slash ( / ) it always represents an absolute path to an element! bookstore/book Selects all book elements that are children of bookstore //book Selects all book elements no matter where they are in the document bookstore//book Selects all book elements that are descendant of the bookstore element, no matter where they are under the bookstore element 17
  • 18. Нэмж судлах сэдвүүд • XQuery – XML-д зориулагдсан query language 18
  • 19. Java XML Parsers • DOM – Sun JAXP – IBM XML4J – Apache Xerces – Resin (Caucho) – DXP (DataChannel) • SAX – Sun JAXP – SAXON • JDOM ... 19
  • 20. Java SAX parser • Event based XML parser • SAXParser классын обьектыг үүсгэж, parse() функцыг ашиглана. • parse(String uri, DefaultHandler handler) – uri – XML файлын хаяг – handler – XML-н элементүүдийг parse хийх үед барьж авах обьект • startElement, endElement, character гэсэн функцуудээс хэрэгтэй функцээ дахин тодорхойлох хэрэгтэй. 20
  • 21. DefaultHandler классын функцууд • /* * Ямар нэг элементээр parse хийж эхлэхэд дуудагдана. * */ public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException { ...... } /* * Тухайн уншигдаж байгаа элементийн хаах таагт хүрэхэд дуудагдах функц. */ public void endElement(String uri, String localName, String qName) throws SAXException { ...... } /* * Элементийн нээх хаах таагийн хоорондох утгатай ажиллах функц */ public void characters(char ch[], int start, int length) throws SAXException { ...... } 21
  • 22. Гүйцэтгэх даалгавар • person.xml файлыг уншиж дараах байдлаар хэвлэдэг болгох ------------------------------------------ Person info Total count: 3 Names: Person 1: Lars Person 2: Lars Person 3: Landerman Lars count: 2 -------------------------------------------- Хэвлэж харуулахад ашиглагдах статик текстүүдийг ногооноор тэмдэглэлээ. 22
  • 23. Даалгавар • Ажилтны мэдээлэл бүртгэх form хийж xml-д хадгал. 23