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 |
|
必需. 변경하려는 네임스페이스를 정의합니다. |
result-prefix |
|
必需. 출력에 기대하는 네임스페이스를 정의합니다. |
예시
예제 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>