2017-03-11 2 views
2

Ich transformiere XML-Dokument über XSL und ich habe mehr Elemente beginnend mit dem gleichen Buchstaben, aber mit unterschiedlichen Zahlen enden. In diesem Beispiel ist es DTM_ *:XSLT beliebiges Zeichen


`<DTM_01> 
    <idDTM_01>DTM</idDTM_01> 
    <DTM_01_C507> 
. 
. 
. 
<DTM_14> 
    <idDTM_14>DTM</idDTM_14> 
    <DTM_14_C507>` 

Ich muss mit allen von ihnen auf einmal arbeiten, nicht einzelne Vorlage für jeden von ihnen so zu machen:


`<xsl:template match="DTM_01"> 
<E1EDK03> 
    <xsl:apply-templates/> 
</E1EDK03> 

`


Ich möchte nur fragen, ob es eine Möglichkeit gibt, diese Vorlage des Elternelements zu setzen, um mit allen Kindern dieser "DTM" Eltern arbeiten zu können? Danke.

+0

Sie die XPath-Funktion können Sie 'starts-with ('DTM _'.)' In Ihrem Prädikat. –

Antwort

2

Ich bin nicht sicher, was Sie meinen „diese Vorlage des übergeordneten Elements zu setzen, in der Lage sein, mit allen Kindern dieser Arbeit‚DTM‘Eltern?“ Eine Vorlage „arbeitet“ mit dem Knoten, Streichhölzer. Wenn Sie Ihre Vorlage wollen Elemente entsprechen dem Namen DTM_01, DTM_02, DTM_14 und so weiter, es machen:

<xsl:template match="*[starts-with(name(), 'DTM_')]"> 
    <!-- do something --> 
</xsl:template> 
Verwandte Themen