티스토리 뷰
XSLT에서 사용하는 템플릿이라는 것을 살펴볼 시간입니다.
XSLT는 템플릿이라고 하는 규칙을 하나 이상 포함하고 있구요.. 각각의 템플릿은 일치하는 노드를 찾았을 때, 해당 규칙을 적용하는 겁니다.
<xsl:template> 엘리먼트
템플릿을 만들기 위해 사용하는 것이 바로 <xsl:template> 엘리먼트입니다.
요 템플릿에는 match라는 속성이 반드시 사용되는데요.
XML 엘리먼트 중 어느 곳에 템플릿을 적용할지 결정하기 위해 사용하는 겁니다.
XML 엘리먼트 중에 어느 곳이란 것을 찾기 위해서 무엇을 할까요?
음.. 지난번에 XML 내부를 탐색하기 위해 뭘 사용한다고 했던 것 같은데.. ^^
맞습니다. 바로 XPath죠...
XPath 표현식을 match 속성의 값으로 사용하는 겁니다.
만약 match값이 "/"이면 XML 문서 전체를 나타내는 겁니다. /는 루트 엘리먼트이니까요..
자.. 그럼 앞에서 살펴본 XSL 파일을 간략화 해서 다시 살펴보죠~
XSL 스타일시트도 XML 문서이므로 XML 선언이 포함되어야 합니다.
첫 번째 줄을 보면 <?xml version="1.0" encoding="ISO-8859-1"?>로 나와 있는 걸 볼 수 있습니다.
두 번째 줄에 <xsl:stylesheet> 엘리먼트가 보입니다.
이 XML 문서는 XSLT 스타일시트라는 것을 알려주는 겁니다.
속성으로 버전과 네임스페이스를 지정하고 있네요~
드디어 5번째 줄에 <xsl:template>엘리먼트가 나왔습니다.
match를 봐야겠죠.. 옹!! match="/" 이네요..
음.. XML 소스의 루트 엘리먼트부터 이 템플릿을 적용하면 되는 것 같습니다.
ㅋㅋ 앞에서 미리 다 설명한 내용이 다시 나오구 있네요.. -.- (뻘쭘~)
템플릿 내부를 보면, 일반 HTML로 되어 있는 것을 알 수 있습니다.
XML 문서를 가져와서 보여주는 건 아니네요.. ^^
</xsl:template> </xsl:stylesheet>는 닫는 태그.. XML에서는 반드시 써줘야 하는 거 알고 계시죠.. ^^
위 스타일시트를 적용하면 모든 문서는 다음과 같이 나타납니다.
My CD Collection
Title | Artist |
---|---|
. | . |
이 XSL 스타일시트를 적용하면 모든 문서에 저렇게 나타날까요?
네..그렇습니다.~
동적으로 변환하려면 XML에서 무언가 값을 가져오는 부분이 있어야 하는데..
그 부분이 없는 것이죠..
그럼 XML 문서에서 엘리먼트나 속성의 값을 가져오는 것은??
바로 <xsl:value-of>입니다. 요걸 다음 시간에 한번 정리해 보도록 하지요~~
그럼.. 좋은 하루 되세요.
'XML Developer > XSL' 카테고리의 다른 글
XSLT <for-each> (0) | 2011.11.30 |
---|---|
XSLT <value-of> (0) | 2011.11.25 |
XSLT 변환(Transform) (0) | 2011.11.16 |
XSLT 소개 (0) | 2011.11.10 |
XSL에 대하여 (0) | 2011.11.08 |