Wie Sie das einzelne XML-Element mit schließenden Tags in xml mit Hilfe von XSL Stylesheet hinzufügen.Wie man das einzelne Element in xml mit Hilfe von xsl hinzufügt?
hier ist das unten meine xml.
<Checkpax xmlns="http://xml.api.com/test">
<customerLevel>
<customerDetails>
<paxDetails>
<surname>MUKHERJEE</surname>
<type>A</type>
<gender>M</gender>
</paxDetails>
<otherPaxDetails>
<givenName>JOY</givenName>
<title>MR</title>
<age>11</age>
</otherPaxDetails>
<otherPaxDetails>
<title>MR</title>
</otherPaxDetails>
</customerDetails>
<staffDetails>
<staffInfo/>
<staffCategoryInfo>
<attributeDetails>
<attributeType>NA</attributeType>
</attributeDetails>
</staffCategoryInfo>
</staffDetails>
<productLevel>
<legLevel>
<legLevelIndicator>
<statusDetails>
<indicator>abc</indicator>
<action>1</action>
</statusDetails>
</legLevelIndicator>
</legLevel>
</productLevel>
<CustomerLevel>
<legLevel>
<legLevelIndicator>
<statusDetails>
<indicator>cde</indicator>
<action>1</action>
</statusDetails>
</legLevelIndicator>
</legLevel>
</CustomerLevel>
</customerLevel>
</Checkpax>
Meine XSL stylehseet:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:ns0="http://xml.api.com/test"
exclude-result-prefixes="ns0">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:strip-space elements="*"/>
<!-- identity transform -->
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="ns0:productLevel/ns0:legLevel/ns0:legLevelIndicator/ns0:statusDetails">
<statusInformation xmlns="http://xml.api.com/test">
<xsl:apply-templates/>
</statusInformation>
</xsl:template>
<xsl:template match="ns0:customerLevel/ns0:productLevel/legLevel">
<xsl:copy-of select="."/>
<dumTXFSep/>
<dummySegmentJan />
<dumTktFeb />
</xsl:template>
<xsl:template match="ns0:customerLevel/ns0:productLevel">
<xsl:copy-of select="."/>
<dummyRootOne />
</xsl:template>
</xsl:stylesheet>
hier habe ich versucht, die dumTXFSep, dummySegmentJan und dumTktFeb Elemente vor der Produktebene Tag end.dummyRootOne Element hinzugefügt werden, bevor die CustomerLevel Tag end.dummyRoottwo hinzugefügt werden sollte am Ende der Produktebene hinzugefügt werden.LeglevelInfo sollte innerhalb des Tags productLevel/legLevel hinzugefügt werden.
das unten ist meine erwartete xml.
<Checkpax xmlns="http://xml.api.com/test">
<customerLevel>
<customerDetails>
<paxDetails>
<surname>MUKHERJEE</surname>
<type>A</type>
<gender>M</gender>
</paxDetails>
<otherPaxDetails>
<givenName>JOY</givenName>
<title>MR</title>
<age>11</age>
</otherPaxDetails>
<otherPaxDetails>
<title>MR</title>
</otherPaxDetails>
</customerDetails>
<staffDetails>
<staffInfo/>
<staffCategoryInfo>
<attributeDetails>
<attributeType>NA</attributeType>
</attributeDetails>
</staffCategoryInfo>
</staffDetails>
<productLevel>
<legLevel>
<LeglevelInfo/>
<legLevelIndicator>
<statusDetails>
<indicator>abc</indicator>
<action>1</action>
</statusDetails>
</legLevelIndicator>
</legLevel>
</productLevel>
<dummyRoottwo/>
<CustomerLevel>
<legLevel>
<legLevelIndicator>
<statusDetails>
<indicator>cde</indicator>
<action>1</action>
</statusDetails>
</legLevelIndicator>
</legLevel>
<dumTXFSep/>
<dummySegmentJan />
<dumTktFeb />
</CustomerLevel>
<dummyRootOne />
</customerLevel>
</Checkpax>
Sie bitte die xsl vorschlagen und mir freundlich ist hilft es Tools, die xsl durch Abbildung der zwei XML-Elemente oder eine gute Ressource für das Lernen zu erzeugen.
Was funktioniert nicht? Zeigen Sie die tatsächliche Ausgabe und erklären Sie, was damit nicht stimmt. –
* Wie man das einzelne xml Element mit schließenden Tags in xml * hinzufügt * was bedeutet das? Mathematisch hinzufügen oder neuen Knoten einfügen? Welches einzelne Element? Und alle Elemente in wohlgeformtem XML haben abschließende Tags. – Parfait