XSLT 변환

실례 연구: XSLT를 사용하여 XML을 XHTML로 변환하는 방법

다음 장에서 이 예제의 세부 사항을 설명하겠습니다.

정확한 스타일 시트 선언

XSL 스타일 시트의 루트 요소는<xsl:stylesheet>또는<xsl:transform>으로 선언되어야 합니다.

주의사항: <xsl:stylesheet>과<xsl:transform>은 완전히 동의어이며, 모두 사용할 수 있습니다!

W3C의 XSLT 표준에 따르면, XSL 스타일 시트를 정확하게 선언하는 방법은 다음과 같습니다:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

또는:

<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

XSLT의 요소, 속성 및 특성에 접근하려면, 문서 상단에 XSLT 이름 공간을 선언해야 합니다.

xmlns:xsl="http://www.w3.org/1999/XSL/Transform"은 공식 W3C XSLT 이름 공간을 가리킵니다. 이 이름 공간을 사용하면, version="1.0" 속성을 포함해야 합니다.

원본 XML 문서에서 시작합니다

아래의 이 XML 문서("cdcatalog.xml")를 XHTML로 변환하려고 합니다:

<?xml version="1.0" encoding="ISO-8859-1"?>
<catalog>
  <cd>
    <title>Empire Burlesque</title>
    <artist>Bob Dylan</artist>
    <country>USA</country>
    <company>Columbia</company>
    <price>10.90</price>
    <year>1985</year>
  </cd>
.
.
.
</catalog>

Internet Explorer와 Firefox에서 XML 파일을 확인하세요:

XML 파일을 엽니다. (일반적으로 링크를 클릭하면 됩니다.) - XML 문서는 색으로 구분된 코드 방식으로 루트 요소 및 자식 요소를 표시합니다. 요소 왼쪽의 플러스 또는 마이너스를 클릭하여 요소 구조를 펼쳐보거나 축소할 수 있습니다. 원본 XML 소스 파일(플러스와 마이너스가 없는)을 확인하려면, 브라우저 메뉴에서 '페이지 소스 코드 보기'를 선택하세요.

Netscape 6에서 XML 파일을 확인하세요:

XML 파일을 엽니다. 그런 다음 XML 파일에서 마우스 오른쪽 클릭하여 "페이지 원본 코드 보기"를 선택하세요. XML 문서는 색상으로 표시된 코드로 표시됩니다。

Opera 7에서 XML 파일을 확인하세요:

XML 파일을 엽니다. 그런 다음 XML 파일에서 마우스 오른쪽 클릭하여 "프레임"/"원본 코드 보기"를 선택하세요. XML 문서는 텍스트로 표시됩니다.

"cdcatalog.xml"를 확인하세요.

XSL 스타일 시트 생성

그런 다음 변환 템플릿을 포함한 XSL 스타일 시트("cdcatalog.xsl")를 생성하세요:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
  <html>
  <body>
    <h2>My CD Collection</h2>
    <table border="1">
    <tr bgcolor="#9acd32">
      <th align="left">Title</th>
      <th align="left">Artist</th>
    </tr>
    <xsl:for-each select="catalog/cd">
    <tr>
      <td><xsl:value-of select="title"/></td>
      <td><xsl:value-of select="artist"/></td>
    </tr>
    </xsl:for-each>
    </table>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>

"cdcatalog.xsl"를 확인하세요

XSL 스타일 시트를 XML 문서에 연결하세요

XML 문서("cdcatalog.xml")에 XSL 스타일 시트 참조를 추가하세요:

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="cdcatalog.xsl"?>
<catalog>
  <cd>
    <title>Empire Burlesque</title>
    <artist>Bob Dylan</artist>
    <country>USA</country>
    <company>Columbia</company>
    <price>10.90</price>
    <year>1985</year>
  </cd>
.
.
.
</catalog>

만약 사용하는 브라우저가 XSLT를 호환한다면, 그대로 XML을 변환할 것입니다. 변환하다 XHTML.

결과 확인.

다음 섹션에서는 위의 예제의 세부 사항을 설명할 것입니다.