XML namespaceXML namespaceÀ̹ø ÆäÀÌÁö¿¡¼´Â namespace¿¡ ´ëÇØ¼ ¾Ë¾Æ º¸°Ú½À´Ï´Ù. namespace¿¡ ´ëÇØ¼´Â Schema¿¡¼ ÀÚ¼¼È÷ ´Ù·ç°Ô µÉ °ÍÀ̹ǷΠ¿©±â¼´Â namespace¿¡ ´ëÇÑ °³³äÀ» Àâ´Â °Í Á¤µµ·Î ¹üÀ§¸¦ ±¹ÇÑ ÇϰڽÀ´Ï´Ù. µÚ¿¡ ³ª¿Ã ¼³¸íÀ» º¸¸é ¾Ë°ÚÁö¸¸ namespace¶õ XML¿¡ µµÀÔµÈ °³³ä Áß¿¡¼ ¾ÆÁÖ Áß¿äÇÑ ºÎºÐ ÀÔ´Ï´Ù. ±×·±µ¥ »ç½Ç namespace¶ó´Â °ÍÀº Ãß»óÀûÀÎ °³³äÀ̱⠶§¹®¿¡ ¼±¶æ ÀÌÇØÇϱⰡ ÈûµéÁöµµ ¸ð¸£°Ú½À´Ï´Ù. µû¶ó¼ ÀÌ ÆäÀÌÁö¿¡¼´Â XML¿¡ ÀÖ¾î¼ namespaceÀÇ Çʿ伺°ú namespace identifier·Î ¿Ö uri³ª urlÀ» »ç¿ëÇÏ´ÂÁö¿¡ ´ëÇØ ÀÌÇØ ÇÏ´Â °Í¿¡ ÁßÁ¡À» µÎ°í º¸½Ã¸é µÇ°Ú½À´Ï´Ù. µ¿¸íÀÌÀÎ(ÔÒÙ£ì¶ìÑ)¼¼»ó¿¡¼ °°Àº À̸§À» °¡Áø »ç¶÷ÀÌ Á¸ÀçÇÏ´Â °ÍÀº º°·Î ƯÀÌÇÒ °Íµµ ¾ø´Â ÀÏÀÔ´Ï´Ù. °£È¤ ÀڽŰú °°Àº À̸§À» °¡Áø »ç¶÷À» ¸¸³ª°Å³ª, ±×·± »ç¶÷ÀÌ ÀÖ´Ù´Â °ÍÀ» ¾Ë°í '³ªÇÏ°í °°Àº À̸§À» °¡Áø »ç¶÷µµ ÀÖ±¸³ª.'¶ó°í ¾à°£Àº ½Å±âÇÏ°Ô »ý°¢ÇØ º» °æÇèÀÌ ÀÖÀ» °Í ÀÔ´Ï´Ù. ¶Ç´Â ¾î¶² °æ¿ì, ÀÚ±âÇÏ°í °°Àº À̸§À» °¡Áø »ç¶÷ÀÌ ÀÖ´ÂÁö ¾Ë°í ½Í¾î ÀüÈ ¹øÈ£ºÎ¸¦ µÚÀû¿© º» °æÇèÀÌ ÀÖÀ» Áöµµ ¸ð¸£ÁÒ. ±×·±µ¥ ÀÌ·¸°Ô °°Àº À̸§À» °¡Áø »ç¶÷µéÀÌ ¿©·¯ ¸í Á¸ÀçÇÏ°Ô µÈ ÀÌÀ¯´Â ¹»±î¿ä. ±×°Ç ¾Æ¸¶ Àΰ£µéÀº ³Ñ ¸¹¾ÆÁö´Âµ¥ ºñÇØ ¹®ÀÚ¼ö´Â ´õ ´Ã¾î³ªÁö ¾Ê±â ¶§¹®¿¡, ±×Àú ¸¸µé´Ù º¸´Ï '±×³É ¿ì¿¬È÷' »ý±æ ¼ö ¹Û¿¡ ¾ø´Â Çö»óÀÏ °Í ÀÔ´Ï´Ù. ±×·±µ¥ ¿ëÇϰԵµ ´ë°³ ÀÚ½ÅÀÇ °¡±î¿î ºÎ°è ģôµé Áß¿¡¼´Â °°Àº À̸§À» °¡Áö´Â °æ¿ì°¡ °ÅÀÇ ¾ø½À´Ï´Ù. °°Àº À̸§À» °¡Áö´Â °æ¿ì´Â ÁÖ·Î ³²À̰ųª ģôÀÌ¶óµµ °ÅÀÇ ¿Õ·¡°¡ ¾ø´Â, ¾ÆÁÖ ¸Õ Ä£Àû°£¿¡ »ý±â°Ô µË´Ï´Ù. ¿Ö³ÄÇÏ¸é °¡±î¿î ģôÀÇ °æ¿ì´Â ¾î´À Áý¿¡ ¾î¶² À̸§À» °¡Áø »ç¶÷ÀÌ ÀÖ´Ù´Â °ÍÀ» ÀÌ¹Ì ¸Ó¸® ¼Ó¿¡ ³Ö°í Àֱ⠶§¹®¿¡ ÀÌ¹Ì Áö¾îÁø ÀÚ¼ÕµéÀÇ À̸§Àº ¾Æ¿¹ Á¦²¸ ³õÀ¸¹Ç·ÎÇØ¼ °°Àº À̸§ÀÌ »ý±æ ¿°·Á°¡ ¾ø´Â °Í ÀÌÁÒ. ¿©±â¼ ÇÑ ¹ø ÀÌ·± °¡Á¤À» ÇØ º¾½Ã´Ù. ¸¸¾à¿¡ 'ÀÌ¹Ì ÅÂ¾î³ »ç¶÷°ú ¶È °°Àº À̸§À» ÁöÀ¸¸é ±× »ç¶÷À» »çÇü¿¡ óÇÑ´Ù.'¶ó´Â ¹ýÀÌ ÀÖ´Ù°í Ĩ½Ã´Ù. ±×·¸´Ù¸é ¿©·¯ºÐµéÀº ¾î¶»°Ô ÇϽ÷ƴϱî? ¾î¼¸é ÀÌ¹Ì °áÈ¥ÇÑ »ç¶÷Àº '³»°¡ Ȥ½Ã °°Àº À̸§À» ¢´Â ¹Ù¶÷¿¡ ÇüÀåÀÇ À̽½·Î »ç¶óÁö¸é ¾î¼³ª.' ÇÏ´Â °ÆÁ¤¶§¹®¿¡ À̸§ ¢´Â °ÍÀÌ °Ì³ª¼ ÀÚ½ÄÀ» ³ºÁö ¾ÊÀ¸·Á°í Çϰí, ¹ÌÈ¥ÀÎ »ç¶÷Àº ¾Æ¿¹ ÀÌ·± µÎ·Á¿î ÀÏÀ» ÇÇÇÏ·Á°í °áÈ¥ÇÏ´Â °ÍÀ» Æ÷±âÇÏ´Â ÀÏÀÌ »ý±æ Áöµµ ¸ð¸¨´Ï´Ù. ¶Ç ÀÚ½ÄÀ» °¡Áö°í ½Í´Ù¸é ±¹°¡ Á¤º¸¿øµî¿¡ ÀÇ·ÚÇØ¼ ÀÚ½ÅÀÌ ÁöÀ¸·Á°í ÇÏ´Â À̸§ÀÌ ÀÌ¹Ì ÀÖ´ÂÁö ¾Ë¾Æ º¸´Â µîÀÇ »çÀü Á¶Ä¡¸¦ ÇÒ °Í ÀÔ´Ï´Ù. ¿Ö³ÄÇϸé ÀڱⰡ ÁöÀ¸·Á´Â À̸§ÀÌ ÀÌ¹Ì ÀÖ´ÂÁö ¾ø´ÂÁö´Â Á¶»çÇØ º¸Áö ¾Ê´Â ÀÌ»ó ¾Ë ¼ö ¾ø±â ¶§¹® ÀÔ´Ï´Ù. XML¿¡¼ÀÇ °°Àº À̸§±×·¸´Ù¸é ÀÌÁ¦ XML ·Î ÈÁ¦¸¦ ¿Å°Ü º¸¸é, XML°ú °°ÀÌ element¿Í attribute À̸§À» ¹®¼ ÀÛ¼ºÀÚ°¡ Á÷Á¢ Áö¾î¼ »ç¿ëÇÏ´Â °æ¿ì ³²ÀÌ ¸¸µç element³ª attribute ¿Í, ÀڱⰡ ¸¸µç element¿Í attributeÀÇ À̸§ Áß¿¡¼ °°Àº ´Ü¾î¸¦ ÇÇÇØ¼ À̸§À» ÁöÀ» ¼ö ÀÖÀ»±î¿ä? ÀÌ°Ç ÇѸ¶µð·Î ºÒ°¡´É ÇÑ ÀÏÀ̸ç, °°Àº À̸§À» ÇÇÇØ¼ À̸§À» ¸¸µé¾î¾ß¸¸ µÈ´Ù¸é XMLÀº »ç¿ëÀÌ ºÒ°¡´ÉÇÑ ¾ð¾î°¡ µÉ °Í ÀÔ´Ï´Ù. ÇÏÁö¸¸ XML¿¡¼´Â °°Àº À̸§ÀÇ element¿Í attribute¸¦ °°Àº ¹®¼¿¡¼ »ç¿ëÇÏ´Â °æ¿ì°¡ ºó¹øÈ÷ »ý±é´Ï´Ù. ¿ì¸®°¡ ½Ç»ýȰ¿¡¼ »ç¿ëÇÏ´Â ÀϹÝÀûÀÎ ´Ü¾îµéÀº ´©°¡ ¹«½¼ ƯÇ㸦 ³½ °ÍÀÌ ¾Æ´Ï¶ó¼, »ç¿ëÇÒ ¶§ ´©±¸ÀÇ Çã¶ôÀ» ¹Þ¾Æ¾ß µÉ Çʿ䰡 ¾ø±â ¶§¹®¿¡ °°Àº öÀÚ¸¦ °¡Áø element, attributeµéÀº ¾ó¸¶µçÁö »ý±æ ¼ö ÀÖ°í, ½ÇÁ¦·Î ±×·± °æ¿ì°¡ ¸¹ÀÌ »ý±â°Ô µË´Ï´Ù. ±×·± ¿¹´Â Çϵµ ¸¹¾Æ¼ ÀÏÀÏÈ÷ ¿°ÅÇϱâ Èûµé Á¤µµÁö¸¸ ±× Áß Çϳª¸¦ ¿¹·Î µé¾î º¸°Ú½À´Ï´Ù. ¾Æ·¡ÀÇ code´Â ¾î¶² Àǻ簡 Àΰ£ÀÇ ¸öÀ» ºÎÀ§º°·Î ±¸ºÐÇÑ µÚ ¿ä¾àµÈ ³»¿ëÀ» XHTML·Î ºê¶ó¿ìÀú¿¡ Ç¥ÇöÇϱâ À§Çؼ ÀÛ¼ºÇÑ code ÀÔ´Ï´Ù. °°Àº ¹®¼¿¡¼ °°Àº À̸§ÀÇ element ³¢¸® ¸¸³ª´Ù.
<?xml version="1.0" encoding="euc-kr" ?>
<head
eyes="2" nose="1" ears="2" mouth="1" />
<body
arms="2" legs="2" °Å½Ã±â="?" />
</Figure>
</Note>
À§ÀÇ code¸¦ º¸¸é <body>¿Í <head>°¡ °¢°¢ µÎ °³ ¾¿ ÀÔ´Ï´Ù. »ç¶÷À̶ó¸é ÀÌ¿Í °°ÀÌ µ¿ÀÏÇÑ À̸§ÀÇ body¿Í head¶ó ÇØµµ °¢°¢ÀÇ elementµéÀÌ ¾î¶² ¿µ¿ª¿¡ ¼ÓÇÏ¸ç ¹«¾ùÀ» ÀǹÌÇÏ´Â <body>¿Í <head>ÀÎÁö ±¸ºÐÇØ ³¾ ¼ö ÀÖ½À´Ï´Ù. ÇÏÁö¸¸ XML parser´Â ÀÌ °ÍÀ» ±¸ºÐÇØ ³»Áö ¸ø ÇÕ´Ï´Ù. µû¶ó¼ ¹º°¡ ±¸ºÐ °¡´ÉÇÑ Ç¥½ÄÀ» ÇØ ÁÙ Çʿ䰡 ÀÖ½À´Ï´Ù. ±×·¡¼ ¾Æ·¡¿Í °°ÀÌ elementµéÀÇ ¼Ò¼ÓÀ» Á¢µÎ»ç(prefix)¿Í colon(:)À¸·Î ±¸ºÐÇØ ÁÖ°Ú½À´Ï´Ù. Á¢µÎ»ç¸¦ ºÙ¿© elementÀÇ ¼Ò¼ÓÀ» ±¸ºÐÇÑ code
<?xml version="1.0" encoding="euc-kr" ?>
<human:head
eyes="2" nose="1" ears="2" mouth="1" />
<human:body
arms="2" legs="2" °Å½Ã±â="?" />
</human:Figure>
</human:Note>
ÀÌ·¸°Ô prefix(Á¢µÎ»ç)¸¦ ºÙ¿© ÁÖ¹Ç·Î ÇØ¼ °°Àº element name ¶§¹®¿¡ »ý±æ ¼ö ÀÖ´Â ¹®Á¦¸¦ ¿Ïº®ÇÏ°Ô ÇØ°á Çß½À´Ï´Ù. ÇÏÁö¸¸ ¾ÆÁ÷ ³²¾Æ ÀÖ´Â ¹®Á¦´Â code°¡ ³Ê¹« È¥¶õ ½º·¯¿ö Áø´Ù´Â °Í ÀÔ´Ï´Ù. ƯÈ÷ XML¿¡ ´ëÇÑ °³³äÀÌ Á¦´ë·Î ÀâÇô ÀÖÁö ¾ÊÀº Ãʺ¸Àڵ鿡°Ô ÀÌ·± ½ÄÀ¸·Î À̸§À» ±¸ºÐÇ϶ó°í ÇÑ´Ù¸é, ¾þÄ£µ¥ µ¤Ä£ °ÝÀÌ µÇ¾î¼, ÀÌ·± ÀÏ µéÀÌ ¸Å¿ì °ïȤ½º·¯¿î °ÍÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù. µû¶ó¼ º¸´Ù °£·«ÇÏ°Ô ¼Ò¼ÓÀ» ±¸ºÐÇØ ÁÙ Çʿ䰡 ÀÖ½À´Ï´Ù. Default namespace¿Í xmlns attributeDefault namespace´Â XML ¹®¼¿¡ »ç¿ëµÈ element³ª attribute ÀüüÀÇ ¼Ò¼ÓÀ» ÁöÁ¤ÇÒ ¶§ xmlns attribute¸¦ »ç¿ëÇÏ¿© ÁöÁ¤ ÇÕ´Ï´Ù. xmlns attribute¸¦ »ç¿ëÇÏ¿© ´Ü¼øÈ ½ÃŲ code
<?xml version="1.0" encoding="euc-kr" ?>
<head
eyes="2" nose="1" ears="2" mouth="1" />
<body
arms="2" legs="2" °Å½Ã±â="?" />
</Figure>
</Note>
À§¿Í °°ÀÌ xmlns attribute¸¦ ¹®¼ ÀüüÀÇ ÃÖ»óÀ§ elementÀÎ <Note> element¿Í XHTML ¹®¼ÀÇ ÃÖ»óÀ§ element <html> element¿¡ »ç¿ëÇϹǷμ code°¡ °£´ÜÇØ Á³½À´Ï´Ù. ±×·¸Áö¸¸ °í·ÁÇØ¾ß µÉ ¹®Á¦°¡ ¾ÆÁ÷ ³²¾Æ ÀÖ½À´Ï´Ù. ±×°Ô ¹º°¡ Çϸé À§¿¡ Ç¥±âÇÑ 'xmlns'ÀÇ °ªÀ¸·Î µé¾î°£ 'http://www.human.pet/ humanbody"¿Í °°Àº namespace identifier (namespace ½Äº° Ç¥½Ã)¶ó´Â °ÍÀε¥, ÇϳªÀÇ ¹®¼¾È¿¡¼ »ç¿ëÇÏ´Â namespace identifier´Â ÇÑ »ç¶÷ÀÌ ÀÛ¼ºÇϹǷΠ°°Àº °É ¾µ¸®°¡ ¾øÁö¸¸, ´Ù¸¥ ¹®¼¿Í ¼¯ÀÌ°Ô µÉ °æ¿ì ±×¾ß¸»·Î '±×³É ¿ì¿¬È÷' °°Àº À̸§ÀÇ namespace identifier ³¢¸® ¸¸³ªÁö ¸»¶ó´Â º¸ÀåÀº ¾ø½À´Ï´Ù. ±×·¯¹Ç·Î ÀÌ·± °æ¿ì¿¡ ´ëÇÑ ´ëºñ°¡ ÀÖ¾î¾ß ÇÒ °Í ÀÔ´Ï´Ù. Àü ¼¼°è¿¡¼ À¯ÀϹ«ÀÌÇÏ¸é¼ µ·µµ ¾Èµé°í °£´ÜÇÑ °Í ã±âÀü ¼¼°è¿¡¼ ´Ü Çϳª ¹Û¿¡ ¾ø´Â °ÍÀº ¾î¶²°Ô ÀÖÀ»Áö ÇÔ »ý°¢ÇØ º¸½ÃÁÒ. Áֹεî·Ï¹øÈ£? ÀÌ°Ç ¿ì¸® ³ª¶ó¿¡¼ ¸¸ À¯ÀϹ«ÀÌÇÑ °Å´Ï±î ÂÀ °ï¶õÇϰí, DNA Áöµµ? ÀÌ°Ç Á¶»çÇÏ¸é ´Ù ³ª¿À±ä ÇÏÁö¸¸ µ·µµ ¸¹À̵é°í ³ªÅ¸³»±â°¡ ³Ñ º¹ÀâÇØ¼ ¾ÈµÇ°Ú½À´Ï´Ù. ±×·¸´Ù¸é À¯ÀϹ«ÀÌÀÇ ´ë»ó ¹üÀ§¸¦ Àü ¼¼°è·Î Çϰí, µ·µµ ¾Èµé¸ç º¹ÀâÇÏÁöµµ ¾ÊÀº °Í Áß¿¡¼ namespace identifier¸¦ ã¾ÆºÁ¾ß µÇ°Ú´Âµ¥, ±× Áß¿¡ Àû´çÇÑ°Ô ÀÖ±ä ÀÖ½À´Ï´Ù. ¹¹³ÄÇÏ¸é ¹Ù·Î uri³ª À§ÀÇ code¿Í °°ÀÌ urlÀ» »ç¿ëÇÏ´Â °Í ÀÔ´Ï´Ù. Àß ¾Ë°í ÀÖ´Â °Í ó·³ urlÀº À¯ÀϹ«ÀÌÇÕ´Ï´Ù. Áï, ÀÌ ¼¼»ó¿¡ Çϳª ¹Û¿¡ ¾ø´Â °Í ÀÔ´Ï´Ù. µû¶ó¼ ÀÚ±âÀÇ urlÀ» namespace identifier·Î »ç¿ëÇÏ¹Ç·Î ÇØ¼ °°Àº À̸§ÀÇ element³ª attribute¸¦ »ç¿ëÇÑ ¹®¼³¢¸® ¸¸³´Ù°í ÇØµµ À̸§ÀÌ °°¾Æ¼ ¹®Á¦°¡ »ý±æ ¼ÒÁö´Â ¾ø°Ô µÇ´Â °Í ÀÔ´Ï´Ù. ÇÏÁö¸¸... »ý°¢À» ´õ ±íÀÌ ÇØ º» »ç¶÷À̶ó¸é °¡Áú ¼ö ÀÖ´Â Àǹ®ÀÌ ¾ÆÁ÷ ³²¾Æ Àִµ¥, ¹Ù·Î 'ÀÚ±âÀÇ url' À̶ó´Â Ç¥Çö ¶§¹®¿¡ 'XML ¹®¼¸¦ ¸¸µé·Á¸é ÀڽмÒÀ¯ÀÇ domainÀ» Çϳª »ç¾ß µÇ´Â°¡ º¸´Ù' ÇÏ´Â °ÆÁ¤À» ÇÏ°Ô µÉ Áöµµ ¸ð¸£°Ú½À´Ï´Ù. ±×·± °ÆÁ¤À» ÇÏ´Â ºÐµéÀ» ¾È½É½Ã۱â À§Çؼ ±æ°í Áö·çÇÑ ¼³¸íÀ» ÇÒ ¼öµµ ÀÖ°ÚÁö¸¸, ÀÌ ¹ø¿¡´Â, ¾ÕÀ¸·Î ¿©·¯ºÐÀÇ ÀÌÇØ¸¦ µ½±âÀ§ÇØ °£È¤ µîÀåÇÏ°Ô µÉ ¿ì¸®ÀÇ µµ¿ì¹Ì µéÀÎ WBIÀÇ 'Vulder' ¿ä¿ø°ú 'Spully' ¿ä¿ø »çÀÌ¿¡ ¿À°¡´Â ´ëÈ·Î½á ¼³¸íÀ» ´ë½ÅÇϰڽÀ´Ï´Ù. ±×·³ XML Å׸¶ À½¾ÇÀ» µéÀ¸¸ç ±Ã±ÝÁõÀ» Ç®¾î º¸½Ã±æ...
Á¤¸®À̹ø ÆäÀÌÁö¿¡¼´Â namespaceÀÇ °³³ä¿¡ ´ëÇØ ¾Ë¾Æ º¸¾Ò½À´Ï´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº XML Schema menu¿¡¼ ´Ù·çµµ·Ï Çϰڰí, À̹ø ÆäÀÌÁö¿¡¼´Â namespace°¡ ¿Ö ÇÊ¿äÇϰí, uri³ª urlÀ» namespace identifier·Î »ç¿ëÇÏ´Â ÀÌÀ¯¿¡ ´ëÇØ Àß ÀÌÇØ ÇÒ ¼ö ÀÖÀ¸¸é µÇ°Ú½À´Ï´Ù. ´Ù½Ã ÇÑ ¹ø ¸»ÇÏÁö¸¸ namespace´Â Ãß»óÀûÀÎ °³³äÀÌÁö, namespace identifier·Î ÁöÁ¤µÈ uri³ª url·Î ÁöÁ¤ÇÑ ¹°¸®Àû À§Ä¡¿¡ ¾î¶² ¹®¼³ª applicationÀÌ ½ÇÁ¦·Î Á¸ÀçÇϹǷÎÇØ¼ ±×°Ô ¾î¶² ±â´É¸¦ ÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó´Â »ç½Ç ÀÔ´Ï´Ù. ±×·¯¸é ¿©±â¼ XML Document¸¦ ³¡³»°í DTD menu¸¦ ½ÃÀÛ Çϱâ·Î ÇϰڽÀ´Ï´Ù. ÀÌ ¹®¼ÀÇ ÀúÀÛ±ÇÀº www.cadvance.org ¿¡ ÀÖ½À´Ï´Ù.
|