다음을 통해 공유


<xsl:include> 요소

다른 XSLT 파일을 포함합니다.

<xsl:include
  href = "uri-reference"/>

특성

  • href
    필수적 요소입니다. 포함할 XSLT 파일을 식별하는 URI(Uniform Resource Identifier) 참조입니다.

요소 정보

발생 횟수

제한 없음

부모 요소

xsl:stylesheet, xsl:transform

자식 요소

자식 요소 없음

설명

XSLT 파일은 <xsl:include> 요소를 사용하여 다른 XSLT 파일을 포함할 수 있습니다. href 특성 값은 포함할 파일을 식별하는 URI 참조입니다. 상대 URI는 <xsl:include> 요소의 기본 URI에 상대적으로 확인됩니다.

<xsl:include> 요소는 <xsl:stylesheet> 요소의 자식으로만 사용할 수 있습니다.

포함이 트리 수준에서 발생한 것처럼 MSXML(Microsoft XML Core Services)에서 처리됩니다. 이는 XML 트리의 DOM(문서 개체 모델) 뷰와 다릅니다. href 특성 값으로 찾은 리소스는 XML 문서로 구문 분석되며 이 문서에서 <xsl:stylesheet> 요소의 자식은 포함하는 문서의 <xsl:include> 요소를 대체합니다. <xsl:import>와 달리 포함된 템플릿 규칙과 포함하는 스타일시트의 가져오기 우선 순위는 같습니다. 그러므로 포함하는 스타일시트와 포함된 스타일시트에는 모두 각 요소에 대한 템플릿 규칙이 있으며 호출되는 템플릿은 문서 순서에 의해 결정됩니다. 포함하는 스타일시트의 템플릿이 포함된 템플릿을 따르는 경우 포함하는 스타일시트가 호출됩니다. 그렇지 않으면 포함된 템플릿이 호출됩니다.

XSLT 파일이 직접 또는 간접적으로 자신을 포함하는 경우 오류가 발생합니다.

XSLT 파일을 여러 번 포함하면 정의가 중복되기 때문에 오류가 발생할 수 있습니다. 간접적으로 포함하는 경우 이렇게 여러 번 포함하는 것은 명확하지 않습니다. 예를 들어, A, B, C, D가 모두 XSLT 파일이고 다음과 같이 파일 B, C, D에 다른 XSLT 파일이 포함된 경우

  • B는 A를 포함합니다.

  • C는 A를 포함합니다.

  • D는 B와 C를 포함합니다.

XSLT 파일 D는 간접적으로 XSLT 파일 A를 두 번 포함합니다. 이러한 오류를 방지하기 위해 B에서 A를 제외한 모든 것을 별도의 XSLT 파일 B1로 구분하고 B1과 A를 포함하도록 B를 변경합니다. 그런 다음 같은 방법으로 C를 변경한 후 A, B1, C1을 포함하도록 D를 변경합니다.

예제

다음 항목에서는 <xsl:include>의 예제를 제공합니다.