2011-03-21 4 views
1

XML 구성 파일이 있는데 해당 파일의 필드 중 하나를 가져 와서 내 XSL에 포함하려고합니다. 여기 XSL 파일에 XML 필드 포함

내가 건너 한 예입니다

<xsl:template match=""> 
    <html> 
    <head> 
     <title>My Page</title> 
     <!-- CSS styles included here --> 
     <xsl:copy-of select="document('style.xml')/style" /> 
    </head> 
    <body> 
     <!-- ... --> 
    </body> 
    </html> 
</xsl:template> 

을하지만 전체 .xml 파일을 포함로 이건 내 문제가 해결되지 않습니다. xsl 내부에서 파싱하고 해당 노드 만 포함해야하므로 xml 파일의 속성 중 하나만 포함하면됩니다. 어떻게해야합니까?

<xsl:copy-of select="document('cmsaENV.xml')/STR_ENV_PROPS/text()"/> 

그리고 내 XML을 포함 :

내가 다음 내 XSL 라인을 포함하는 경우

당신에게 의견에서

업데이트 감사

<STR_ENV_PROPS value="c:/apps/cit/deploy/d_cmsadm/cmsa_applicationEnv.xml"/> 

그런 다음 문자열 "c:/apps/cit/deploy/d_cmsadm/cmsa_applicationEnv.xm" 이 내 xsl에 삽입됩니까? 이 이 맞습니까?

+0

질문을 편집하여 코드를 표시했지만 일부 태그가 엉망입니다. 특히 'xsl : template'이 가장 많이 사용되었습니다. 우연의 일치를 위해 편집 할 수도 있습니다. – justkt

+0

@justkt, 감사합니다. –

+0

style.xml 파일의 내용은 무엇입니까? '스타일'요소 선택의 결과로 무엇을 기대합니까? – BertV

답변

4

은 정말 당신이 원하는 것을 얻을 모르겠지만, 당신이 <style> 요소의 (아닌 요소 자체를)만을 내용을 포함 할 경우와

<xsl:copy-of select="document('style.xml')/style" /> 

교체

<xsl:value-of select="document('style.xml')/style/text()" /> 

text() 가져온 문서의 style 요소의 텍스트 내용을 선택합니다.

는 편집 : 당신은 내가 함께 할 일반 텍스트 문자열로 속성을 변환해야

<xsl:value-of select="string(document('style.xml')/style/@someAttribute)" /> 

주 : 대신 텍스트 내용의 당신은 속성의 값을 원하는 경우, 당신은 같은 뭔가가 필요 string() 기능.

+0

아니면, 태그 자체가없는'