입력 매개 변수를 XSLT 스타일 시트에 전달하는 방법은 무엇입니까? xsltproc을 사용하고 있는데 인수로 --stringparam <param> <value>
을 사용하고 싶습니다. 그러나 XSLT 내부의 매개 변수에 액세스하는 방법을 모르겠습니다. 누군가가 모범을 보일 수 있습니까? 미리 감사드립니다.xslt의 입력 매개 변수
답변
이것은 내가 사용하고있는 것입니다. 기본값 부분은 선택 사항입니다.
<xsl:param name="yourParamname"/>
이어야합니다.
<?xml version="1.0"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<!-- default value -->
<xsl:variable name="defaultDeploymentMode">
<xsl:text>test</xsl:text>
</xsl:variable>
<xsl:param name="deploymentMode" select="$defaultDeploymentMode"></xsl:param>
<xsl:template match="/">
<data><xsl:value-of select="$deploymentMode"/>
</data>
</xsl:template>
어떻게 XSLT 파일에 입력 매개 변수를 제공하기 위해? XSLT에
임의글로벌파라미터 (XSLT 스타일 시트의 상단 요소의 자식 xsl:param
) 은 그 값이 변화의 개시제에 의해, 외부로부터 특정 할 수있다.
이 외부 매개 변수 설정은 구현에 따라 다르며 하나의 XSLT 프로세서마다 다릅니다. 사용중인 특정 XSLT 프로세서의 설명서를 읽으십시오.
여기 작은 예이다 : 여기
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:param name="pDeletePos" select="3"/>
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
<xsl:template match="num">
<xsl:if test="not(position() = $pDeletePos)">
<xsl:copy-of select="."/>
</xsl:if>
</xsl:template>
</xsl:stylesheet>
, 삭제 pDeletePos
num
되어야하는 요소의 위치라는 전역 변수.
default value
(3)도이 매개 변수에 지정되어 있습니다. 변환의 개시자가 pDeletePos
매개 변수를 지정하지 않은 경우이 값이 사용됩니다.
상기 변환이 XML 문서에인가되는 경우 :
<nums>
<num>01</num>
<num>02</num>
<num>03</num>
<num>04</num>
<num>06</num>
<num>07</num>
<num>08</num>
<num>09</num>
<num>10</num>
</nums>
:
<nums>
<num>01</num>
<num>02</num>
<num>03</num>
<num>04</num>
<num>05</num>
<num>06</num>
<num>07</num>
<num>08</num>
<num>09</num>
<num>10</num>
</nums>
및 pDeletePos
의 값이 외부 5
로 지정되는 경우, 변환은 다음과 같은 결과를 생성
외부에서 매개 변수를 설정하는 방법은 XslCompiledTransform XSLT 프로세서를 시작할 때 C#에서 다음을 수행하는 방법입니다.
http://msdn.microsoft.com/en-us/library/system.xml.xsl.xsltargumentlist.addparam.aspx
좋은 대답은
- 1. 각 xslt의 카운터 변수
- 2. 주어진 입력 매개 변수
- 3. 자바에서 입력 매개 변수
- 4. 확인 입력 매개 변수
- 5. 스레드 입력 매개 변수
- 6. 입력 ID로 매개 변수 요청
- 7. PHP 입력 매개 변수 인코딩
- 8. 입력 스트림의 C++ 매개 변수
- 9. Django 메서드의 입력 매개 변수
- 10. 이클립스 입력 매개 변수 변경
- 11. 연결된 XSLT의 변수 참조에 대한 질문
- 12. 메서드에 대한 nullable 입력 매개 변수
- 13. PropertyGrid를 사용하여 메서드 매개 변수 입력
- 14. BIRT 보고서에 매개 변수 입력 UI 포함
- 15. 카메라 입력 : 지원되지 않음 매개 변수
- 16. 입력 매개 변수 유효성 검사 및 응답
- 17. 경험적 모델에 대한 입력 매개 변수 변경
- 18. abap - 선택 화면에서 매개 변수 입력 비활성화
- 19. 전달 매개 변수 및 사용자 입력
- 20. 보고서에 대한 중복 쿼리 매개 변수 입력
- 21. CITemperatureAndTint (CIFilter)의 입력 매개 변수
- 22. 함수에 대한 매개 변수 입력 최적화
- 23. jtable 실행 메소드에 대한 입력 매개 변수
- 24. Perl에서 매개 변수 입력 메커니즘의 차이점은 무엇입니까?
- 25. 숨겨진 입력 필드의 값이 Actionlink 매개 변수
- 26. Microsoft Access - 매개 변수 값 입력 이유?
- 27. 웹 보고서 뷰어에 매개 변수 입력
- 28. 텍스트 변수에서 rpart 입력 매개 변수 읽기
- 29. Uri.TryCreate의 입력 매개 변수, 무엇이 잘못 되었나요?
- 30. XSLT의 정규식
는 또한 선택에 직접 기본값을 지정할 수 있습니다 :'' –