본문 바로가기
Education/Bit 18th

XSLT 사용하기 -2-

by ★용호★ 2009. 10. 20.

이번에는 RSS 파일이 있는 URL을 읽어서 내가 원하는 방식대로 HTML을 만들어 내는 XSLT 파일을 만들어 보도록 하겠습니다.

 

샘플로 사용한 RSS URL은

http://news.naver.com/rss/rss_presscenter.nhn?office_id=032

입니다.

 

일단 이 RSS 정보를 갖고 있는 xml 파일을 정의합니다.

rss.xml

===================

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="rss.xsl"?>
<root>
 <doc href="http://news.naver.com/rss/rss_presscenter.nhn?office_id=032"/>
</root>

너무 간단한가요?

하지만.. 붉은 부분으로 표시되어 있는 부분이 젤 중요합니다.

RSS 를 HTML로 만들어 줄 스타일쉬트입니다.

 

다음은 이 xml 파일을 이용하여 HTML 파일을 만드는.. XSL 파일입니다.

rss.xsl

=================================

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:xdt="http://www.w3.org/2005/xpath-datatypes">
 <xsl:output indent="yes" encoding="euc-kr"/>
 <xsl:template match="/">
  <html>
   <head>
    <title></title>
   </head>
   <body>
    <xsl:apply-templates select="//doc"/>
   </body>
  </html>
 </xsl:template>
 
 <xsl:template match="doc">
  <xsl:apply-templates select="document(@href)//rss"/>
 </xsl:template>
 
 <xsl:template match="rss">
  <xsl:apply-templates select="channel"/>
 </xsl:template>
 
 <xsl:template match="channel">
  <table border="1">
   <tbody>
    <tr>
     <th>TITLE</th>
     <td><a href='{link}'><xsl:value-of select="title"/></a></td>
    </tr>
    <tr>
     <th>Desc.</th>
     <td><xsl:value-of select="description"/></td>
    </tr>
    <xsl:apply-templates select="item"/>
   </tbody>
  </table>
  
 </xsl:template>
 <xsl:template match="item">
  <tr>
   <td>ITEM</td>
   <td><a href="{link}"><xsl:value-of select="title"/></a></td>
  </tr>
 </xsl:template>
</xsl:stylesheet>

이 파일은 좀 복잡하군요..

하지만.. 제일 중요한 부분이 바로 붉은 색으로 표시된 부분입니다.

xml에 표시되어 있는 url의 RSS XML 파일을 읽어 오는 부분이기 때문입니다.

 

자 되었습니다. 이 두개의 파일을 같은 폴더에 놓고..

웹브라우저를 이용하여 rss.xml 파일을 엽니다..

 

그러면.. 짜잔.. 하고.. 아래 화면과 같이 출력됩니다.

이 화면에서.. 두번째.. "구직 단념...."을 누르면.. 당근.. 아래와 같이 출력 됩니다.

 

자.. 이제 여러분이 원하는 대로.. XSL을 편하게 고치시면 됩니다..

 

rss.xml

rss.xsl

 

위 이름으로 파일을 같은 폴더에 저장하시기 바랍니다.

 

 

도움이 되시길 바랍니다.

 

'Education > Bit 18th' 카테고리의 다른 글

미니 프로젝트(웹 출판 서비스) - 실버라이트 파일전송  (0) 2009.10.28
xsl:param 이용  (0) 2009.10.21
XSLT 사용하기 -1-  (0) 2009.10.20
WinForm으로 구현한 SunBee  (0) 2009.10.18
SunBee Console DB Version  (0) 2009.10.18

댓글