다음 스타일 시트 :
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()" />
</xsl:copy>
</xsl:template>
<xsl:template match="City[not(@value='Hebron' or @value='Cincinnati')]" />
</xsl:stylesheet>
을이 입력에 516,
:
가
<Country value="USA">
<State value="KY">
<City value="Hebron" />
</State>
<State value="OH">
<City value="Cincinnati" />
</State>
</Country>
이 스타일은 변경되지 않은 출력에 불필요한 노드를 제외한 모든 복사 identity transform를 사용
<Country value="USA">
<State value="KY">
<City value="Hebron" />
<City value="Lexington" />
<City value="Owensboro" />
</State>
<State value="OH">
<City value="Cincinnati" />
<City value="Columbus" />
<City value="Cleveland" />
</State>
</Country>
는 다음의 결과를 생성.
또 다른 예 또한 원하는 도시를하지 않는 State
요소를 제거 할 수 있습니다
. 이 스타일이 입력에 적용
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="City[not(@value='Hebron' or @value='Cincinnati')]"/>
<xsl:template
match="State[not(City[@value='Hebron' or @value='Cincinnati'])]"/>
</xsl:stylesheet>
:
<Country value="USA">
<State value="KY">
<City value="Hebron" />
<City value="Lexington" />
<City value="Owensboro" />
</State>
<State value="OH">
<City value="Cincinnati" />
<City value="Columbus" />
<City value="Cleveland" />
</State>
<State value="MO">
<City value="St. Louis" />
</State>
</Country>
가 생산 :
<Country value="USA">
<State value="KY">
<City value="Hebron" />
</State>
<State value="OH">
<City value="Cincinnati" />
</State>
</Country>
보존하려는 태그는 무엇입니까? 각 주에서 처음? –
''태그를 가지고 있기 때문에 ''(지방, 현 등)이 적합하지 않은 다른 국가가 있음을 의미합니다. 문제를 완전히 지정해야합니다. –
하나 이상의 국가가있을 수 있지만이 예제에서는 (실제 태그가 아님) 다른 국가의 주에서는 주정부가 충분합니다. –