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 을 웹브라우저에서 실행 시킨 결과
댓글