XSLT <xsl:namespace-alias> 요소

정의와 사용법

<xsl:namespace-alias> 요소는 스타일시트의 네임스페이스를 출력에서 다른 네임스페이스로 대체하는 데 사용됩니다. 다시 말해, 주어진 네임스페이스와 연결된 프리퍼스를 다른 프리퍼스로 대체합니다.

주의사항:<xsl:namespace-alias>는 최상위 요소(top-level element)로, <xsl:stylesheet> 또는 <xsl:transform>의 자식 요소로 되어야 합니다.

때로는 XSLT 파일이 또 다른 XSLT를 생성합니다. 이는 네임스페이스에 문제를 가져옵니다. 왜냐하면 같은 네임스페이스의 두 개의 프리퍼스를 명시적으로 선언할 수 없으며, 처리기도 두 개의 프리퍼스를 같은 네임스페이스로 인식하여 작업하지 않기 때문입니다. <xsl:namespace-alias> 명령어를 사용하여 대체 프리퍼스에 네임스페이스를 할당하고 스타일시트를 적용한 후 대체 네임스페이스를 XSLT 네임스페이스로 맵핑할 수 있습니다.

XSL까지의 파일 생성은 이 명령어의 주요 용도이지만, 유일한 용도가 아닙니다. 네임스페이스 충돌이 있는 곳에서 이 명령어를 사용할 수 있습니다. (예: xsi: 스키마 데이터 타입 네임스페이스).

문법

<xsl:namespace-alias
stylesheet-prefix="prefix|#default"
result-prefix="prefix|"#default"/>

속성

속성 설명
stylesheet-prefix
  • prefix
  • #default
必需. 변경하려는 네임스페이스를 정의합니다.
result-prefix
  • prefix
  • #default
必需. 출력에 기대하는 네임스페이스를 정의합니다.

예시

예제 1

전역 wxsl 프리퍼스가 출력에서 전역 xsl:로 변환됩니다:

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:wxsl="http://www.codew3c.com/w3style.xsl">
<xsl:namespace-alias stylesheet-prefix="wxsl" result-prefix="xsl"/>
<xsl:template match="/">
  <wxsl:stylesheet>
    <xsl:apply-templates/>
  </wxsl:stylesheet>
</xsl:template>
</xsl:stylesheet>