2009-11-24 9 views
1
내가 XSLT를 사용하여이 scipt 쓰기 시작 했어

:사용하여 XSLT

<?xml version="1.0" encoding="ISO-8859-1"?> 
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
<xsl:output method="text" encoding="utf-8" /> 
<xsl:template match="span[@class='thumb']" > 
    Link: <xsl:value-of select="$base" /><xsl:value-of select="a/@href" /> 
</xsl:template> 

<xsl:template match="/"> 
    Base href: <xsl:value-of select="$base" /> 
    <xsl:apply-templates/> 
</xsl:template> 

</xsl:stylesheet> 

을 그리고이 명령을 사용하여 :

xsltproc --html --param base "'http://example.com'" lista.xslt test.html 

내가 링크의 목록을 얻을 필요를,하지만 난 얻을 전체 페이지 출력. 뭐가 문제 야? 어떻게 작동시킬 수 있습니까?

답변

3

여기에는 보이지 않는 기본 템플릿이 있습니다. 이것을 해결할 수있는 가장 쉬운 방법은 아래와 같이 일치하는 범위 요소를 명시 적으로 제한하는 것입니다. 그렇지 않으면 기본 템플리트를 대체 할 수 있습니다.

1

허용하면 기본적으로 모든 것과 일치하는 기본 템플릿이 있습니다. 네 번째 마지막 행은 해당 템플릿을 호출합니다.

그게 문제의 일부입니다. 나머지는 아마도 최상위 레벨 템플릿에서 직접 찾고있는 것들을 일치 시켜서 처리 할 수 ​​있습니다.