XSLT <xsl:output> 요소

정의와 사용법

<xsl:output> 요소는 출력 문서의 형식을 정의합니다.

주석:<xsl:output>는 최상위 요소(top-level element)로, <xsl:stylesheet> 또는 <xsl:transform>의 자식 요소여야 합니다.

문법

<xsl:output
method="xml|html|text|name"
version="string"
encoding="string"
omit-xml-declaration="yes|no"
standalone="yes|no"
doctype-public="string"
doctype-system="string"
cdata-section-elements="namelist"
indent="yes|no"
media-type="string"/>

속성

속성 설명
method
  • xml
  • html
  • text
  • name
선택 가능합니다. 출력 형식을 정의합니다. 기본적으로 XML입니다. Netscape 6는 "html"과 "xml"만 지원합니다.
version string 선택 가능합니다. 출력 형식의 W3C 버전 번호를 설정합니다. (method="html" 또는 method="xml" 시 사용).
encoding string 선택 사항입니다. 출력에 인코딩 속성의 값을 설정합니다。
omit-xml-declaration
  • yes
  • no

선택 사항

"yes"는 출력에 XML 선언을 제외하도록 정의합니다 (<?xml...?>).

"no"는 출력에 XML 선언을 포함하도록 정의합니다. 기본 값은 "no"입니다。

standalone
    • yes
    • no
선택 사항입니다. XSLT 프로세서가 독립 문서 선언을 출력할지 여부를 정의합니다. 값은 "yes" 또는 "no"여야 합니다. 기본 값은 "no"입니다. Netscape 6는 이 속성을 지원하지 않습니다。
doctype-public string 선택 사항입니다. DTD에서 사용할 공공 식별자를 정의합니다. 즉, 출력 중 DOCTYPE 선언의 PUBLIC 속성 값입니다。
doctype-system string 선택 사항입니다. DTD에서 사용할 시스템 식별자를 정의합니다. 즉, 출력 중 DOCTYPE 선언의 SYSTEM 속성 값입니다。
cdata-section-elements namelist 선택 사항입니다. 공백으로 구분된 요소 목록이며, 이 요소들의 텍스트 내용은 CDATA 부분으로 출력되어야 합니다。
indent
  • yes
  • no
선택 사항입니다. 출력 결과 트리에 공백을 추가할지 여부를 정의합니다. 값은 "yes" 또는 "no"여야 합니다. Netscape 6는 이 속성을 지원하지 않습니다。
media-type string 선택 사항입니다. 출력의 MIME 타입(데이터의 미디어 타입)을 정의합니다. 기본 값은 "text/xml"입니다. Netscape 6는 이 속성을 지원하지 않습니다。

method 속성

결과 트리의 전반적인 출력 메서드를 식별하는 표识자입니다. 전缀가 없으면 이 문서에서 지정된 메서드를 식별해야 하며, "xml"、"html"、"text" 또는 NCName가 아닌 제한 이름 중 하나여야 합니다). 전缀가 있으면 확장하여 출력 메서드를 식별합니다。

method 속성의 기본 값의 선택은 다음과 같습니다. 다음 중任何一个 조건이 참이면 기본 출력 메서드는 "html"입니다:

결과 트리의 뿌리 노드는 요소 자식을 포함합니다。

결과 트리의 뿌리 노드의 첫 번째 요소 자식(즉, 문서 요소)의 확장 이름은 로컬 부분 "html"(어떤 대소문자 조합도 가능)과 공백 이름 공간 URI를 포함합니다。

결과 트리의 뿌리 노드의 첫 번째 요소 자식 이전의 모든 텍스트 노드는 공백 문자만 포함합니다。

그렇지 않으면, 기본 출력 메서드는 "xml"입니다. <xsl:output> 요소가 없거나 <xsl:output> 요소가 method 속성 값을 지정하지 않았다면, 기본 출력 메서드를 사용해야 합니다。

예제

예제 1

이 예제에서, 출력은 XML 문서이며 버전은 1.0입니다. 문자 인코딩 방식은 "ISO-8859-1"으로 설정되었으며, 읽기 쉽게 하기 위해 인덱스가 적용됩니다:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="iso-8859-1" indent="yes"/>
...
...
</xsl:stylesheet>

예제 2

이 예제에서, 출력은 HTML 문서이며, 버전은 4.0입니다. 문자编码은 "ISO-8859-1"로 설정되었으며, 출력은 줄간격을 추가하여 읽기 쉽게 만듭니다:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" version="4.0" encoding="iso-8859-1" indent="yes"/>
...
...
</xsl:stylesheet>