본문 바로가기
XML/XSLT

[ XML ] XSLT 사용법

by 정윤재 2012. 10. 11.

OLAP 을 하기 위해

 

JPIVOT 을 살펴보다 보니 XSLT 라는 문법으로 쓰여진 HTML 페이지들이

 

많았다. XSLT 란 XML 을 다른 형식의 출력 format 으로 바꾸어주는 표준 문법이다.

 

xml 로 key, value 관계를 지정 하고

 

xsl 문서로 출력 형태를 지정 하면 된다.

 

아래 예제는 xsl 을

 

<template1> 을 정의 하고 그 다음에

 

<template1> 안의 내용인 <template1-1>,<template1-2>

 

를 정의 하는 방식이다.

 

<xsl:apply-templates/> 는 자식 노드 값을 모두 나열하는데

 

하단에서 자식 노드출력을 template 로 지정해 주면 아래서

 

지정해 준 방식 대로 출력 된다.

 

 

example.xml

 

 

<?xml version="1.0" encoding="UTF-8"?>
<?xml:stylesheet type="text/xsl" href="example.xsl"?>
<MEMBERS>


<MEMBER>

 <name>kim</name>
 <email>urstory@nownuri.net</email>
 <homepage>http://sunny.sarang.net</homepage>


</MEMBER>


<MEMBER>

 <name>kang</name>
 <email>carami@hanmail.net</email>
 <homepage>no1</homepage>

</MEMBER>

 

 

</MEMBERS>

 

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

example.xsl

 

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html" indent="no" encoding="UTF-8"/>
<xsl:template match="MEMBERS">
<table border="1">
 
 <tr>
  <td>
   NAME
  </td>
  <td>
   Email
  </td>
  <td>
   Homepage
  </td>
 </tr>
 
 <xsl:apply-templates/>
  

</table>
</xsl:template>

<xsl:template match="MEMBER">
 <tr>
 <xsl:apply-templates/>
 </tr>
</xsl:template>


<xsl:template match="name">
 <td>
  <xsl:apply-templates/>
 </td>
</xsl:template>


<xsl:template match="email">
 <td>
  <xsl:apply-templates/>
 </td>
</xsl:template>

<xsl:template match="homepage">
 <td>
  <xsl:apply-templates/>
 </td>
</xsl:template>

</xsl:stylesheet>


 

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

 

example.xml 을 웹브라우저에서 실행 시킨 결과

 

 

 


댓글