350 likes | 768 Views
XML XSLT. XSLT 소개. XSLT 원소들. 예제 실습. SESSION 01. XSLT 소개. XSL(XML Stylesheet Language) CSS 와 더불어 XML 문서의 스타일을 정의하기 위한 언어 XSL 구성 XSLT(XSL Transformations) XSL-FO(XSL Formatting Objects) XML 의 문법을 준수한 XML 문서 XSLT XML 문서를 다른 형태의 XML 문서나 다른 형태의 문서 ( 예 : HTML, TEXT) 로 변환 가능
E N D
XSLT 소개 XSLT 원소들 예제 실습
XSLT 소개 • XSL(XML Stylesheet Language) • CSS와 더불어 XML 문서의 스타일을 정의하기 위한 언어 • XSL 구성 • XSLT(XSL Transformations) • XSL-FO(XSL Formatting Objects) • XML의 문법을 준수한 XML 문서 • XSLT • XML 문서를 다른 형태의 XML 문서나 다른 형태의 문서 • (예: HTML, TEXT)로 변환 가능 • XSLT + XSL-FO • XML 문서를 PDF와 RTF 등의 문서로 변환 가능
XSLT 소개 XSLT Style Sheet WML VoiceXML XSLT처리기 HTML 문서 XML 문서 XML 문서 DB RTF XSLT처리기 PDF XSLT+FOStyle Sheet
XSLT 소개 • XSLT • XML 문서를 변환하기 위해서 변환 규칙들을 기술 • 변환 규칙 -> 템플릿(Template) • Template • <template> element로 기술 • <template>의 내용은 문서를 변환하기 위한 명령어와 내용들 • Math 속성을 가짐 • 규칙이 적용될 XML 원소를 찾기 위해 기술 • 값으로 Xpath를 사용 • XSLT 문서의 최상위 element는 <stylesheet> • Namespace : http://www.w3.org/1999/XSL/Transform
XSLT 소개 • XSLT • XSLT 파일 형태(문서 구조) <?xml version='1.0' encoding='euc-kr'?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:templatematch="/"> . . . . . </xsl:template> <xsl:template match=“contact"> . . . . . </xsl:template> . . . . . </xsl:stylesheet> Template 매칭 규칙 처리 내용
XSLT 원소들 • Template element • XML의 특징 element를 다른 형태로 변환 • 상위의 노드부터 실행(/가 최초로 실행) Output data Match command XSLT template문
Root 노드 People 노드 Person 노드 name pet Tom Smith Putty XSLT 원소들 • 노드와노드셋 • 노드는tree 구조에서 사용되는 용어 XML문서자체를 의미 엘리먼트 노드 텍스트 노드 노드셋
XSLT 원소들 • 노드와노드셋 브라우저에 msxml내장 (xsl프로세서)
XSLT 원소들 • Apply-templates element • Match에서 지정된 element의 내용을 출력(다른 template 검색)
XSLT 원소들 • 여러 element들의 templates 설정 • Match와 일치하는 노드가 있는 경우에 match 실행 • 없는 경우에는 Text 노드 실행
people person name pet Tom Smith Putty XSLT 원소들 <xsl:apply-templates select=“pet”/>
요소경로 XSLT 원소들 • Value-of element • Element의 내용을 문자로 출력
XSLT 원소들 • Template의 name 속성 • 반복적인 template을 사용하기 위해서 name 으로 선언
Boolean값인 Xpath 표현식 XSLT 원소들 • Xsl:if element • 조건
XSLT 원소들 • Xsl:if choose element • 자바의 switch 문과 동일
XSLT 원소들 • Xsl:for-each element • 반복 처리