최신 웹 개발 튜토리얼
 

XSLT - 변환


예 연구 : 어떻게 XSLT를 사용하여 XHTML로 XML을 변환하는 방법?

이 예제의 세부 사항은 다음 장에서 설명한다.


올바른 스타일 시트 선언

문서를 선언 루트 요소는 XSL 스타일 시트가있을 수 있습니다 <xsl:stylesheet> 또는 <xsl:transform> .

Note: <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 : 공식 W3C XSLT 네임 스페이스에 XSL은 = "http://www.w3.org/1999/XSL/Transform"포인트. 이 네임 스페이스를 사용하는 경우에는 속성 버전 = "1.0"을 포함해야합니다.


원시 XML 문서로 시작

우리는 할 transform 다음과 같은 XML 문서 ("cdcatalog.xml") XHTML로 :

<?xml version="1.0" encoding="UTF-8"?>
<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>

Viewing XML Files in IE, Chrome, Firefox, Safari, and Opera: XML 파일을 엽니 다 (아래 링크를 클릭) - XML 문서가 컬러 코딩 된 루트와 하위 요소로 표시됩니다 (except in Safari) . 종종, 플러스가 (+) 또는 마이너스 (-) 확장하거나 요소 구조를 축소하기 위해 클릭 할 수있는 요소의 왼쪽에가. 팁 : XML 파일의 원시 XML 소스를 마우스 오른쪽 단추로 클릭을 확인하고 "소스보기"를 선택하세요!

보기 "cdcatalog.xml"


에 XSL 스타일 시트 만들기

그런 다음 당신은 XSL 스타일 시트 작성 ("cdcatalog.xsl") 변환 템플릿을 :

<?xml version="1.0" encoding="UTF-8"?>

<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>Title</th>
      <th>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"


XML 문서에 XSL 스타일 시트 링크

당신의 XML 문서에 XSL 스타일 시트 참조를 추가합니다 ("cdcatalog.xml") :

<?xml version="1.0" encoding="UTF-8"?>
<?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 호환 브라우저를 사용하는 경우는 잘됩니다 transform XHTML로 XML을.

결과보기

예제의 세부 사항은 위의 다음 장에서 설명한다.