Ç÷¡½Ã¿Í XML (Extensible Markup Language)
1. XMLÀ̶õ?
XMLÀ» »ç¿ëÇϱâ À§Çؼ µÎ°¡Áö¸¦ ÀÌÇØÇØ¾ß Çϴµ¥, Çϳª´Â, XMLÀ̶õ ¹«¾ùÀÎÁö ÀÌÇØÇÏ´Â °ÍÀ̸ç, ´Ù¸¥ Çϳª´Â Ç÷¡½Ã¿¡¼ XMLÀº ¾î¶»°Ô ´Ù·ç´Â Áö¸¦ ÀÌÇØÇÏ´Â °ÍÀÌ´Ù.
1. XML ¿ª»ç
- 1998³â 2¿ù WC3¿¡¼ XML 1.0À̶ó´Â À̸§À¸·Î ¹ßÇ¥.
- SGML(Standard Generalized Markup Language)´Â XMLÀÇ ¾î¹öÀÌ ¾ð¾îÀε¥, ÀÌ ¾ð¾î´Â 1986³â¿¡ ISO¿¡¼ Á¦Á¤ÇÑ °ÍÀ¸·Î À¥¿¡¼ »ç¿ëÇϱ⠽¬¿î ±â´ÉÀ» »Ì¾Æ °¡º¯°Ô ¸¸µç °ÍÀÌ´Ù.
- SGMLÀº ¼·Î ´Ù¸¥ ÄÄÇ»Æà ȯ°æ¿¡¼ ÄÄÇ»ÅÍ°£ ¹®¼ ±³È¯À» ÁÖ¸ñÀûÀ¸·Î ¸¸µç ¸¶Å©¾÷ ¾ð¾î¸ç, ÀÌ ÀÌÈÄ¿¡ SGMLÀ» ÀÀ¿ëÇÏ¿© HTML°ú XMLÀÌ À¥¿¡¼ ¹®¼¸¦ ²Ù¹Ì´Â Â÷¼¼´ë ¸¶Å©¾÷¾ð¾î·Î ź»ýµÇ¾ú´Ù.
- SGMLÀº ¹ßÇ¥µÈ Áö´Â ¿À·¡µÇ¾úÁö¸¸, ³Ê¹« º¹ÀâÇÏ¿© ³Î¸® º¸±ÞµÇÁö´Â ¸øÇß´Ù.
- ¹®¹ýµµ ±î´Ù·Ó°í, ±× ±â´ÉÀ» Á¤ÀÇÇÑ ¼³¸í¼°¡ ³Ê¹« ¹æ´ëÇÒ »Ó¸¸ ¾Æ´Ï¶ó,¸µÅ© ±â´É ¹× ÀÎÅÍ³Ý ±â¹Ý¿¡ Àû´çÇÏÁö ¸øÇß´Ù.
- ÀÌ·¯ÇÑ ´ÜÁ¡À» º¸¾ÈÇÏ°í ¹ßÀü½ÃÄÑ HTML°ú XMLÀÌ Åº»ýµÈ °ÍÀÌ´Ù.
2. HTML°ú XMLÀÇ ºñ±³
°£È¤ XMLÀ» HTMLÀÇ È®Àå¾ð¾î¶ó°í º¸´Â °æ¿ìµµ Àִµ¥, ÀÌ µÎ¾ð¾îÀÇ °ü°è´Â ±²ÀåÈ÷ ´Ù¸£´Ù.
2-1. HTML (Hyper Text Markup Language)
- HTMLÀº Å©°Ô µÎ°¡Áö Ư¡ÀÌ Àִµ¥, °¡Àå Å« Ư¡Àº À¥ÆäÀÌÁö¸¦ ¿¹»Ú°Ô ²Ù¸çÁÖ´Â °ÍÀÌ°í ¶Ç ´Ù¸¥ Ư¡Àº ÇÏÀÌÆÛ ÅؽºÆ® ±â´ÉÀ¸·Î ´Ù¸¥ ÆäÀÌÁö¸¦ ¸µÅ©(¿¬°á)ÇÏ´Â °ÍÀÌ ½±´Ù´Â °ÍÀÌ´Ù.
bgcolor=¡±white¡± text=¡±black¡± link=¡±blue¡± vlink=¡±purple¡±>
¹®Àå¿¡ »ö±ò, ±ÛÀÚü º¯°æ
href=¡±http://www.daum.net¡±>´ÙÀ½
|
2-2. XML
- XMLÀº HTML°ú ´Þ¸® »ç¿ëÀÚ°¡ ű׸¦ ¸¸µé ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î ¿ì¸®Çб³¿¡ ¸ÖƼ¹Ìµð¾îÇаú¿¡ ´Ù´Ï´Â Ä£±¸¿¡ ´ëÇÏ¿© ¾Ë°í ½Í´Ù¸é XML·Î ´ÙÀ½°ú °£ÀÌ Ç¥ÇöÇÒ ¼ö ÀÖ´Ù.
<¿ì¸®Çб³>
<¸ÖƼ¹Ìµð¾îÇаú>
<À̸§>°±âÈÆÀ̸§>
<¼ºº°>³²¼ºº°>
<Çгâ>4ÇгâÇгâ>
<°ÅÁÖÁö>°¥¿ùµ¿°ÅÁÖÁö>
¸ÖƼ¹Ìµð¾îÇаú>
¿ì¸®Çб³> |
* ¸Þ¸ðÀå XML ¹®¼ÀÇ Ã¹ÁÙ¿¡
¸¦ ÀÔ·ÂÇÏ°í ÆÄÀÏÀ̸§Àº ~.xml·Î ÀúÀåÇÏ¸é µÈ´Ù.
l ¸¶Å©¾÷ ¾ð¾î¿¡ ´ëÇÏ¿©
- ¸¶Å©¾÷ ¾ð¾î´Â ¹®¼ÀÇ ÇüÅÂ¿Í ±¸Á¶¿¡ Àǹ̸¦ ºÎ¿©Çϱâ À§ÇÑ ¾ð¾îÀÌ´Ù.
- ¹®¼»çÀÌ¿¡ ű׸¦ »ðÀÔÇÏ¿© À¥ ºê¶ó¿ìÀú°¡ ±× ű׸¦ Çؼ®ÇÏ¿© ¹®¼ÀÇ Å©±â »ö»óµîÀ» Ç¥ÇöÇÑ´Ù.
- ¸¶Å©¾÷ ¾ð¾î´Â ±âÃÊ¿ä¼Ò(element), ¼Ó¼º(attribute), ½Çü¿ä¼Ò(entity)·Î ±¸¼ºµÈ´Ù.
- ±âÃÊ¿ä¼Ò : ±âÃÊ¿ä¼Ò´Â ³ëµå¶ó°íµµ ÇÏ¸ç ±ÛÀÇ Àüü ±¸Á¶¿Í ¼¼ºÎÀûÀΠƯ¡À» ¹¦»çÇÒ ¼ö ÀÖ´Ù. ½ÃÀÛÅÂ±×¿Í ³¡Å±װ¡ ÇÊ¿äÇÏ´Ù.
¿¹) <½ÃÀÛű×> ³¡Å±×>
- ¼Ó¼º : ±âÃÊ¿ä¼ÒµéÀº ½ÃÀÛÅÂ±× ¾È¿¡¼ ¼Ó¼ºµéÀ» °¡Áú ¼ö ÀÖ´Ù.
¿¹) <½ÃÀÛÅÂ±× ¼Ó¼º=¡±°ª¡±>
- ½Çü¿ä¼Ò : ½Çü¿ä¼Ò´Â ¿©´Â ÅÂ±×¿Í ´Ý´Â ÅÂ±× »çÀÌÀÇ ¹®ÀÚ¸¦ ¸»ÇÑ´Ù.
¿¹) <½ÃÀÛű×> ½Çü¿ä¼Ò ³¡Å±×>
- ¸¶Å©¾÷ ¾ð¾îÀÇ »ç¿ë ¿¹
bgcolor=¡±white¡± ¡± text=¡±black¡± link=¡±blue¡± vlink=¡±purple¡±>
¾È³çÇϼ¼¿ä
3. XMLÀÇ ÁÖ¿äƯ¡
3-1. µ¥ÀÌÅÍÀÇ Ç¥ÇöÀÌ ÀÚÀ¯·Ó´Ù.
- XMLÀº ¹®¼¸¦ ±¸Á¶ÈÇÏ¿© ±× ÀÚü·Î µ¥ÀÌÅ͸¦ Ç¥ÇöÇÒ ¼ö Àֱ⠶§¹®¿¡ HTMLº¸´Ù ÈξÀ ¸·°ÇÑ Ç¥Çö·ÂÀ» °¡Áö°í ÀÖ´Ù
- XMLÀÇ ¹®¼Àû ±¸Á¶´Â ¹®¼¿¡¼ ÇÊ¿äÇÑ ³»¿ë¸¸ »Ì¾Æ¼ Ç¥ÇöÇÒ ¼ö ÀÖµµ·Ï ÇØÁØ´Ù.
- XMLÀº µ¥ÀÌÅ͸¦ ±¸Á¶ÈÇÏ´Â °ÍÀÌ ±× ÁÖ¸ñÀûÀ̱⠶§¹®¿¡ HTMLó·³ µ¥ÀÌÅ͸¦ ¼½ÄÇϴ űװ¡ ¾ø´Ù.
- ÇÏÁö¸¸ ½ºÅ¸ÀϽÃÆ®¸¦ ¸¸µé¾î µ¥ÀÌÅ͸¦ ¼½ÄÇÏ°Ô Çϴµ¥, ÀÌ·¯ÇÑ ½ºÅ¸ÀÏ ½ÃÆ®¸¦ XSLT(eXtensible Stylesheet Language Transformations)À̶ó°í Çϴµ¥, ÀÌ°ÍÀ» ÀÌ¿ëÇÏ¿© XML¹®¼¸¦ ¿©·¯°¡Áö ¸ð½ÀÀ¸·Î Ç¥ÇöÇÒ ¼ö ÀÖ´Ù.
* XSLT¸¦ ÀÌ¿ëÇÏ¿© µ¥ÀÌÅ͸¦ Ç¥ÇöÇÏ´Â ÀåÁ¡
- µ¥ÀÌÅÍÀÇ ±¸Á¶¿Í ½ºÅ¸ÀÏ ½ÃÆ®°¡ ºÐ¸®µÇ¾î Àֱ⠶§¹®¿¡ ¹®¼ÀÇ ½ºÅ¸Àϸ¸ ¹Ù²Ü ¼ö ÀÖ´Ù.
- Áï, µ¥ÀÌÅÍÀÇ ³»¿ëÀ» ¼öÁ¤ÇÏÁö ¾Ê°íµµ ¹®¼ÀÇ ¸ð¾çÀ» ¹Ù²Ü ¼ö ÀÖ´Ù.
- ÀÌ°ÍÀº ¼½ÄÀ» ¹Ù²Ù¾î¾ß ÇÒ ¶§ ¹®¼ ÀüüÀÇ Äڵ带 ¼öÁ¤ÇØ ÁÖ¾î¾ß ÇÏ´Â HTML¿¡¼ ÁøÀϺ¸µÈ Ư¡ÀÌ´Ù.
3-2. µ¥ÀÌÅÍÀÇ È®À强ÀÌ ¶Ù¾î³ª´Ù.
- XML ¹®¼´Â Ãß°¡ÇϱⰡ ¸Å¿ì ½±´Ù. ±×³É XML¹®¼ ³¡ºÎºÐ¿¡ »óÀ§ ³ëµå¿Í °°Àº ±¸Á¶·Î ±â¼úÇÏ¸é µÈ´Ù.
<¿ì¸®Çб³>
<¸ÖƼ¹Ìµð¾îÇаú>
<À̸§>°±âÈÆÀ̸§>
<¼ºº°>³²¼ºº°>
<Çгâ>4ÇгâÇгâ>
<°ÅÁÖÁö>°¥¿ùµ¿°ÅÁÖÁö>
¸ÖƼ¹Ìµð¾îÇаú>
¿ì¸®Çб³> |
À§ ¼Ò½º¿¡ ÇÑ ÇлýÀÇ Á¤º¸¸¦ Ãß°¡·Î ÀÔ·ÂÇÏ·Á¸é °°Àº ±¸Á¶ÀÇ ³»¿ëÀ» Ãß°¡ÇÏ¸é µÈ´Ù.
<¿ì¸®Çб³>
<¸ÖƼ¹Ìµð¾îÇаú>
<À̸§>°±âÈÆÀ̸§>
<¼ºº°>³²¼ºº°>
<Çгâ>4ÇгâÇгâ>
<°ÅÁÖÁö>°¥¿ùµ¿°ÅÁÖÁö>
¸ÖƼ¹Ìµð¾îÇаú>
<¸ÖƼ¹Ìµð¾îÇаú>
<À̸§>ÀÌÁö¼±À̸§>
<¼ºº°>¿©¼ºº°>
<Çгâ>3ÇгâÇгâ>
<°ÅÁÖÁö>źÇöµ¿°ÅÁÖÁö>
¸ÖƼ¹Ìµð¾îÇаú>
¿ì¸®Çб³> |
ÀÌ·¯ÇÑ ÀÚÀ¯·Î¿î ³»¿ëÀÇ È®À强Àº µ¥ÀÌŸº£À̽º¿¡¼ Å×À̺íÀ» Ãß°¡ÇÏ´Â °Í°ú °°Àº ÀüÅëÀûÀÎ È®À强À» ´É°¡ÇÏ´Â XMLÀÇ ÀåÁ¡ÀÌ´Ù.
XML ¹®¼´Â ¹®¼ÀÇ Àüü ±¸Á¶¸¦ ´Ù½Ã ±â¼úÇÒ ÇÊ¿ä°¡ ¾øÀ» »Ó ¾Æ´Ï¶ó XML¹®¼¸¦ »ç¿ëÇÏ´Â ÇÁ·Î±×·¥¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê°íµµ ÀÚÀ¯·Ó°Ô µ¥ÀÌÅ͸¦ ¼öÁ¤, È®ÀåÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù.
3-3. °Ë»öÀÌ ¿ëÀÌÇÏ´Ù.
- XMLÀº µ¥ÀÌÅÍÀÇ ±¸Á¶¿Í ¹®¼°¡ ³ªÅ¸³ª´Â Ç¥Çö(½ºÅ¸ÀÏ)ÀÌ ºÐ¸®µÇ¾î ÀÖ¾î ½ºÅ¸Àϸ¸ ¹Ù²Ù¸é µ¥ÀÌÅÍÀÇ ¼öÁ¤ ¾øÀÌ ¹®¼ÀÇ ¸ð¾çÀ» ¹Ù²Ü ¼ö ÀÖ´Ù.
- µ¥ÀÌÅÍÀÇ È®À强 ¶ÇÇÑ ¶Ù¾î³ª´Ù
- XMLÀÌ HTMLÀ» ¶Ù¾î³Ñ´Â Â÷¼¼´ë ¾ð¾î·Î¼ ÁÖ¸ñ ¹Þ°í ÀÖ´Â ÀÌÀ¯´Â ´Ù¸¥ ¾ð¾î°¡ °®Áö ¸øÇÑ Æ¯Â¡ÀÌ Àֱ⠶§¹®Àε¥, ±×°ÍÀº µ¥ÀÌÅÍ°¡ ¾îµð¿¡ ÀÖ´ÂÁö ±Ý¹æ ãÀ» ¼ö ÀÖ´Ù´Â °ÍÀÌ´Ù.
Áï, °Ë»öÀÌ °¡´ÉÇÏ´Ù´Â °ÍÀÌ´Ù. µ¥ÀÌÅͺ£À̽º°¡ ¾Æ´Ñ ¹®¼ ÀÚü¿¡¼ ÁúÀÇ ¹× °Ë»öÀ» ÇÒ ¼ö ÀÖ´Ù´Â °ÍÀº ´ë´ÜÈ÷ Å« Ư¡ÀÌ´Ù. ÀÌ·¯ÇÑ Æ¯Â¡Àº µ¥ÀÌÅÍ°¡ ±¸Á¶ÈµÇ¾î Àֱ⠶§¹®¿¡ °¡´ÉÇÑ ÀÏÀÌ´Ù.
l ±¸Á¶ÈµÈ µ¥ÀÌÅÍ´Â µ¥ÀÌÅͺ£À̽ºÃ³·³ ÁúÀÇ(Query)¸¦ ÇÒ ¼ö ÀÖ¾î »ç¿ëÀÚÀÇ ÀÔ¸À¿¡ µû¶ó µ¥ÀÌÅ͸¦ ÀÌ¿ëÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù.
l ÀÌ·¯ÇÑ XMLÀÇ Æ¯Â¡(µ¥ÀÌÅÍÀÇ Ç¥Çö¼º, È®À强) ¶§¹®¿¡ XMLÀº HTML°ú ºñ±³°¡ µÇÁö ¾Ê´Â´Ù.
l XMLÀº ±× ±â¼ú°ú ³»¿ë¿¡ ÀÖ¾î Ã¥ ÇѱÇÀ¸·Î ¸¸µé¾îµµ ºÎÁ·ÇÏÁö¸¸, ¿ì¸®´Â XMLÀ» ÀÌ¿ëÇÑ Ç÷¡½Ã¿Í ¿¬µ¿ ºÎºÐÀ» ´Ù·ç±â À§ÇÑ ºÎºÐ¸¸ ¾ð±ÞÇϵµ·Ï ÇÑ´Ù.
4. DOM (Document Object Model)
XML¿¡¼´Â ¾î¶»°Ô µ¥ÀÌÅÍ¿¡ Á¢±ÙÇÏ°í ¿øÇÏ´Â ÀڷḦ »Ì¾Æ³¾ ¼ö ÀÖ³ª?
XMLÀº DOM±â¼úÀ» ÅëÇÏ¿© µ¥ÀÌÅ͸¦ ó¸®ÇÒ ¼ö ÀÖ´Ù. Áï, Ç÷¡½Ã°¡ XML¹®¼¸¦ Çؼ®ÇÏ°í ¿øÇÏ´Â µ¥ÀÌÅ͸¦ ÃßÃâÇÏ°í, ¼öÁ¤ÇÏ´Â µîÀÇ ÀÏÀ» ÇÏ·Á°í ÇÒ ¶§ ÇÊ¿äÇÑ ±â¼úÀÌ ¹Ù·Î DOM±â¼úÀÌ´Ù.
DOM ±â¼úÀ̶õ ¡®¹®¼¿¡ Á¢±ÙÇÏ´Â ¹æ¹ýÀ» °®°í ÀÖ´Â µµ±¸µéÀÇ ¸ðÀ½¡¯ÀÌ´Ù.
½±°Ô ¸»ÇØ DOMÀº Ç÷¡½Ã¿Í °°Àº ÇÁ·Î±×·¥¿¡¼ XMLÀ» ´Ù·ê ¼ö ÀÖ´Â µµ±¸ÀÌ´Ù. DOMÀº ¹®¼¿¡ Á¢±ÙÇÏ°í Á¶ÀÛÇϱâ À§Çؼ ¹®¼¸¦ °èÃþÀû ±¸Á¶·Î Á¤ÀÇÇÏ°í ÀÖ´Ù. ±×·¡¼ DOMÀ» Áö¿øÇÏ´Â ÇÁ·Î±×·¥ ¾ð¾î´Â ÀÚÀ¯·Ó°Ô XML ±¸Á¶ÀÇ ¹®¼¸¦ ´Ù·ê ¼ö ÀÖ´Ù.
¿¹) ¹®¼¸¦ °èÃþÀûÀ¸·Î ±¸Á¶ÈÇÑ´Ù´Â ¸»Àº ¾Æ·¡ÀÇ ±×¸²°ú °°´Ù.
XML¹®¼¸¦ °èÃþÈÇÏ¿© Æ®¸® ÇüÅ·Πº¸¸é ÇϳªÀÇ ³ëµå(¿ä¼Ò:element)¸¦ ±âÁØÀ¸·Î ¹ØÀ¸·Î ³»·Á°¡¸é¼ Àڽijëµå°¡ µÇ°í À§·Î ¿Ã¶ó°¡¸é ºÎ¸ð³ëµå°¡ µÈ´Ù. ±×¸®°í °¢°¢ÀÇ ³ëµå´Â DOMÀÌ Á¤ÀÇÇØ ³õÀº ¸Þ¼Òµå¿Í ¼Ó¼ºµéÀ» ÅëÇØ Á¢±ÙÇÒ ¼ö ÀÖ´Ù. Áï, DOMÀº °¢°¢ÀÇ ³ëµåµé¿¡°Ô Á¢±ÙÇÒ ¼ö ÀÖ´Â ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÏ´Â °ÍÀÌ´Ù. ÀÌ·¯ÇÑ ¿ø¸® ¶§¹®¿¡ DOMÀ» Áö¿øÇÏ´Â ÇÁ·Î±×·¥ ¾ð¾î´Â ÀÚÀ¯·Ó°Ô XML ±¸Á¶ÀÇ ¹®¼¸¦ ´Ù·ê ¼ö ÀÖ´Ù.
DOMÀ» Áö¿øÇÏ´Â ÇÁ·Î±×·¥ ¾ð¾î¿¡´Â ÀÚ¹Ù½ºÅ©¸³Æ®, VB ½ºÅ©¸³Æ® µî askgÀº ¾ð¾îµéÀÌ Àִµ¥, Ç÷¡½Ã ¶ÇÇÑ DOMÀ» Áö¿øÇÏ°í ÀÖ´Ù. Ç÷¡½Ã´Â XML Object ¾ð¾î¸¦ ÅëÇØ DOMÀ» Áö¿øÇÑ´Ù.
l Ç÷¡½Ã¿¡¼ XML¹®¼·Î Á¢±ÙÇÏ´Â ¿ø¸®
1. DOM¿¡¼ Á¤ÀÇÇÑ ¸ðµ¨µéÀ» XML Object°¡ ¸Þ¼Òµå¿Í ÇÁ·ÎÆÛƼ·Î °¡Áö°í ÀÖ´Ù.
2. ±×·¸±â ¶§¹®¿¡ XML Object°¡ XML¹®¼¸¦ ºÒ·¯µé¿© Çؼ®ÇÏ°í °Ë»öÇÒ ¼ö ÀÖ´Ù.
3. ¶ÇÇÑ, PHP, ASPµî ¼¹ö»çÀÌµå ¾ð¾î¿Í °°ÀÌ »ç¿ëÇÏ¸é¼ ¼öÁ¤ÇÒ ¼öµµ ÀÖ´Ù.
5. XMLÀÇ ±âº»±¸Á¶
XML ±¸Á¶´Â 3ºÎºÐÀ¸·Î µÇ¾î Àִµ¥, XML ¼±¾ðºÎ, ¹®¼Çü Á¤ÀÇ, XML ¸öüÀÌ´Ù.
5-1. XML ¼±¾ðºÎ
XML ¹öÀü°ú ¹®ÀÚ Äڵ带 ¼±¾ðÇÑ´Ù.
XML ¹öÀüÀ̶õ W3C¿¡¼ Á¤ÀÇÇÑ XML ½ºÆѹöÀüÀ» ¶æÇϴµ¥, ÀÌ ¹öÀüÀ» Ç¥±âÇÔÀ¸·Î XML Çؼ®±â(Parser)¿¡°Ô ¾Ë·ÁÁØ´Ù.
EncodingÀº ¾î¶² ¹®ÀÚ¸¦ »ç¿ëÇÒÁö¸¦ ³ªÅ¸³»´Âµ¥,
ÇѱÛÀ» »ç¿ëÇÏ·Á¸é encoding=¡±ECU-KR¡±?À̶ó°í ÀÔ·ÂÇÏ¸é µÈ´Ù.
5-2. ¹®¼Çü Á¤ÀÇ ºÎºÐ (DTD ¶Ç´Â ½ºÅ°¸¶)
ÀÌ ºÎºÐÀº DTD(Document Type Definition)³ª ½ºÅ°¸¶(Schema)¸¦ ±â¼úÇÏ´Â °÷ÀÌ´Ù.
DTD ¶Ç´Â ½ºÅ°¸¶´Â XML ¹®¼¸¦ ±¸¼ºÇÏ´Â ¿ä¼ÒµéÀ» Á¤ÀÇÇÏ´Â °÷À¸·Î ÀÌ·¯ÇÑ ±¸¼º¿ä¼Ò´Â »ç¿ëÀÚ°¡ ¸¸µé¾î ³¾ ¼ö ÀÖ´Ù.
¿¹¸¦ µé¾î ű׾ȿ¡ ¾î¶² ¼Ó¼ºÀÌ µé¾îÀÖ´ÂÁö, ¸î °³ÀÇ µ¥ÀÌÅ͸¦ ±¸¼ºÇÒ ¼ö ÀÖ´ÂÁö, °èÃþ°£ÀÇ ±¸Á¶´Â ¾î¶»°Ô Ç¥ÇöÇÒ ¼ö ÀÖ´ÂÁö µî¿¡ ´ëÇØ Á¤ÀÇÇÒ ¼ö ÀÖÀ¸¸ç ÀÌ°ÍÀ» DTD ¶Ç´Â ½ºÅ°¸¶¶ó°í ÇÑ´Ù.
DTD´Â ¹®¼ ³»ºÎ¿¡ ¾²ÀÌ´Â DTD¿Í ¿ÜºÎ¿¡¼ ºÒ·¯¿À´Â DTD·Î ºÐ¸®ÇÒ ¼ö ÀÖ´Ù.
ÇÏÁö¸¸ °³ÀΠȥÀÚ¼ »ç¿ëÇÏ´Â XML¹®¼¿¡´Â DTD°¡ ±×´ÙÁö ÇÊ¿äÇÏÁö ¾Ê´Ù. DTD¸¦ ÇÊ¿ä·Î ÇÏ´Â XML ¹®¼´Â ±â¾÷°£ÀÇ ¹®¼¸¦ ÅëÇÕÇÏ´Â µîÀÇ ±Ô¸ð°¡ Å« ÇÁ·ÎÁ§Æ®¶ó°í ÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù.
ÇϳªÀÇ ¿¹¸¦ µé¾î ±â¾÷°£ XML ¹®¼¸¦ °øÀ¯ÇÑ´Ù°í Çϸé XML ¹®¼¸¦ ±â¼úÇÏ´Â ¾ç½Ä Áï, ű״ ¸î °³¸¦ »ç¿ëÇÏ°í ¾î¶² °èÃþ ±¸Á¶·Î ÇÒ °ÍÀÎÁö µîÀ» ¹Ì¸® Á¤ÇØµÎ°í ¹Ýµå½Ã °°Àº ¾ç½ÄÀ» »ç¿ëÇؾßÁö¸¸ °øÀ¯Çؼ »ç¿ëÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù.
¿ì¸®°¡ »ç¿ëÇÒ Ç÷¡½Ã¿¡¼´Â DTDºÎºÐÀ» ÀÐÁö ¾Ê´Â´Ù. µû¶ó¼ Ç÷¡½Ã Çϳª·Î XML¹®¼¸¦ ´Ù·ê ¶§´Â DTDºÎºÐÀº Å©°Ô Áß¿äÇÏÁö ¾ÊÀ» ¼ö ÀÖ´Ù. ÇÏÁö¸¸, XML¹®¼¸¦ ´Ù¸¥ ¾ÖÇø®ÄÉÀ̼ǿ¡ µ¿ÀÏÇÏ°Ô Àû¿ëÇϱâ À§Çؼ´Â DTDºÎºÐÀ» ¾Ë°í ÀÖ¾î¾ß¸¸ ÇϹǷΠÀÌÇØÇØ µÎµµ·Ï ÇÑ´Ù.
5-3. XML ¹®¼ ¸öü(Body)
XMLÀÇ ±¸Á¶ Áß ¸¶Áö¸· ¼¼ ¹ø° ºÎºÐÀº ½ÇÁ¦ ¹®¼¸¦ ÀÛ¼ºÇÏ´Â ¸öüºÎºÐÀÌ´Ù.
HTML°ú ´Þ¸® XMLÀº ±²ÀåÈ÷ ±î´Ù·Î¿î ¾ð¾îÀÌ´Ù. DTD³ª ½ºÅ°¸¶´Â ³ªÁß¿¡ °øºÎÇÏ´õ¶óµµ »ó°ü¾øÁö¸¸ ½ÇÁ¦·Î XML ¹®¼¸¦ ±â¼úÇÏ´Â ¸öü ºÎºÐÀº W3C¿¡¼ ¸¸µç XML ½ºÆå¿¡ ¸Âµµ·Ï ±â¼úÇØ¾ß ÇÑ´Ù. ±×·¡¾ß Ç÷¡½Ã¿¡¼ XML Object¸¦ Àß ÀоîµéÀÏ ¼ö Àֱ⠶§¹®ÀÌ´Ù.
XML ű׸¦ ±â¼úÇÒ ¶§ ÁÖÀÇÇÒ Á¡
l ¸ðµç ű׵éÀº ½ÖÀ» ÀÌ·ç¾î¾ß ÇÑ´Ù.
»ý·«ÀÌ ±â´ÉÇÑ Å±װ¡ ÀÖ´Â HTML°ú ´Þ¸® XMLÀº ¹Ýµå½Ã ½ÃÀÛűװ¡ ³¡Å±׸¦ ½ÖÀ¸·Î ¹¾î¾ß¸¸ ÇÑ´Ù. ¸¸¾à ű׾ȿ¡ µ¥ÀÌÅÍ ÀÚ·á°¡ ¾ø´Ù¸é ¾Æ·¡¿Í °°¾Æ »ç¿ëÇÒ ¼ö ÀÖ´Ù.
l ¹Ýµå½Ã ÃÖ»óÀ§ ³ëµå´Â ÇÑ °³ÀÇ root ³ëµå·Î ½ÃÀÛÇÑ´Ù
<¸ÖƼ¹Ìµð¾îÇаú>
<À̸§>ÀÌÁö¼±À̸§>
<¼ºº°>¿©¼ºº°>
<Çгâ>3ÇгâÇгâ>
<°ÅÁÖÁö>źÇöµ¿°ÅÁÖÁö>
¸ÖƼ¹Ìµð¾îÇаú> |
¿©±â¼ ROOT³ëµå´Â <¸ÖƼ¹Ìµð¾îÇаú>ÀÌ´Ù
Áï, XML ¹®¼ÀÇ ½ÃÀÛÀº ÇϳªÀÇ ROOT³ëµå¿¡¼ ½ÃÀÛÇÑ´Ù.
l XML ű״ °èÃþÀû ±¸Á¶·Î ÀÌ·ç¾îÁö±â ¶§¹®¿¡ ÀûÀýÇÑ ÁßøÀÌ µÇ´ÂÁö È®ÀÎÇÑ´Ù.
¹Û¿¡ ÀÖ´Â ³ëµå(ºÎ¸ð ³ëµå)´Â ¾È¿¡ ÀÖ´Â ³ëµåµé(Àڽijëµå)À» ¿ÏÀüÈ÷ Æ÷ÇÔÇØ¾ß ÇÑ´Ù. Àڽijëµå°¡ ºÎ¸ð³ëµå¿¡ ÀÖÁö ¾ÊÀ¸¸é À߸øµÈ XML ¹®¼ÀÌ´Ù.
6. Well-Formed XML ¹®¼¿Í Valid XML ¹®¼
. Well-Formed XML ¹®¼
DTD³ª ½ºÅ°¸¶¸¦ »ç¿ëÇÏÁö ¾Ê°í ÃÖ¼ÒÇÑÀÇ ¹®¹ý¿¡ ¸Â°Ô ±â¼úÇÑ XML¹®¼¸¦ ¸»ÇÑ´Ù.
. Valid XML ¹®¼
DTD¸¦ °¡Áö°í ÀÖÀ¸¸ç ±× DTD¿¡ µû¶ó Á¦´ë·Î ¸¸µé¾îÁø XML ¹®¼¸¦ ¸»ÇÑ´Ù. Valid XMLÀº ´ç¿¬È÷ well-FormedÇÏ´Ù
7. XMLÀ» ´Ù·ç´Â ¸Þ¼Òµå¿Í ¼Ó¼º ¹× ±âŸƯ¼º
Àý´ë ¿Ü¿ìÁö ¸»°í, ¡®¾Æ! ÀÌ ¸Þ¼Òµå´Â ÀÌ·² ¶§ ÀÌ·¸°Ô »ç¿ëÇÏ´Â °ÍÀ̱¸³ª¡¯¶ó°í¸¸ ÀÌÇØÇϵµ·ÏÇÏÀÚ
7-1. XML °´Ã¼ÀÇ ¸Þ¼Òµå ¿ä¾à
¸Þ¼Òµå |
¼³¸í |
XML.appendChild |
ÁöÁ¤µÈ °´Ã¼ÀÇ ÀÚ½Ä ¸ñ·Ï ³¡¿¡ ³ëµå¸¦ Ãß°¡ |
XML.cloneNode |
ÁöÁ¤µÈ ³ëµå¸¦ º¹Á¦ÇÏ°í, ¼±Åà ¹Ýº¹ÀûÀ¸·Î ¸ðµç ÀÚ½ÄÀ» º¹Á¦ |
XML.createElement |
»õ·Î¿î XML ¿ä¼Ò¸¦ ¸¸µç´Ù |
XML.createTextNode |
»õ·Î¿î XML ÅؽºÆ® ³ëµå¸¦ ¸¸µç´Ù |
XML.getBytesLoaded |
ÁöÁ¤µÈ XML ¹®¼¿ëÀ¸·Î ·ÎµåµÈ ¹ÙÀÌÆ® ¼ö¸¦ ¹Ýȯ |
XML.getBytesTotal |
XML ¹®¼ÀÇ Å©±â¸¦ ¹ÙÀÌÆ®¼ö·Î ¹Ýȯ |
XML.hasChildNodes |
ÁöÁ¤µÈ ³ëµå¿¡ Àڽijëµå°¡ ÀÖÀ¸¸é true, ±×·¸Áö¾ÊÀ¸¸é false¸¦ ¹Ýȯ |
XML.insertBefore |
ÁöÁ¤µÈ ³ëµåÀÇ ÀÚ½Ä ¸ñ·Ï¿¡¼ ±âÁ¸ ³ëµå ¾Õ¿¡ ³ëµå¸¦ »ðÀÔ |
XML.load |
URL¿¡¼ XML °´Ã¼°¡ ÁöÁ¤ÇÏ´Â ¹®¼¸¦ ·Îµå |
XML.parseXML |
XML¹®¼¸¦ ÁöÁ¤µÈ XML °´Ã¼ Æ®¸®·Î ÆÄ½Ì |
XML.removeNode |
ÁöÁ¤µÈ ³ëµå¸¦ ºÎ¸ð¿¡¼ Á¦°Å |
XML.send |
ÁöÁ¤µÈ XML °´Ã¼¸¦ URL·Î º¸³½´Ù |
XML.sendAndLoad |
ÁöÁ¤µÈ XML °´Ã¼¸¦ URL·Î º¸³»°í, ¼¹ö ÀÀ´äÀ» ´Ù¸¥ XML °´Ã¼·Î ·Îµå |
XML.toString |
ÁöÁ¤µÈ ³ëµå¿Í ÀÚ½ÄÀ» XML ÅؽºÆ®·Î º¯È¯ |
7-2. XML °´Ã¼ÀÇ ¼Ó¼º ¿ä¾à
¼Ó¼º |
¼³¸í |
XML.contentType |
¼¹ö¿¡ Àü¼ÛµÈ MIME À¯Çü (Àбâ/¾²±â) |
XML.docTypeDecl |
XML ¹®¼ÀÇ DOCTYPE ¼±¾ð¿¡ ´ëÇÑ Á¤º¸¸¦ ¼³Á¤ÇÏ°í ¹Ýȯ (Àбâ/¾²±â) |
XML.firstChild |
ÁöÁ¤µÈ ³ëµåÀÇ ¸ñ·Ï¿¡¼ ù ¹ø° ÀÚ½ÄÀ» ÂüÁ¶(ÀбâÀü¿ë) |
XML.ignoreWhite |
True·Î ¼³Á¤µÈ °æ¿ì °ø¹é¸¸ Æ÷ÇÔÇÑ ÅؽºÆ® ³ëµå´Â ÆĽ̰úÁ¤¿¡¼ ¹ö·ÁÁø´Ù(Àбâ/¾²±â) |
XML.lastChild |
ÁöÁ¤µÈ ³ëµåÀÇ ¸ñ·Ï¿¡¼ ¸¶Áö¸· ÀÚ½ÄÀ» ÂüÁ¶(ÀбâÀü¿ë) |
XML.loaded |
ÁöÁ¤µÈ XML °´Ã¼°¡ ·ÎµåµÇ¾ú´ÂÁö È®ÀÎ(ÀбâÀü¿ë) |
XML.nextSibling |
ºÎ¸ð³ëµåÀÇ Àڽĸñ·Ï¿¡¼ ´ÙÀ½ ÇüÁ¦ ³ëµå¸¦ ÂüÁ¶(ÀбâÀü¿ë) |
XML.nodeName |
XML ¿ä¼ÒÀÇ ÅÂ±× À̸§À» ¹Ýȯ(Àбâ/¾²±â) |
XML.nodeType |
XML dyth Ehsms ÅؽºÆ® ³ëµåµî ÁöÁ¤µÈ ³ëµåÀÇ À¯ÇüÀ» ¹Ýȯ(ÀбâÀü¿ë) |
XML.Value |
³ëµå°¡ ÅؽºÆ® ³ëµåÀÏ °æ¿ì ÁöÁ¤µÈ ³ëµåÀÇ ÅؽºÆ®¸¦ ¹Ýȯ(Àбâ/¾²±â) |
XML.parentNode |
ÁöÁ¤µÈ ³ëµåÀÇ ºÎ¸ð³ëµå¸¦ ÂüÁ¶(ÀбâÀü¿ë) |
XML.previousSibling |
ºÎ¸ð³ëµåÀÇ Àڽĸñ·Ï¿¡¼ ÀÌÀü ÇüÁ¦ ³ëµå¸¦ ÂüÁ¶(ÀбâÀü¿ë) |
XML.status |
XML ¹®¼ ÆĽÌÀÛ¾÷ÀÇ ¼º°ø ¶Ç´Â ½ÇÆи¦ ³ªÅ¸³»´Â ¼ýÀÚ »óÅÂÀÇ Äڵ带 ¹Ýȯ(ÀбâÀü¿ë) |
XML.xmlDecl |
XML ¹®¼ÀÇ ¹®¼¼±¾ð¿¡ ´ëÇÑ Á¤º¸¸¦ ¼³Á¤ÇÏ°í ¹Ýȯ(Àбâ/¾²±â) |
* MIME (Multipurpose Internet Mail Extension)À̶õ?
¸» ±×´ë·Î¸¦ Ç®ÀÌ Çϸé "´Ù¸ñÀû ÀÎÅÍ³Ý ¸ÞÀÏ È®Àå"À̶ó°í ÇÒ ¼ö ÀÖ´Ù. Á»´õ ¾Ë±â ½±°Ô Ç¥ÇöÇÑ´Ù¸é "ÀÎÅÍ³Ý ¸ÞÀÏ ±³È¯À» À§ÇÑ ¸ÖƼ¹Ìµð¾î ¹®¼ ŸÀÔÀÇ Á¤ÀÇ"¶ó°í ÇÒ ¼ö ÀÖ´Ù. MIME(¸¶ÀÓ À̶ó°í ÀнÀ´Ï´Ù)Àº 7°³ ŸÀÔÀ¸·Î ±¸ºÐÀ» Çϴµ¥ °¢°¢ text, multipart, message, application, image, audio, video ÀÌ´Ù. ±×¸®°í °¢ ŸÀÔÀÇ ÇÏÀ§·Î ±× ¾Æ·¡ÀÇ Å¸ÀÔµéÀÌ Á¸ÀçÇÑ´Ù. ¿¹¸¦ µé¸é video´Â ±× ¾Æ·¡·Î avi, mpeg, mov µîÀÌ ÀÖÀ» ¼ö ÀÖ´Ù. MIMEÀÌ Á¸ÀçÇÏ´Â ÀÌÀ¯´Â ÀÎÅÍ³Ý ¸ÞÀÏ·Î ÀڷḦ ÁÖ°í ¹ÞÀ» ¶§ ¼·Î ÁÖ°í ¹Þ´Â ¹®¼ÀÇ Å¸ÀÔÀ» Á¤ÀÇÇÔÀ¸·Î½á À̸¦ º¸³»°í ¹Þ´Â ÂÊÀÌ ¿øÈ°ÇÏ°Ô ÇÔÀÌ ±× ÀÌÀ¯Àε¥, ´©±º°¡ ¾î¶² ¹®¼¸¦ º¸³Â´Âµ¥ ¹Þ´Â ¸ÞÀÏ ¼¹ö°¡ À̸¦ Çؼ®ÇÏÁö ¸øÇÑ´Ù¸é ¹Ù·Î ASCII(¾Æ½ºÅ°)¹®Àڷθ¸ ³ªÅ¸³¯ ¼öµµ ÀÖ°í, ³»°¡ º¸³½ ÆÄÀÏÀº ¿öµå ÆÄÀÏÀε¥ ¹ÞÀº ¼¹ö°¡ À̸¦ Á¦´ë·Î ÀνÄÇÏÁö ¸øÇؼ ASCII Äڵ常 ³ªÅ¸³´Ù¸é Ȳ´çÇÒ °ÍÀÌ´Ù. ±×·¡¼ ³ª¿Â ±Ô°ÝÀ̸ç MIMEµµ ¹öÀüÀÌ ÀÖ¾î¼ °è¼Ó °³·®µÇ°í »õ·Î¿î ŸÀÔµéÀ» ¸¸µé¾î ³»°í ÀÖ´Ù
7-3. XML °´Ã¼ÀÇ Ä÷º¼Ç ¿ä¾à
Collection |
¼³¸í |
XML.attributes |
ÁöÁ¤µÈ ³ëµåÀÇ ¸ðµî ¼Ó¼ºÀ» Æ÷ÇÔÇÏ´Â °ü·Ã ¹è¿À» ¹Ýȯ(Àбâ/¾²±â) |
XML.childNodes |
ÁöÁ¤µÈ ³ëµåÀÇ ÀÚ½Ä ³ëµå¿¡ ´ëÇÑ ÂüÁ¶°¡ Æ÷ÇÔµÈ ¹è¿À» ¹Ýȯ(Àбâ/¾²±â) |
7-4. XML °´Ã¼ÀÇ À̺¥Æ® Çڵ鷯 ¿ä¾à
À̺¥Æ® Çڵ鷯 |
¼³¸í |
XML.onData |
XML ÅؽºÆ®°¡ ¼¹ö¿¡¼ ¿ÏÀüÈ÷ ·ÎµåµÈ °æ¿ì ¶Ç´Â ¼¹ö¿¡¼ XML ÅؽºÆ®¸¦ ´Ù¿î·ÎµåÇÒ ¶§ ¿À·ù°¡ ¹ß»ýÇÏ´Â °æ¿ì È£ÃâµÇ´Â Äݹé ÇÔ¼ö |
XML.onLoad |
Load ¹× sendAndLoad¿¡ ´ëÇÑ ÄݹéÇÔ¼ö |
Ç÷¡½Ã¿¡¼ Áö¿øÇÏ´Â XMLÀ» ´Ù·ç´Â ¸Þ¼Òµå¿Í ¼Ó¼º, ¹è¿, À̺¥Æ® Çڵ鷯¸¸ ´ëÃæ Á¤¸®Çصµ À§¿Í °°ÀÌ ¸¹Àºµ¥, ¸ðµÎ ¾Ï±âÇÏ·Á ÇÏÁö ¸»°í, »çÀüÀ» ã¾Æº¸µí ÇÊ¿äÇÑ ¾×¼ÇÀÌ ³ª¿ÔÀ» ¶§ ±× ºÎºÐÀ» ã¾Æ »ç¿ë¹ýÀ» º¸°í ÀÀ¿ëÇÏ±æ ¹Ù¶õ´Ù.
¿¹¸¦ µé¾î, ¼Ò¸®¿¡ °üÇÑ ¾×¼ÇÀº Sound Object, ¹«ºñŬ¸³¿¡ ´ëÇÑ ¾×¼ÇÀº MoviClip Object, »ö¿¡ ´ëÇÑ ¾×¼ÇÀº Color Object, XMLÀº XML Object¿¡ ÀÖ´Ù´Â ½ÄÀ¸·Î ÀÌÇØÇÑ ÈÄ ÀÌ °´Ã¼¼Ó¿¡ ÀÖ´Â ±â´ÉµéÀº ÇÊ¿äÇÒ ¶§¸¶´Ù Çϳª¾¿ ã¾Æº¸¸é¼ °øºÎÇÏ´Â °ÍÀÌ ¹Ù¶÷Á÷ÇÑ´Ù°í »ý°¢ÇÑ´Ù.
Ç÷¡½Ã¿¡¼ XML µ¥ÀÌÅÍ Ã³¸® ±â¹ý
1. XML ¹®¼ÀÛ¼ºÇϱâ
XML °´Ã¼ÀÇ ¸Þ¼Òµå Áß
XML.appendChild (ÁöÁ¤µÈ °´Ã¼ÀÇ ÀÚ½Ä ¸ñ·Ï ³¡¿¡ ³ëµå¸¦ Ãß°¡ÇÑ´Ù)
XML.createElement (»õ·Î¿î XML ¿ä¼Ò¸¦ ¸¸µç´Ù)
XML.createTextNode (»õ·Î¿î XML ÅؽºÆ® ³ëµå¸¦ ¸¸µç´Ù)
¼¼°¡Áö´Â ¸¸µé¾îÁø XML ¹®¼¸¦ ºÒ·¯¿Í¼ Á¢±ÙÇÏ´Â °ÍÀÌ ¾Æ´Ï°í, Ç÷¡½Ã¿¡¼ Á÷Á¢ XML ¹®¼¸¦ ¸¸µå´Â ¸Þ¼ÒµåÀÌ´Ù.
¿¹Á¦) ¾Æ·¡ÀÇ XML¹®¼¸¦ Ç÷¡½Ã¿¡¼ ¸¸µé±â
<¸ÖƼ¹Ìµð¾îÇаú>
<À̸§>ÀÌÁö¼±À̸§>
<¼ºº°>¿©¼ºº°>
<Çгâ>3ÇгâÇгâ>
¸ÖƼ¹Ìµð¾îÇаú> |
l XML ¹®¼ ¸¸µå´Â °úÁ¤
1. XML.createElement()¸¦ »ç¿ëÇؼ ³ëµå¸¦ »ý¼º
2. ³ëµå¿¡ ÇØ´çÇÏ´Â TEXT¸¦ ÀÔ·ÂÇϱâ À§ÇØ XML.createTextNode()¸Þ¼Òµå »ç¿ë
3. ¸¶Áö¸·À¸·Î XML.appendChild()¸Þ¼Òµå¸¦ »ç¿ëÇÏ¿© XML ¹®¼¸¦ Çü¼ºÇÑ´Ù.
. XML.createElement() ¸Þ¼Òµå – ³ëµå »ý¼ºÇϱâ
// XMLÀ» »ç¿ëÇϱâ À§ÇØ °´Ã¼ »ý¼º
myXML = new XML( );
//³ëµå »ý¼º
MyXML.createElement ("¸ÖƼ¹Ìµð¾îÇаú");
trace(MyXML.createElement ("¸ÖƼ¹Ìµð¾îÇаú")); |
// XMLÀ» »ç¿ëÇϱâ À§ÇØ °´Ã¼ »ý¼º
myXML = new XML( );
//³ëµå »ý¼º
Node = MyXML.createElement ("¸ÖƼ¹Ìµð¾îÇаú");
Trace(Node); |
. XML.appendChild () ¸Þ¼Òµå – Àڽijëµå Ãß°¡
// XMLÀ» »ç¿ëÇϱâ À§ÇØ °´Ã¼ »ý¼º
myXML = new XML( );
//³ëµå »ý¼º
Node = MyXML.createElement ("¸ÖƼ¹Ìµð¾îÇаú");
trace(myXML); |
// XMLÀ» »ç¿ëÇϱâ À§ÇØ °´Ã¼ »ý¼º
myXML = new XML( );
//³ëµå »ý¼º
Node = MyXML.createElement ("¸ÖƼ¹Ìµð¾îÇаú");
MyXML.appendChild(node);
trace(myXML); |
. XML.createTextNode() ¸Þ¼Òµå – ¹®ÀÚ(text) µ¥ÀÌÅÍ ¸¸µé±â
myXML = new XML(); // XMLÀ» »ç¿ëÇϱâ À§ÇØ °´Ã¼ »ý¼º
// ³ëµå »ý¼º
node = myXML.createElement ("À̸§");
//<À̸§>ÀÌÁö¼±À̸§> À» ÀÛ¼º
text = myXML.createTextNode("ÀÌÁö¼±");
node.appendChild(Text);
trace(node); |
myXML = new XML();
aaa = myXML.createElement ("¸ÖƼ¹Ìµð¾îÇаú");
node = myXML.createElement ("À̸§");
text = myXML.createTextNode("ÀÌÁö¼±");
node.appendChild(text);
aaa.appendChild(node)
myXML.appendChild(aaa);
trace(myXML); |
myXML = new XML(); // XMLÀ» »ç¿ëÇϱâ À§ÇØ °´Ã¼ »ý¼º
// ³ëµå »ý¼º
aaa = myXML.createElement ("¸ÖƼ¹Ìµð¾îÇаú");
//<À̸§>ÀÌÁö¼±À̸§> À» ÀÛ¼º
node = myXML.createElement ("À̸§");
text = myXML.createTextNode("ÀÌÁö¼±");
node.appendChild(Text);
aaa.appendChild(node); //ºÎ¸ð³ëµå<¸ÖƼ¹Ìµð¾îÇаú>¿¡ ¿¬°á
//<¼ºº°>³²¼ºº°> À» ÀÛ¼º
node1 = myXML.createElement ("¼ºº°");
text1 = myXML.createTextNode("¿©");
node1.appendChild(Text1);
aaa.appendChild(node1); //ºÎ¸ð³ëµå<¸ÖƼ¹Ìµð¾îÇаú>¿¡ ¿¬°á
//<Çгâ>À¯±¤¿Çгâ> À» ÀÛ¼º
node2 = myXML.createElement ("Çгâ");
text2 = myXML.createTextNode("3Çгâ");
node2.appendChild(Text2);
aaa.appendChild(node2); //ºÎ¸ð³ëµå<¸ÖƼ¹Ìµð¾îÇаú>¿¡ ¿¬°á
myXML.appendChild(aaa); //XMLÃÖ»óÀ§³ëµå¿¡ ¿¬°á
trace(myXML); |
2. XML ¹®¼¿¡ Àִ ƯÁ¤ ¿ä¼Ò(³ëµå) º¹»çÇϱâ
. XML.cloneNode() ¸Þ¼Òµå – ³ëµå º¹»ç
myXML = new XML();
aaa = myXML.createElement("¸ÖƼ¹Ìµð¾îÇаú");
node = myXML.createElement("À̸§");
text = myXML.createTextNode("ÀÌÁö¼±");
node.appendChild(Text);
aaa.appendChild(node);
myXML.appendChild(aaa);
trace(myXML);
copyXML = myXML.cloneNode(true);
copyXML1 = aaa.cloneNode(false);
trace(copyXML);
trace(copyXML1); |
3. XML ¹®¼ÀÇ Æ¯Á¤ ³ëµå¿¡ ÀÚ½Ä ³ëµåµéÀÇ Á¸Àç¿©ºÎ È®ÀÎÇϱâ
. XML.hasChildNode() ¸Þ¼Òµå – ÁöÁ¤µÈ ³ëµå¿¡ ÀÚ½ÄÀÌ ÀÖÀ¸¸é true, ¾øÀ¸¸é false
myXML = new XML();
aaa = myXML.createElement ("¸ÖƼ¹Ìµð¾îÇаú");
node= myXML.createElement ("À̸§");
text = myXML.createTextNode("À¯±¤¿");
node.appendChild(Text);
aaa.appendChild(node);
myXML.appendChild(aaa);
if (myXML.hasChildNodes) {
trace("Àڽijëµå°¡ Á¸ÀçÇÕ´Ï´Ù.");
} else {
trace("Àڽijëµå°¡ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù..");
} |
4. XML ¹®¼ Çؼ®Çϱâ
. XML.parseXML(source) – Ç÷¡½Ã ³»ºÎ¿¡¼ XML ¹®¼¸¦ Çؼ®
¿¹Á¦) ¾Æ·¡ÀÇ XML Äڵ带 parseXML() À» »ç¿ëÇÏ¿© Ç÷¡½Ã ³»ºÎ¿¡¼ ó¸®Çϱâ
<»óÇ°>
<ºÐ·ù>7ºÐ·ù>
<À̸§>Ä«¸Þ¶óÀ̸§>
<°¡°Ý>300000°¡°Ý>
<»çÁø>Ä«¸Þ¶ó.jpg»çÁø>
»óÇ°> |
myXML = new XML( );
myXML.parseXML("<»óÇ°><ºÐ·ù>7ºÐ·ù><À̸§>Ä«¸Þ¶óÀ̸§><°¡°Ý>300000°¡°Ý><»çÁø>Ä«¸Þ¶ó.jpg»çÁø>»óÇ°>");
trace(myXML); |
myXML = new XML( );
source="<»óÇ°><ºÐ·ù>7ºÐ·ù><À̸§>Ä«¸Þ¶óÀ̸§><°¡°Ý>300000°¡°Ý><»çÁø>Ä«¸Þ¶ó.jpg»çÁø>»óÇ°>"
myXML.parseXML(source);
trace(myXML); |
l XML ¹®¼¸¦ Ç÷¡½Ã ³»ºÎ¿¡¼ ó¸®ÇÒ ¶§´Â parseXML() ¸Þ¼ÒµåÀÇ °ýÈ£()¾È¿¡ ¹®ÀÚ¿·Î ÀÔ·ÂÇÏ¸é µÈ´Ù.
l ÁÖÀÇÁ¡ : °ýÈ£ ¾È¿¡ °ø¹é,ÅÇ,¿£ÅÍ°¡ µé¾î°¡¸é ¾ÈµÈ´Ù
l °ø¹é,ÅÇ,¿£Å͵鵵 Ç÷¡½Ã¿¡¼´Â ÇϳªÀÇ Element(³ëµå)·Î °£ÁÖÇÑ´Ù
5. ¿ÜºÎ¿¡¼ XML ¹®¼¸¦ Ç÷¡½Ã·Î ºÒ·¯¿À±â
. XML.load() – ¸Þ¼Òµå
XML ¹®¼¸¦ ºÒ·¯¿Í¼ XML °èÃþ ±¸Á¶·Î º¯È¯ÇÏ´Â ¸Þ¼Òµå
. XML.OnLoad() – À̺¥Æ® Çڵ鷯
XML ¹®¼°¡ ¸ðµÎ ¿ÜºÎ¿¡¼ ¹Þ¾ÆÁö°í ³ ÈÄ, ÀÚµ¿À¸·Î ÁöÁ¤µÈ ÇÔ¼ö¸¦ È£ÃâÇÑ´Ù
System.useCodepage = true;
myxml = new XML();
//·ÎµùÀÌ µÇ¸é loadEND ÇÔ¼ö ½ÇÇà
myxml.onLoad = loadEnd;
myXML.load("»óÇ°.xml");
function loadEnd() {
// trace(myXML)°ú °°À½
trace(this);
} |
6. Ç÷¡½Ã¿¡¼ XML ¹®¼ÀÇ Æ¯Á¤ ³ëµå Á¢±ÙÇϱâ
. firstChild¿Í nextSibling
myXML = new XML();
source="<»óÇ°><ºÐ·ù>7ºÐ·ù><À̸§>Ä«¸Þ¶óÀ̸§><°¡°Ý>300000°¡°Ý><»çÁø>Ä«¸Þ¶ó.jpg»çÁø>»óÇ°>"
myXML.parseXML(source);
// myXML ÀÌÇÏ¿¡ ÀÚ¼ÕµéÀÌ ¸ðµÎ Ãâ·ÂµË´Ï´Ù.
trace(myXML);
//<»óÇ°> ÀÌÇÏ ÀÚ¼ÕµéÀÌ ¸ðµÎ Ãâ·ÂµË´Ï´Ù.
trace(myXML.firstChild);
// <ºÐ·ù> ÀÌÇÏ ÀÚ¼ÕµéÀÌ Ãâ·ÂµË´Ï´Ù.
trace(myXML.firstChild.firstChild);
// <À̸§> ÀÌÇÏ ÀÚ¼ÕµéÀÌ Ãâ·ÂµË´Ï´Ù.
trace(myXML.firstChild.firstChild.nextSibling);
// <°¡°Ý> ÀÌÇÏ ÀÚ¼ÕµéÀÌ Ãâ·ÂµË´Ï´Ù.
trace(myXML.firstChild.firstChild.nextSibling.nextSibling);
// <»çÁø> ÀÌÇÏ ÀÚ¼ÕµéÀÌÃâ·ÂµË´Ï´Ù.
trace(myXML.firstChild.firstChild.nextSibling.nextSibling.nextSibling); |
. lastChild, parentNode, previousSibling
myXML = new XML();
source="<»óÇ°><ºÐ·ù>7ºÐ·ù><À̸§>Ä«¸Þ¶óÀ̸§><°¡°Ý>300000°¡°Ý><»çÁø>Ä«¸Þ¶ó.jpg»çÁø>»óÇ°>"
myXML.parseXML(source);
trace(myXML.firstChild.lastChild);
trace(myXML.firstChild.lastChild.previousSibling);
trace(myXML.firstChild.lastChild.previousSibling.parentNode); |
. ÅؽºÆ® °ªÀ̳ª ³ëµå À̸§À» °¡Á®¿À´Â ¼Ó¼ºµé
myXML = new XML();
source = "<»óÇ°><ºÐ·ù>7ºÐ·ù><À̸§>Ä«¸Þ¶óÀ̸§><°¡°Ý>300000°¡°Ý><»çÁø>Ä«¸Þ¶ó.jpg»çÁø>»óÇ°>";
myXML.parseXML(source);
trace(myXML.firstChild.nodeName);
trace(myXML.firstChild.firstChild.nodeValue);
trace(myXML.firstChild.firstChild.firstChild.nodeValue);
trace(myXML.firstChild.nodeType);
trace(myXML.firstChild.firstChild.firstChild.nodeType); |
7. ¿ÜºÎ¿¡¼ ºÒ·¯¿Â XML ¹®¼¿¡ °ø¹é Á¦°ÅÇϱâ
<»óÇ°>
<ºÐ·ù>7ºÐ·ù>
<À̸§>Ä«¸Þ¶óÀ̸§>
<°¡°Ý>300000°¡°Ý>
<»çÁø>Ä«¸Þ¶ó.jpg»çÁø>
»óÇ°> |
<»óÇ°><ºÐ·ù>7ºÐ·ù><À̸§>Ä«¸Þ¶óÀ̸§><°¡°Ý>300000°¡°Ý><»çÁø>Ä«¸Þ¶ó.jpg»çÁø>»óÇ°> |
System.useCodepage = true;
myXML = new XML();
myXML.ignoreWhite = true
myXML.onLoad = loadEND;
myXML.load("»óÇ°.xml");
function loadEnd() {
trace(myXML.firstChild.firstChild.nodeName);
} |
Ãâó : My Great History Diary
-------------------------------------------------------------------------------
< Âü°í - Å×½ºÆ® >
myXML = new XML( );
myXML.parseXML("<»óÇ°><ºÐ·ù>7ºÐ·ù><À̸§>Ä«¸Þ¶óÀ̸§><°¡°Ý>300000°¡°Ý><»çÁø>Ä«¸Þ¶ó.jpg»çÁø>»óÇ°>");
trace(myXML); //<»óÇ°><ºÐ·ù>7ºÐ·ù><À̸§>Ä«¸Þ¶óÀ̸§><°¡°Ý>300000°¡°Ý><»çÁø>Ä«¸Þ¶ó.jpg»çÁø>»óÇ°>
trace(myXML.firstChild.firstChild); //<ºÐ·ù>7ºÐ·ù> trace(myXML.firstChild.firstChild.nextSibling); //<À̸§>Ä«¸Þ¶óÀ̸§> trace(myXML.firstChild.firstChild.nextSibling.nextSibling); //<°¡°Ý>300000°¡°Ý> trace(myXML.firstChild.lastChild); //<»çÁø>Ä«¸Þ¶ó.jpg»çÁø>
trace(myXML.firstChild.nodeType); //1 trace(myXML.firstChild.firstChild.nodeType); //1 trace(myXML.firstChild.firstChild.firstChild.nodeType); //3 trace(myXML.firstChild.firstChild.firstChild.firstChild.nodeType); //undefined
trace(myXML.firstChild.nodeName); //»óÇ° trace(myXML.firstChild.firstChild.nodeName); //ºÐ·ù trace(myXML.firstChild.firstChild.firstChild.nodeName); //null
trace(myXML.firstChild.firstChild.firstChild.firstChild.nodeName); //null
trace(myXML.firstChild.nodeValue); //null trace(myXML.firstChild.firstChild.nodeValue); //null trace(myXML.firstChild.firstChild.firstChild.nodeValue); //7 trace(myXML.firstChild.firstChild.firstChild.firstChild.nodeValue); //undefined
|